You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

awscdk-resources-mongodbatlas

Package Overview
Dependencies
Maintainers
1
Versions
28
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

awscdk-resources-mongodbatlas - npm Package Compare versions

Comparing version

to
3.8.0

10

lib/index.d.ts

@@ -5,3 +5,3 @@ export { CfnAccessListApiKey, CfnAccessListApiKeyProps, } from "./l1-resources/access-list-api-key";

export { CfnAuditing, CfnAuditingProps } from "./l1-resources/auditing";
export { CfnCloudBackUpRestoreJobs, CfnCloudBackUpRestoreJobsProps, CfnCloudBackUpRestoreJobsPropsDeliveryType, CfnCloudBackUpRestoreJobsPropsInstanceType, SynchronousCreationOptions, } from "./l1-resources/cloud-backup-restore-jobs";
export { CfnCloudBackUpRestoreJobs, CfnCloudBackUpRestoreJobsProps, CfnCloudBackUpRestoreJobsPropsLinks, CfnCloudBackUpRestoreJobsPropsDeliveryType, CfnCloudBackUpRestoreJobsPropsInstanceType, SynchronousCreationOptions, } from "./l1-resources/cloud-backup-restore-jobs";
export { ApiAtlasDiskBackupCopySettingView, ApiDeleteCopiedBackupsView, ApiPolicyItemView, ApiPolicyView, CfnCloudBackupSchedule, CfnCloudBackupScheduleProps, Export, Link, } from "./l1-resources/cloud-backup-schedule";

@@ -17,3 +17,3 @@ export { ApiAtlasDiskBackupShardedClusterSnapshotMemberView, ApiAtlasDiskBackupShardedClusterSnapshotMemberViewCloudProvider, ApiAtlasDiskBackupShardedClusterSnapshotView, ApiAtlasDiskBackupShardedClusterSnapshotViewFrequencyType, ApiAtlasDiskBackupShardedClusterSnapshotViewSnapshotType, ApiAtlasDiskBackupShardedClusterSnapshotViewStatus, ApiAtlasDiskBackupShardedClusterSnapshotViewType, CfnCloudBackupSnapshot, CfnCloudBackupSnapshotProps, CfnCloudBackupSnapshotPropsFrequencyType, CfnCloudBackupSnapshotPropsSnapshotType, CfnCloudBackupSnapshotPropsInstanceType, } from "./l1-resources/cloud-backup-snapshot";

export { CfnDataLakes, CfnDataLakesProps, DataLakeAwsCloudProviderConfigView, DataLakeCloudProviderConfigView, DataLakeDataProcessRegionView, DataLakeDataProcessRegionViewCloudProvider, DataLakeDataProcessRegionViewRegion, DataLakeDatabaseCollectionView, DataLakeDatabaseDataSourceView, DataLakeDatabaseDataSourceViewDefaultFormat, DataLakeDatabaseView, DataLakeStorageView, DataLakeViewView, StoreDetail, } from "./l1-resources/datalakes";
export { AwsKmsConfiguration, CfnEncryptionAtRest, CfnEncryptionAtRestProps, } from "./l1-resources/encryption-at-rest";
export { AwsKmsConfig, CfnEncryptionAtRest, CfnEncryptionAtRestProps, } from "./l1-resources/encryption-at-rest";
export { CfnFederatedDatabaseInstance, CfnFederatedDatabaseInstanceProps, CloudProviderConfig, DataProcessRegion, Storage, Database, Store, Collection, DataSource, ReadPreference, TagSet, View, } from "./l1-resources/federated-database-instance";

@@ -28,3 +28,3 @@ export { CfnFederatedQueryLimit, CfnFederatedQueryLimitProps, CfnFederatedQueryLimitPropsLimitName, } from "./l1-resources/federated-query-limit";

export { CfnNetworkPeering, CfnNetworkPeeringProps, } from "./l1-resources/network-peering";
export { CfnOnlineArchive, CfnOnlineArchiveProps, CfnOnlineArchivePropsCollectionType, CriteriaView, CriteriaViewDateFormat, CriteriaViewType, PartitionFieldView, PartitionFieldViewFieldType, ScheduleView, ScheduleViewType, } from "./l1-resources/online-archive";
export { CfnOnlineArchive, CfnOnlineArchiveProps, CfnOnlineArchivePropsCollectionType, CriteriaView, CriteriaViewDateFormat, CriteriaViewType, PartitionFieldView, ScheduleView, ScheduleViewType, } from "./l1-resources/online-archive";
export { CfnOrgInvitation, CfnOrgInvitationProps, CfnOrgInvitationPropsRoles, } from "./l1-resources/org-invitation";

@@ -42,5 +42,5 @@ export { CfnOrganization, CfnOrganizationProps, ApiKey, } from "./l1-resources/organization";

export { CfnSearchDeployment, CfnSearchDeploymentProps, ApiSearchDeploymentSpec, } from "./l1-resources/search-deployment";
export { ApiAtlasFtsAnalyzersViewManual, ApiAtlasFtsMappingsViewManual, ApiAtlasFtsSynonymMappingDefinitionView, CfnSearchIndex, CfnSearchIndexProps, SynonymSource, } from "./l1-resources/search-index";
export { ApiAtlasFtsAnalyzersTokenizer, ApiAtlasFtsAnalyzersViewManual, ApiAtlasFtsMappingsViewManual, ApiAtlasFtsSynonymMappingDefinitionView, CfnSearchIndex, CfnSearchIndexProps, SynonymSource, } from "./l1-resources/search-index";
export { CfnServerlessInstance, CfnServerlessInstanceProps, ServerlessInstanceConnectionStrings, ServerlessInstancePrivateEndpoint, ServerlessInstancePrivateEndpointEndpoint, ServerlessInstancePrivateEndpointType, ServerlessInstanceProviderSettings, ServerlessInstanceProviderSettingsProviderName, } from "./l1-resources/serverless-instance";
export { CfnServerlessPrivateEndpointProps, CfnServerlessPrivateEndpoint, ServerlessPrivateEndpoint, AwsPrivateEndpointConfig, } from "./l1-resources/serverless-private-endpoint";
export { CfnServerlessPrivateEndpointProps, CfnServerlessPrivateEndpoint, AwsPrivateEndpointConfig, } from "./l1-resources/serverless-private-endpoint";
export { CfnStreamConnection, CfnStreamConnectionProps, CfnStreamConnectionPropsType, DbRoleToExecute, DbRoleToExecuteType, StreamsKafkaAuthentication, StreamsKafkaSecurity, } from "./l1-resources/stream-connection";

@@ -47,0 +47,0 @@ export { CfnStreamInstance, StreamsDataProcessRegionCloudProvider, CfnStreamInstanceProps, StreamsDataProcessRegion, StreamConfig, StreamsConnection, StreamsConnectionType, } from "./l1-resources/stream-instance";

@@ -115,3 +115,2 @@ "use strict";

Object.defineProperty(exports, "CriteriaViewType", { enumerable: true, get: function () { return online_archive_1.CriteriaViewType; } });
Object.defineProperty(exports, "PartitionFieldViewFieldType", { enumerable: true, get: function () { return online_archive_1.PartitionFieldViewFieldType; } });
Object.defineProperty(exports, "ScheduleViewType", { enumerable: true, get: function () { return online_archive_1.ScheduleViewType; } });

@@ -187,2 +186,2 @@ var org_invitation_1 = require("./l1-resources/org-invitation");

__exportStar(require("./l3-resources/atlas-bootstrap"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZCQUE2QjtBQUM3QixFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLG1FQUFtRTtBQUNuRSwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLGtEQUFrRDtBQUNsRCxFQUFFO0FBQ0Ysc0VBQXNFO0FBQ3RFLG9FQUFvRTtBQUNwRSwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLGlDQUFpQzs7Ozs7Ozs7Ozs7O0FBRWpDLGtCQUFrQjtBQUVsQiwwRUFHNEM7QUFGMUMsMEhBQUEsbUJBQW1CLE9BQUE7QUFJckIsMEVBaUI0QztBQWhCMUMsNEhBQUEscUJBQXFCLE9BQUE7QUFHckIsbUlBQUEsNEJBQTRCLE9BQUE7QUFFNUIsdUhBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsc0hBQUEsZUFBZSxPQUFBO0FBRWYsOEhBQUEsdUJBQXVCLE9BQUE7QUFDdkIsa0lBQUEsMkJBQTJCLE9BQUE7QUFFM0Isb0lBQUEsNkJBQTZCLE9BQUE7QUFDN0IsK0hBQUEsd0JBQXdCLE9BQUE7QUFDeEIscUlBQUEsOEJBQThCLE9BQUE7QUFDOUIsNEhBQUEscUJBQXFCLE9BQUE7QUFDckIsK0hBQUEsd0JBQXdCLE9BQUE7QUFHMUIsa0RBSWdDO0FBSDlCLG9HQUFBLFNBQVMsT0FBQTtBQUtYLG9EQUF3RTtBQUEvRCx1R0FBQSxXQUFXLE9BQUE7QUFFcEIsc0ZBTWtEO0FBTGhELHNJQUFBLHlCQUF5QixPQUFBO0FBRXpCLHVKQUFBLDBDQUEwQyxPQUFBO0FBQzFDLHVKQUFBLDBDQUEwQyxPQUFBO0FBSTVDLDhFQVM4QztBQUo1QywrSEFBQSxzQkFBc0IsT0FBQTtBQU14Qiw4RUFhOEM7QUFYNUMsd0tBQUEsK0RBQStELE9BQUE7QUFFL0Qsa0tBQUEseURBQXlELE9BQUE7QUFDekQsaUtBQUEsd0RBQXdELE9BQUE7QUFDeEQsMkpBQUEsa0RBQWtELE9BQUE7QUFD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QUFBLHFCQUFxQixPQUFBO0FBS3JCLDRJQUFBLHFDQUFxQyxPQUFBO0FBRXJDLHFKQUFBLDhDQUE4QyxPQUFBO0FBR2hELDBGQUtvRDtBQUhsRCwySUFBQSw0QkFBNEIsT0FBQTtBQUs5QixzRUFRMEM7QUFQeEMsd0hBQUEsbUJBQW1CLE9BQUE7QUFFbkIsaUlBQUEsNEJBQTRCLE9BQUE7QUFFNUIsd0hBQUEsbUJBQW1CLE9BQUE7QUFLckIsa0VBUXdDO0FBUHRDLG9IQUFBLGlCQUFpQixPQUFBO0FBQ2pCLHdJQUFBLHFDQUFxQyxPQUFBO0FBS3JDLHdIQUFBLHFCQUFxQixPQUFBO0FBR3ZCLDhDQU84QjtBQU41QixpR0FBQSxRQUFRLE9BQUE7QUFFUiwrR0FBQSxzQkFBc0IsT0FBQTtBQUN0QiwwR0FBQSxpQkFBaUIsT0FBQTtBQUtuQixrRkFNZ0Q7QUFMOUMsbUlBQUEsd0JBQXdCLE9BQUE7QUFFeEIsOElBQUEsbUNBQW1DLE9BQUE7QUFDbkMsd0pBQUEsNkNBQTZDLE9BQUE7QUFDN0MsNElBQUEsaUNBQWlDLE9BQUE7QUFHbkMsa0RBY2dDO0FBWjlCLGtIQUFBLHVCQUF1QixPQUFBO0FBQ3ZCLDhHQUFBLG1CQUFtQixPQUFBO0FBQ25CLHFHQUFBLFVBQVUsT0FBQTtBQUdWLHVIQUFBLDRCQUE0QixPQUFBO0FBUzlCLHNHQUkwRDtBQUh4RCxzSkFBQSxpQ0FBaUMsT0FBQTtBQUtuQyxrQkFBa0I7QUFFbEIsb0VBQWtEO0FBQ2xELHlFQUF1RDtBQUV2RCxrQkFBa0I7QUFFbEIsOERBQTRDO0FBRTVDLDZEQUEyQztBQUMzQyx3RUFBc0Q7QUFDdEQsOEVBQTREO0FBQzVELDRFQUEwRDtBQUMxRCxpRUFBK0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyMyBNb25nb0RCIEluY1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4vLyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4vLyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbi8vXG4vLyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuLy9cbi8vIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbi8vIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbi8vIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuLy8gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuLy8gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbi8vIEwxIENvbnN0cnVjdG9yc1xuXG5leHBvcnQge1xuICBDZm5BY2Nlc3NMaXN0QXBpS2V5LFxuICBDZm5BY2Nlc3NMaXN0QXBpS2V5UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9hY2Nlc3MtbGlzdC1hcGkta2V5XCI7XG5cbmV4cG9ydCB7XG4gIENmbkFsZXJ0Q29uZmlndXJhdGlvbixcbiAgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMsXG4gIEludGVnZXJUaHJlc2hvbGRWaWV3LFxuICBJbnRlZ2VyVGhyZXNob2xkVmlld09wZXJhdG9yLFxuICBNYXRjaGVyLFxuICBNYXRjaGVyRmllbGROYW1lLFxuICBNYXRjaGVyT3BlcmF0b3IsXG4gIE1ldHJpY1RocmVzaG9sZFZpZXcsXG4gIE1ldHJpY1RocmVzaG9sZFZpZXdNb2RlLFxuICBNZXRyaWNUaHJlc2hvbGRWaWV3T3BlcmF0b3IsXG4gIE5vdGlmaWNhdGlvblZpZXcsXG4gIE5vdGlmaWNhdGlvblZpZXdEYXRhZG9nUmVnaW9uLFxuICBOb3RpZmljYXRpb25WaWV3VHlwZU5hbWUsXG4gIE5vdGlmaWNhdGlvblZpZXdPcHNHZW5pZVJlZ2lvbixcbiAgTm90aWZpY2F0aW9uVmlld1JvbGVzLFxuICBOb3RpZmljYXRpb25WaWV3U2V2ZXJpdHksXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9hbGVydC1jb25maWd1cmF0aW9uXCI7XG5cbmV4cG9ydCB7XG4gIENmbkFwaUtleSxcbiAgQ2ZuQXBpS2V5UHJvcHMsXG4gIFByb2plY3RBc3NpZ25tZW50LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvYXBpLWtleVwiO1xuXG5leHBvcnQgeyBDZm5BdWRpdGluZywgQ2ZuQXVkaXRpbmdQcm9wcyB9IGZyb20gXCIuL2wxLXJlc291cmNlcy9hdWRpdGluZ1wiO1xuXG5leHBvcnQge1xuICBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzLFxuICBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMsXG4gIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0RlbGl2ZXJ5VHlwZSxcbiAgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzSW5zdGFuY2VUeXBlLFxuICBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1yZXN0b3JlLWpvYnNcIjtcblxuZXhwb3J0IHtcbiAgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3LFxuICBBcGlEZWxldGVDb3BpZWRCYWNrdXBzVmlldyxcbiAgQXBpUG9saWN5SXRlbVZpZXcsXG4gIEFwaVBvbGljeVZpZXcsXG4gIENmbkNsb3VkQmFja3VwU2NoZWR1bGUsXG4gIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyxcbiAgRXhwb3J0LFxuICBMaW5rLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvY2xvdWQtYmFja3VwLXNjaGVkdWxlXCI7XG5cbmV4cG9ydCB7XG4gIEFwaUF0bGFzRGlza0JhY2t1cFNoYXJkZWRDbHVzdGVyU25hcHNob3RNZW1iZXJWaWV3LFxuICBBcGlBdGxhc0Rpc2tCYWNrdXBTaGFyZGVkQ2x1c3RlclNuYXBzaG90TWVtYmVyVmlld0Nsb3VkUHJvdmlkZXIsXG4gIEFwaUF0bGFzRGlza0JhY2t1cFNoYXJkZWRDbHVzdGVyU25hcHNob3RWaWV3LFxuICBBcGlBdGxhc0Rpc2tCYWNrdXBTaGFyZGVkQ2x1c3RlclNuYXBzaG90Vmlld0ZyZXF1ZW5jeVR5cGUsXG4gIEFwaUF0bGFzRGlza0JhY2t1cFNoYXJkZWRDbHVzdGVyU25hcHNob3RWaWV3U25hcHNob3RUeXBlLFxuICBBcGlBdGxhc0Rpc2tCYWNrdXBTaGFyZGVkQ2x1c3RlclNuYXBzaG90Vmlld1N0YXR1cyxcbiAgQXBpQXRsYXNEaXNrQmFja3VwU2hhcmRlZENsdXN0ZXJTbmFwc2hvdFZpZXdUeXBlLFxuICBDZm5DbG91ZEJhY2t1cFNuYXBzaG90LFxuICBDZm5DbG91ZEJhY2t1cFNuYXBzaG90UHJvcHMsXG4gIENmbkNsb3VkQmFja3VwU25hcHNob3RQcm9wc0ZyZXF1ZW5jeVR5cGUsXG4gIENmbkNsb3VkQmFja3VwU25hcHNob3RQcm9wc1NuYXBzaG90VHlwZSxcbiAgQ2ZuQ2xvdWRCYWNrdXBTbmFwc2hvdFByb3BzSW5zdGFuY2VUeXBlLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvY2xvdWQtYmFja3VwLXNuYXBzaG90XCI7XG5cbmV4cG9ydCB7XG4gIENmbkNsb3VkQmFja3VwU25hcHNob3RFeHBvcnRCdWNrZXQsXG4gIENmbkNsb3VkQmFja3VwU25hcHNob3RFeHBvcnRCdWNrZXRQcm9wcyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1zbmFwc2hvdC1leHBvcnQtYnVja2V0XCI7XG5cbmV4cG9ydCB7XG4gIENmbkNsdXN0ZXJPdXRhZ2VTaW11bGF0aW9uLFxuICBDZm5DbHVzdGVyT3V0YWdlU2ltdWxhdGlvblByb3BzLFxuICBGaWx0ZXIsXG4gIEZpbHRlckNsb3VkUHJvdmlkZXIsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9jbHVzdGVyLW91dGFnZS1zaW11bGF0aW9uXCI7XG5cbmV4cG9ydCB7XG4gIENmbkNsdXN0ZXJQcm9wcyxcbiAgUHJvY2Vzc0FyZ3MsXG4gIENmbkNsdXN0ZXJQcm9wc0JpQ29ubmVjdG9yLFxuICBDZm5DbHVzdGVyUHJvcHNMYWJlbHMsXG4gIENvbm5lY3Rpb25TdHJpbmdzLFxuICBBZHZhbmNlZFJlcGxpY2F0aW9uU3BlYyxcbiAgQWR2YW5jZWRBdXRvU2NhbGluZyxcbiAgU3BlY3MsXG4gIERpc2tHYixcbiAgQ29tcHV0ZSxcbiAgQWR2YW5jZWRSZWdpb25Db25maWcsXG4gIENmbkNsdXN0ZXIsXG4gIENmbkNsdXN0ZXJQcm9wc0VuY3J5cHRpb25BdFJlc3RQcm92aWRlcixcbiAgQWR2YW5jZWRSZWdpb25Db25maWdQcm92aWRlck5hbWUsXG4gIFRhZyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2NsdXN0ZXJcIjtcblxuZXhwb3J0IHtcbiAgQWN0aW9uLFxuICBDZm5DdXN0b21EYlJvbGUsXG4gIENmbkN1c3RvbURiUm9sZVByb3BzLFxuICBJbmhlcml0ZWRSb2xlLFxuICBSZXNvdXJjZSxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2N1c3RvbS1kYi1yb2xlXCI7XG5cbmV4cG9ydCB7XG4gIENmbkN1c3RvbURuc0NvbmZpZ3VyYXRpb25DbHVzdGVyQXdzLFxuICBDZm5DdXN0b21EbnNDb25maWd1cmF0aW9uQ2x1c3RlckF3c1Byb3BzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvY3VzdG9tLWRucy1jb25maWd1cmF0aW9uLWNsdXN0ZXItYXdzXCI7XG5cbmV4cG9ydCB7XG4gIENmbkRhdGFMYWtlUGlwZWxpbmUsXG4gIENmbkRhdGFMYWtlUGlwZWxpbmVQcm9wcyxcbiAgU2luayxcbiAgU2lua1R5cGUsXG4gIFNvdXJjZSxcbiAgU291cmNlVHlwZSxcbiAgVHJhbnNmb3JtYXRpb25zLFxuICBQYXJ0aXRpb25GaWVsZHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9kYXRhLWxha2UtcGlwZWxpbmVcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuRGF0YWJhc2VVc2VyLFxuICBDZm5EYXRhYmFzZVVzZXJQcm9wcyxcbiAgTGFiZWxEZWZpbml0aW9uLFxuICBSb2xlRGVmaW5pdGlvbixcbiAgU2NvcGVEZWZpbml0aW9uLFxuICBDZm5EYXRhYmFzZVVzZXJQcm9wc1g1MDlUeXBlLFxuICBDZm5EYXRhYmFzZVVzZXJQcm9wc0F3c2lhbVR5cGUsXG4gIENmbkRhdGFiYXNlVXNlclByb3BzTGRhcEF1dGhUeXBlLFxuICBTY29wZURlZmluaXRpb25UeXBlLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZGF0YWJhc2UtdXNlclwiO1xuXG5leHBvcnQge1xuICBDZm5EYXRhTGFrZXMsXG4gIENmbkRhdGFMYWtlc1Byb3BzLFxuICBEYXRhTGFrZUF3c0Nsb3VkUHJvdmlkZXJDb25maWdWaWV3LFxuICBEYXRhTGFrZUNsb3VkUHJvdmlkZXJDb25maWdWaWV3LFxuICBEYXRhTGFrZURhdGFQcm9jZXNzUmVnaW9uVmlldyxcbiAgRGF0YUxha2VEYXRhUHJvY2Vzc1JlZ2lvblZpZXdDbG91ZFByb3ZpZGVyLFxuICBEYXRhTGFrZURhdGFQcm9jZXNzUmVnaW9uVmlld1JlZ2lvbixcbiAgRGF0YUxha2VEYXRhYmFzZUNvbGxlY3Rpb25WaWV3LFxuICBEYXRhTGFrZURhdGFiYXNlRGF0YVNvdXJjZVZpZXcsXG4gIERhdGFMYWtlRGF0YWJhc2VEYXRhU291cmNlVmlld0RlZmF1bHRGb3JtYXQsXG4gIERhdGFMYWtlRGF0YWJhc2VWaWV3LFxuICBEYXRhTGFrZVN0b3JhZ2VWaWV3LFxuICBEYXRhTGFrZVZpZXdWaWV3LFxuICBTdG9yZURldGFpbCxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2RhdGFsYWtlc1wiO1xuXG5leHBvcnQge1xuICBBd3NLbXNDb25maWd1cmF0aW9uLFxuICBDZm5FbmNyeXB0aW9uQXRSZXN0LFxuICBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9lbmNyeXB0aW9uLWF0LXJlc3RcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZSxcbiAgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzLFxuICBDbG91ZFByb3ZpZGVyQ29uZmlnLFxuICBEYXRhUHJvY2Vzc1JlZ2lvbixcbiAgU3RvcmFnZSxcbiAgRGF0YWJhc2UsXG4gIFN0b3JlLFxuICBDb2xsZWN0aW9uLFxuICBEYXRhU291cmNlLFxuICBSZWFkUHJlZmVyZW5jZSxcbiAgVGFnU2V0LFxuICBWaWV3LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZmVkZXJhdGVkLWRhdGFiYXNlLWluc3RhbmNlXCI7XG5cbmV4cG9ydCB7XG4gIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXQsXG4gIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyxcbiAgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzTGltaXROYW1lLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZmVkZXJhdGVkLXF1ZXJ5LWxpbWl0XCI7XG5cbmV4cG9ydCB7XG4gIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmcsXG4gIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyxcbiAgUm9sZUFzc2lnbm1lbnQsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9mZWRlcmF0ZWQtc2V0dGluZ3Mtb3JnLXJvbGUtbWFwcGluZ1wiO1xuXG5leHBvcnQge1xuICBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnLFxuICBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMsXG4gIE1hbmFnZWROYW1lc3BhY2UsXG4gIFpvbmVNYXBwaW5nLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZ2xvYmFsLWNsdXN0ZXItY29uZmlnXCI7XG5cbmV4cG9ydCB7XG4gIEFwaUF0bGFzTmRzVXNlclRvRG5NYXBwaW5nVmlldyxcbiAgQ2ZuTGRhcENvbmZpZ3VyYXRpb24sXG4gIENmbkxkYXBDb25maWd1cmF0aW9uUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9sZGFwLWNvbmZpZ3VyYXRpb25cIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTGRhcFZlcmlmeSxcbiAgQ2ZuTGRhcFZlcmlmeVByb3BzLFxuICBWYWxpZGF0aW9uLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvbGRhcC12ZXJpZnlcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTWFpbnRlbmFuY2VXaW5kb3csXG4gIENmbk1haW50ZW5hbmNlV2luZG93UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9tYWludGVuYW5jZS13aW5kb3dcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTmV0d29ya0NvbnRhaW5lcixcbiAgQ2ZuTmV0d29ya0NvbnRhaW5lclByb3BzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvbmV0d29yay1jb250YWluZXJcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTmV0d29ya1BlZXJpbmcsXG4gIENmbk5ldHdvcmtQZWVyaW5nUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9uZXR3b3JrLXBlZXJpbmdcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuT25saW5lQXJjaGl2ZSxcbiAgQ2ZuT25saW5lQXJjaGl2ZVByb3BzLFxuICBDZm5PbmxpbmVBcmNoaXZlUHJvcHNDb2xsZWN0aW9uVHlwZSxcbiAgQ3JpdGVyaWFWaWV3LFxuICBDcml0ZXJpYVZpZXdEYXRlRm9ybWF0LFxuICBDcml0ZXJpYVZpZXdUeXBlLFxuICBQYXJ0aXRpb25GaWVsZFZpZXcsXG4gIFBhcnRpdGlvbkZpZWxkVmlld0ZpZWxkVHlwZSxcbiAgU2NoZWR1bGVWaWV3LFxuICBTY2hlZHVsZVZpZXdUeXBlLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvb25saW5lLWFyY2hpdmVcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuT3JnSW52aXRhdGlvbixcbiAgQ2ZuT3JnSW52aXRhdGlvblByb3BzLFxuICBDZm5PcmdJbnZpdGF0aW9uUHJvcHNSb2xlcyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL29yZy1pbnZpdGF0aW9uXCI7XG5cbmV4cG9ydCB7XG4gIENmbk9yZ2FuaXphdGlvbixcbiAgQ2ZuT3JnYW5pemF0aW9uUHJvcHMsXG4gIEFwaUtleSxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL29yZ2FuaXphdGlvblwiO1xuXG5leHBvcnQge1xuICBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyxcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50LFxuICBQcml2YXRlRW5kcG9pbnQsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcml2YXRlLWVuZHBvaW50XCI7XG5cbmV4cG9ydCB7XG4gIENmblByaXZhdGVFbmRwb2ludEFkbCxcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50QWRsUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcml2YXRlLWVuZHBvaW50LWFkbFwiO1xuXG5leHBvcnQge1xuICBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyxcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJpdmF0ZS1lbmRwb2ludC1hd3NcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuUHJpdmF0ZUVuZFBvaW50UmVnaW9uYWxNb2RlLFxuICBDZm5Qcml2YXRlRW5kUG9pbnRSZWdpb25hbE1vZGVQcm9wcyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQtcmVnaW9uYWwtbW9kZVwiO1xuXG5leHBvcnQge1xuICBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlLFxuICBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHMsXG4gIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc0Nsb3VkUHJvdmlkZXIsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcml2YXRlLWVuZHBvaW50LXNlcnZpY2VcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuUHJpdmF0ZWxpbmtFbmRwb2ludFNlcnZpY2VEYXRhRmVkZXJhdGlvbk9ubGluZUFyY2hpdmUsXG4gIENmblByaXZhdGVsaW5rRW5kcG9pbnRTZXJ2aWNlRGF0YUZlZGVyYXRpb25PbmxpbmVBcmNoaXZlUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcml2YXRlbGluay1lbmRwb2ludC1zZXJ2aWNlLWRhdGEtZmVkZXJhdGlvbi1vbmxpbmUtYXJjaGl2ZVwiO1xuXG5leHBvcnQge1xuICBDZm5Qcm9qZWN0LFxuICBDZm5Qcm9qZWN0UHJvcHMsXG4gIFByb2plY3RBcGlLZXksXG4gIFByb2plY3RTZXR0aW5ncyxcbiAgUHJvamVjdFRlYW0sXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcm9qZWN0XCI7XG5cbmV4cG9ydCB7XG4gIENmblByb2plY3RJbnZpdGF0aW9uLFxuICBDZm5Qcm9qZWN0SW52aXRhdGlvblByb3BzLFxuICBDZm5Qcm9qZWN0SW52aXRhdGlvblByb3BzUm9sZXMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcm9qZWN0LWludml0YXRpb25cIjtcblxuZXhwb3J0IHtcbiAgQWNjZXNzTGlzdERlZmluaXRpb24sXG4gIENmblByb2plY3RJcEFjY2Vzc0xpc3QsXG4gIENmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcyxcbiAgTGlzdE9wdGlvbnMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcm9qZWN0LWlwLWFjY2Vzcy1saXN0XCI7XG5cbmV4cG9ydCB7XG4gIENmblNlYXJjaERlcGxveW1lbnQsXG4gIENmblNlYXJjaERlcGxveW1lbnRQcm9wcyxcbiAgQXBpU2VhcmNoRGVwbG95bWVudFNwZWMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9zZWFyY2gtZGVwbG95bWVudFwiO1xuXG5leHBvcnQge1xuICBBcGlBdGxhc0Z0c0FuYWx5emVyc1ZpZXdNYW51YWwsXG4gIEFwaUF0bGFzRnRzTWFwcGluZ3NWaWV3TWFudWFsLFxuICBBcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcsXG4gIENmblNlYXJjaEluZGV4LFxuICBDZm5TZWFyY2hJbmRleFByb3BzLFxuICBTeW5vbnltU291cmNlLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvc2VhcmNoLWluZGV4XCI7XG5cbmV4cG9ydCB7XG4gIENmblNlcnZlcmxlc3NJbnN0YW5jZSxcbiAgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMsXG4gIFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzLFxuICBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQsXG4gIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50LFxuICBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRUeXBlLFxuICBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzLFxuICBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzUHJvdmlkZXJOYW1lLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvc2VydmVybGVzcy1pbnN0YW5jZVwiO1xuXG5leHBvcnQge1xuICBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHMsXG4gIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnQsXG4gIFNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnQsXG4gIEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL3NlcnZlcmxlc3MtcHJpdmF0ZS1lbmRwb2ludFwiO1xuXG5leHBvcnQge1xuICBDZm5TdHJlYW1Db25uZWN0aW9uLFxuICBDZm5TdHJlYW1Db25uZWN0aW9uUHJvcHMsXG4gIENmblN0cmVhbUNvbm5lY3Rpb25Qcm9wc1R5cGUsXG4gIERiUm9sZVRvRXhlY3V0ZSxcbiAgRGJSb2xlVG9FeGVjdXRlVHlwZSxcbiAgU3RyZWFtc0thZmthQXV0aGVudGljYXRpb24sXG4gIFN0cmVhbXNLYWZrYVNlY3VyaXR5LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvc3RyZWFtLWNvbm5lY3Rpb25cIjtcblxuZXhwb3J0IHtcbiAgQ2ZuU3RyZWFtSW5zdGFuY2UsXG4gIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvbkNsb3VkUHJvdmlkZXIsXG4gIENmblN0cmVhbUluc3RhbmNlUHJvcHMsXG4gIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvbixcbiAgU3RyZWFtQ29uZmlnLFxuICBTdHJlYW1zQ29ubmVjdGlvbixcbiAgU3RyZWFtc0Nvbm5lY3Rpb25UeXBlLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvc3RyZWFtLWluc3RhbmNlXCI7XG5cbmV4cG9ydCB7XG4gIENmblRlYW1zLFxuICBDZm5UZWFtc1Byb3BzLFxuICBDZm5UZWFtc1Byb3BzUm9sZU5hbWVzLFxuICBBdGxhc1JvbGVSb2xlTmFtZSxcbiAgQXRsYXNSb2xlLFxuICBBdGxhc1VzZXIsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy90ZWFtc1wiO1xuXG5leHBvcnQge1xuICBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb24sXG4gIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzLFxuICBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1NjaGVtZSxcbiAgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHNTZXJ2aWNlRGlzY292ZXJ5LFxuICBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1R5cGUsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy90aGlyZC1wYXJ0eS1pbnRlZ3JhdGlvblwiO1xuXG5leHBvcnQge1xuICBBdXRoQ29uZmlnLFxuICBBdXRoQ29uZmlnT3BlcmF0aW9uVHlwZSxcbiAgQXV0aENvbmZpZ1Byb3ZpZGVycyxcbiAgQ2ZuVHJpZ2dlcixcbiAgQ2ZuVHJpZ2dlclByb3BzLFxuICBEYXRhYmFzZUNvbmZpZyxcbiAgRGF0YWJhc2VDb25maWdPcGVyYXRpb25UeXBlcyxcbiAgRXZlbnQsXG4gIEV2ZW50QXdzZXZlbnRicmlkZ2UsXG4gIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcsXG4gIEV2ZW50RnVuY3Rpb24sXG4gIEV2ZW50RnVuY3Rpb25GdW5jQ29uZmlnLFxuICBTY2hlZHVsZUNvbmZpZyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL3RyaWdnZXJcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyLFxuICBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyxcbiAgQ3VzdG9tZXJYNTA5LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMveDUwOS1hdXRoZW50aWNhdGlvbi1kYXRhYmFzZS11c2VyXCI7XG5cbi8vIEwyIENvbnN0cnVjdG9yc1xuXG5leHBvcnQgKiBmcm9tIFwiLi9sMi1yZXNvdXJjZXMvZW5jcnlwdGlvbi1hdC1yZXN0XCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sMi1yZXNvdXJjZXMvdGhpcmQtcGFydHktaW50ZWdyYXRpb25cIjtcblxuLy8gTDMgQ29uc3RydWN0b3JzXG5cbmV4cG9ydCAqIGZyb20gXCIuL2wzLXJlc291cmNlcy9jb21tb24vcHJvcHNcIjtcblxuZXhwb3J0ICogZnJvbSBcIi4vbDMtcmVzb3VyY2VzL2F0bGFzLWJhc2ljXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sMy1yZXNvdXJjZXMvYXRsYXMtc2VydmVybGVzcy1iYXNpY1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbDMtcmVzb3VyY2VzL2F0bGFzLWJhc2ljLXByaXZhdGUtZW5kcG9pbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2wzLXJlc291cmNlcy9lbmNyeXB0aW9uLWF0LXJlc3QtZXhwcmVzc1wiO1xuZXhwb3J0ICogZnJvbSBcIi4vbDMtcmVzb3VyY2VzL2F0bGFzLWJvb3RzdHJhcFwiO1xuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDZCQUE2QjtBQUM3QixFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLG1FQUFtRTtBQUNuRSwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLGtEQUFrRDtBQUNsRCxFQUFFO0FBQ0Ysc0VBQXNFO0FBQ3RFLG9FQUFvRTtBQUNwRSwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLGlDQUFpQzs7Ozs7Ozs7Ozs7O0FBRWpDLGtCQUFrQjtBQUVsQiwwRUFHNEM7QUFGMUMsMEhBQUEsbUJBQW1CLE9BQUE7QUFJckIsMEVBaUI0QztBQWhCMUMsNEhBQUEscUJBQXFCLE9BQUE7QUFHckIsbUlBQUEsNEJBQTRCLE9BQUE7QUFFNUIsdUhBQUEsZ0JBQWdCLE9BQUE7QUFDaEIsc0hBQUEsZUFBZSxPQUFBO0FBRWYsOEhBQUEsdUJBQXVCLE9BQUE7QUFDdkIsa0lBQUEsMkJBQTJCLE9BQUE7QUFFM0Isb0lBQUEsNkJBQTZCLE9BQUE7QUFDN0IsK0hBQUEsd0JBQXdCLE9BQUE7QUFDeEIscUlBQUEsOEJBQThCLE9BQUE7QUFDOUIsNEhBQUEscUJBQXFCLE9BQUE7QUFDckIsK0hBQUEsd0JBQXdCLE9BQUE7QUFHMUIsa0RBSWdDO0FBSDlCLG9HQUFBLFNBQVMsT0FBQTtBQUtYLG9EQUF3RTtBQUEvRCx1R0FBQSxXQUFXLE9BQUE7QUFFcEIsc0ZBT2tEO0FBTmhELHNJQUFBLHlCQUF5QixPQUFBO0FBR3pCLHVKQUFBLDBDQUEwQyxPQUFBO0FBQzFDLHVKQUFBLDBDQUEwQyxPQUFBO0FBSTVDLDhFQVM4QztBQUo1QywrSEFBQSxzQkFBc0IsT0FBQTtBQU14Qiw4RUFhOEM7QUFYNUMsd0tBQUEsK0RBQStELE9BQUE7QUFFL0Qsa0tBQUEseURBQXlELE9BQUE7QUFDekQsaUtBQUEsd0RBQXdELE9BQUE7QUFDeEQsMkpBQUEsa0RBQWtELE9BQUE7QUFD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QUFBLHFDQUFxQyxPQUFBO0FBRXJDLHFKQUFBLDhDQUE4QyxPQUFBO0FBR2hELDBGQUlvRDtBQUZsRCwySUFBQSw0QkFBNEIsT0FBQTtBQUk5QixzRUFRMEM7QUFQeEMsd0hBQUEsbUJBQW1CLE9BQUE7QUFFbkIsaUlBQUEsNEJBQTRCLE9BQUE7QUFFNUIsd0hBQUEsbUJBQW1CLE9BQUE7QUFLckIsa0VBUXdDO0FBUHRDLG9IQUFBLGlCQUFpQixPQUFBO0FBQ2pCLHdJQUFBLHFDQUFxQyxPQUFBO0FBS3JDLHdIQUFBLHFCQUFxQixPQUFBO0FBR3ZCLDhDQU84QjtBQU41QixpR0FBQSxRQUFRLE9BQUE7QUFFUiwrR0FBQSxzQkFBc0IsT0FBQTtBQUN0QiwwR0FBQSxpQkFBaUIsT0FBQTtBQUtuQixrRkFNZ0Q7QUFMOUMsbUlBQUEsd0JBQXdCLE9BQUE7QUFFeEIsOElBQUEsbUNBQW1DLE9BQUE7QUFDbkMsd0pBQUEsNkNBQTZDLE9BQUE7QUFDN0MsNElBQUEsaUNBQWlDLE9BQUE7QUFHbkMsa0RBY2dDO0FBWjlCLGtIQUFBLHVCQUF1QixPQUFBO0FBQ3ZCLDhHQUFBLG1CQUFtQixPQUFBO0FBQ25CLHFHQUFBLFVBQVUsT0FBQTtBQUdWLHVIQUFBLDRCQUE0QixPQUFBO0FBUzlCLHNHQUkwRDtBQUh4RCxzSkFBQSxpQ0FBaUMsT0FBQTtBQUtuQyxrQkFBa0I7QUFFbEIsb0VBQWtEO0FBQ2xELHlFQUF1RDtBQUV2RCxrQkFBa0I7QUFFbEIsOERBQTRDO0FBRTVDLDZEQUEyQztBQUMzQyx3RUFBc0Q7QUFDdEQsOEVBQTREO0FBQzVELDRFQUEwRDtBQUMxRCxpRUFBK0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyMyBNb25nb0RCIEluY1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4vLyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4vLyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbi8vXG4vLyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuLy9cbi8vIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbi8vIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbi8vIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuLy8gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuLy8gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbi8vIEwxIENvbnN0cnVjdG9yc1xuXG5leHBvcnQge1xuICBDZm5BY2Nlc3NMaXN0QXBpS2V5LFxuICBDZm5BY2Nlc3NMaXN0QXBpS2V5UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9hY2Nlc3MtbGlzdC1hcGkta2V5XCI7XG5cbmV4cG9ydCB7XG4gIENmbkFsZXJ0Q29uZmlndXJhdGlvbixcbiAgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMsXG4gIEludGVnZXJUaHJlc2hvbGRWaWV3LFxuICBJbnRlZ2VyVGhyZXNob2xkVmlld09wZXJhdG9yLFxuICBNYXRjaGVyLFxuICBNYXRjaGVyRmllbGROYW1lLFxuICBNYXRjaGVyT3BlcmF0b3IsXG4gIE1ldHJpY1RocmVzaG9sZFZpZXcsXG4gIE1ldHJpY1RocmVzaG9sZFZpZXdNb2RlLFxuICBNZXRyaWNUaHJlc2hvbGRWaWV3T3BlcmF0b3IsXG4gIE5vdGlmaWNhdGlvblZpZXcsXG4gIE5vdGlmaWNhdGlvblZpZXdEYXRhZG9nUmVnaW9uLFxuICBOb3RpZmljYXRpb25WaWV3VHlwZU5hbWUsXG4gIE5vdGlmaWNhdGlvblZpZXdPcHNHZW5pZVJlZ2lvbixcbiAgTm90aWZpY2F0aW9uVmlld1JvbGVzLFxuICBOb3RpZmljYXRpb25WaWV3U2V2ZXJpdHksXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9hbGVydC1jb25maWd1cmF0aW9uXCI7XG5cbmV4cG9ydCB7XG4gIENmbkFwaUtleSxcbiAgQ2ZuQXBpS2V5UHJvcHMsXG4gIFByb2plY3RBc3NpZ25tZW50LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvYXBpLWtleVwiO1xuXG5leHBvcnQgeyBDZm5BdWRpdGluZywgQ2ZuQXVkaXRpbmdQcm9wcyB9IGZyb20gXCIuL2wxLXJlc291cmNlcy9hdWRpdGluZ1wiO1xuXG5leHBvcnQge1xuICBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzLFxuICBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMsXG4gIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0xpbmtzLFxuICBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNEZWxpdmVyeVR5cGUsXG4gIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0luc3RhbmNlVHlwZSxcbiAgU3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9jbG91ZC1iYWNrdXAtcmVzdG9yZS1qb2JzXCI7XG5cbmV4cG9ydCB7XG4gIEFwaUF0bGFzRGlza0JhY2t1cENvcHlTZXR0aW5nVmlldyxcbiAgQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXcsXG4gIEFwaVBvbGljeUl0ZW1WaWV3LFxuICBBcGlQb2xpY3lWaWV3LFxuICBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlLFxuICBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMsXG4gIEV4cG9ydCxcbiAgTGluayxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1zY2hlZHVsZVwiO1xuXG5leHBvcnQge1xuICBBcGlBdGxhc0Rpc2tCYWNrdXBTaGFyZGVkQ2x1c3RlclNuYXBzaG90TWVtYmVyVmlldyxcbiAgQXBpQXRsYXNEaXNrQmFja3VwU2hhcmRlZENsdXN0ZXJTbmFwc2hvdE1lbWJlclZpZXdDbG91ZFByb3ZpZGVyLFxuICBBcGlBdGxhc0Rpc2tCYWNrdXBTaGFyZGVkQ2x1c3RlclNuYXBzaG90VmlldyxcbiAgQXBpQXRsYXNEaXNrQmFja3VwU2hhcmRlZENsdXN0ZXJTbmFwc2hvdFZpZXdGcmVxdWVuY3lUeXBlLFxuICBBcGlBdGxhc0Rpc2tCYWNrdXBTaGFyZGVkQ2x1c3RlclNuYXBzaG90Vmlld1NuYXBzaG90VHlwZSxcbiAgQXBpQXRsYXNEaXNrQmFja3VwU2hhcmRlZENsdXN0ZXJTbmFwc2hvdFZpZXdTdGF0dXMsXG4gIEFwaUF0bGFzRGlza0JhY2t1cFNoYXJkZWRDbHVzdGVyU25hcHNob3RWaWV3VHlwZSxcbiAgQ2ZuQ2xvdWRCYWNrdXBTbmFwc2hvdCxcbiAgQ2ZuQ2xvdWRCYWNrdXBTbmFwc2hvdFByb3BzLFxuICBDZm5DbG91ZEJhY2t1cFNuYXBzaG90UHJvcHNGcmVxdWVuY3lUeXBlLFxuICBDZm5DbG91ZEJhY2t1cFNuYXBzaG90UHJvcHNTbmFwc2hvdFR5cGUsXG4gIENmbkNsb3VkQmFja3VwU25hcHNob3RQcm9wc0luc3RhbmNlVHlwZSxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1zbmFwc2hvdFwiO1xuXG5leHBvcnQge1xuICBDZm5DbG91ZEJhY2t1cFNuYXBzaG90RXhwb3J0QnVja2V0LFxuICBDZm5DbG91ZEJhY2t1cFNuYXBzaG90RXhwb3J0QnVja2V0UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9jbG91ZC1iYWNrdXAtc25hcHNob3QtZXhwb3J0LWJ1Y2tldFwiO1xuXG5leHBvcnQge1xuICBDZm5DbHVzdGVyT3V0YWdlU2ltdWxhdGlvbixcbiAgQ2ZuQ2x1c3Rlck91dGFnZVNpbXVsYXRpb25Qcm9wcyxcbiAgRmlsdGVyLFxuICBGaWx0ZXJDbG91ZFByb3ZpZGVyLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvY2x1c3Rlci1vdXRhZ2Utc2ltdWxhdGlvblwiO1xuXG5leHBvcnQge1xuICBDZm5DbHVzdGVyUHJvcHMsXG4gIFByb2Nlc3NBcmdzLFxuICBDZm5DbHVzdGVyUHJvcHNCaUNvbm5lY3RvcixcbiAgQ2ZuQ2x1c3RlclByb3BzTGFiZWxzLFxuICBDb25uZWN0aW9uU3RyaW5ncyxcbiAgQWR2YW5jZWRSZXBsaWNhdGlvblNwZWMsXG4gIEFkdmFuY2VkQXV0b1NjYWxpbmcsXG4gIFNwZWNzLFxuICBEaXNrR2IsXG4gIENvbXB1dGUsXG4gIEFkdmFuY2VkUmVnaW9uQ29uZmlnLFxuICBDZm5DbHVzdGVyLFxuICBDZm5DbHVzdGVyUHJvcHNFbmNyeXB0aW9uQXRSZXN0UHJvdmlkZXIsXG4gIEFkdmFuY2VkUmVnaW9uQ29uZmlnUHJvdmlkZXJOYW1lLFxuICBUYWcsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9jbHVzdGVyXCI7XG5cbmV4cG9ydCB7XG4gIEFjdGlvbixcbiAgQ2ZuQ3VzdG9tRGJSb2xlLFxuICBDZm5DdXN0b21EYlJvbGVQcm9wcyxcbiAgSW5oZXJpdGVkUm9sZSxcbiAgUmVzb3VyY2UsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9jdXN0b20tZGItcm9sZVwiO1xuXG5leHBvcnQge1xuICBDZm5DdXN0b21EbnNDb25maWd1cmF0aW9uQ2x1c3RlckF3cyxcbiAgQ2ZuQ3VzdG9tRG5zQ29uZmlndXJhdGlvbkNsdXN0ZXJBd3NQcm9wcyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2N1c3RvbS1kbnMtY29uZmlndXJhdGlvbi1jbHVzdGVyLWF3c1wiO1xuXG5leHBvcnQge1xuICBDZm5EYXRhTGFrZVBpcGVsaW5lLFxuICBDZm5EYXRhTGFrZVBpcGVsaW5lUHJvcHMsXG4gIFNpbmssXG4gIFNpbmtUeXBlLFxuICBTb3VyY2UsXG4gIFNvdXJjZVR5cGUsXG4gIFRyYW5zZm9ybWF0aW9ucyxcbiAgUGFydGl0aW9uRmllbGRzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZGF0YS1sYWtlLXBpcGVsaW5lXCI7XG5cbmV4cG9ydCB7XG4gIENmbkRhdGFiYXNlVXNlcixcbiAgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMsXG4gIExhYmVsRGVmaW5pdGlvbixcbiAgUm9sZURlZmluaXRpb24sXG4gIFNjb3BlRGVmaW5pdGlvbixcbiAgQ2ZuRGF0YWJhc2VVc2VyUHJvcHNYNTA5VHlwZSxcbiAgQ2ZuRGF0YWJhc2VVc2VyUHJvcHNBd3NpYW1UeXBlLFxuICBDZm5EYXRhYmFzZVVzZXJQcm9wc0xkYXBBdXRoVHlwZSxcbiAgU2NvcGVEZWZpbml0aW9uVHlwZSxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL2RhdGFiYXNlLXVzZXJcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuRGF0YUxha2VzLFxuICBDZm5EYXRhTGFrZXNQcm9wcyxcbiAgRGF0YUxha2VBd3NDbG91ZFByb3ZpZGVyQ29uZmlnVmlldyxcbiAgRGF0YUxha2VDbG91ZFByb3ZpZGVyQ29uZmlnVmlldyxcbiAgRGF0YUxha2VEYXRhUHJvY2Vzc1JlZ2lvblZpZXcsXG4gIERhdGFMYWtlRGF0YVByb2Nlc3NSZWdpb25WaWV3Q2xvdWRQcm92aWRlcixcbiAgRGF0YUxha2VEYXRhUHJvY2Vzc1JlZ2lvblZpZXdSZWdpb24sXG4gIERhdGFMYWtlRGF0YWJhc2VDb2xsZWN0aW9uVmlldyxcbiAgRGF0YUxha2VEYXRhYmFzZURhdGFTb3VyY2VWaWV3LFxuICBEYXRhTGFrZURhdGFiYXNlRGF0YVNvdXJjZVZpZXdEZWZhdWx0Rm9ybWF0LFxuICBEYXRhTGFrZURhdGFiYXNlVmlldyxcbiAgRGF0YUxha2VTdG9yYWdlVmlldyxcbiAgRGF0YUxha2VWaWV3VmlldyxcbiAgU3RvcmVEZXRhaWwsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9kYXRhbGFrZXNcIjtcblxuZXhwb3J0IHtcbiAgQXdzS21zQ29uZmlnLFxuICBDZm5FbmNyeXB0aW9uQXRSZXN0LFxuICBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9lbmNyeXB0aW9uLWF0LXJlc3RcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZSxcbiAgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzLFxuICBDbG91ZFByb3ZpZGVyQ29uZmlnLFxuICBEYXRhUHJvY2Vzc1JlZ2lvbixcbiAgU3RvcmFnZSxcbiAgRGF0YWJhc2UsXG4gIFN0b3JlLFxuICBDb2xsZWN0aW9uLFxuICBEYXRhU291cmNlLFxuICBSZWFkUHJlZmVyZW5jZSxcbiAgVGFnU2V0LFxuICBWaWV3LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZmVkZXJhdGVkLWRhdGFiYXNlLWluc3RhbmNlXCI7XG5cbmV4cG9ydCB7XG4gIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXQsXG4gIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyxcbiAgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzTGltaXROYW1lLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZmVkZXJhdGVkLXF1ZXJ5LWxpbWl0XCI7XG5cbmV4cG9ydCB7XG4gIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmcsXG4gIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyxcbiAgUm9sZUFzc2lnbm1lbnQsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9mZWRlcmF0ZWQtc2V0dGluZ3Mtb3JnLXJvbGUtbWFwcGluZ1wiO1xuXG5leHBvcnQge1xuICBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnLFxuICBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMsXG4gIE1hbmFnZWROYW1lc3BhY2UsXG4gIFpvbmVNYXBwaW5nLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvZ2xvYmFsLWNsdXN0ZXItY29uZmlnXCI7XG5cbmV4cG9ydCB7XG4gIEFwaUF0bGFzTmRzVXNlclRvRG5NYXBwaW5nVmlldyxcbiAgQ2ZuTGRhcENvbmZpZ3VyYXRpb24sXG4gIENmbkxkYXBDb25maWd1cmF0aW9uUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9sZGFwLWNvbmZpZ3VyYXRpb25cIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTGRhcFZlcmlmeSxcbiAgQ2ZuTGRhcFZlcmlmeVByb3BzLFxuICBWYWxpZGF0aW9uLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvbGRhcC12ZXJpZnlcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTWFpbnRlbmFuY2VXaW5kb3csXG4gIENmbk1haW50ZW5hbmNlV2luZG93UHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9tYWludGVuYW5jZS13aW5kb3dcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTmV0d29ya0NvbnRhaW5lcixcbiAgQ2ZuTmV0d29ya0NvbnRhaW5lclByb3BzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvbmV0d29yay1jb250YWluZXJcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuTmV0d29ya1BlZXJpbmcsXG4gIENmbk5ldHdvcmtQZWVyaW5nUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9uZXR3b3JrLXBlZXJpbmdcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuT25saW5lQXJjaGl2ZSxcbiAgQ2ZuT25saW5lQXJjaGl2ZVByb3BzLFxuICBDZm5PbmxpbmVBcmNoaXZlUHJvcHNDb2xsZWN0aW9uVHlwZSxcbiAgQ3JpdGVyaWFWaWV3LFxuICBDcml0ZXJpYVZpZXdEYXRlRm9ybWF0LFxuICBDcml0ZXJpYVZpZXdUeXBlLFxuICBQYXJ0aXRpb25GaWVsZFZpZXcsXG4gIFNjaGVkdWxlVmlldyxcbiAgU2NoZWR1bGVWaWV3VHlwZSxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL29ubGluZS1hcmNoaXZlXCI7XG5cbmV4cG9ydCB7XG4gIENmbk9yZ0ludml0YXRpb24sXG4gIENmbk9yZ0ludml0YXRpb25Qcm9wcyxcbiAgQ2ZuT3JnSW52aXRhdGlvblByb3BzUm9sZXMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9vcmctaW52aXRhdGlvblwiO1xuXG5leHBvcnQge1xuICBDZm5Pcmdhbml6YXRpb24sXG4gIENmbk9yZ2FuaXphdGlvblByb3BzLFxuICBBcGlLZXksXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9vcmdhbml6YXRpb25cIjtcblxuZXhwb3J0IHtcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMsXG4gIENmblByaXZhdGVFbmRwb2ludCxcbiAgUHJpdmF0ZUVuZHBvaW50LFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJpdmF0ZS1lbmRwb2ludFwiO1xuXG5leHBvcnQge1xuICBDZm5Qcml2YXRlRW5kcG9pbnRBZGwsXG4gIENmblByaXZhdGVFbmRwb2ludEFkbFByb3BzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJpdmF0ZS1lbmRwb2ludC1hZGxcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMsXG4gIENmblByaXZhdGVFbmRwb2ludEF3cyxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQtYXdzXCI7XG5cbmV4cG9ydCB7XG4gIENmblByaXZhdGVFbmRQb2ludFJlZ2lvbmFsTW9kZSxcbiAgQ2ZuUHJpdmF0ZUVuZFBvaW50UmVnaW9uYWxNb2RlUHJvcHMsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9wcml2YXRlLWVuZHBvaW50LXJlZ2lvbmFsLW1vZGVcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZSxcbiAgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzLFxuICBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHNDbG91ZFByb3ZpZGVyLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJpdmF0ZS1lbmRwb2ludC1zZXJ2aWNlXCI7XG5cbmV4cG9ydCB7XG4gIENmblByaXZhdGVsaW5rRW5kcG9pbnRTZXJ2aWNlRGF0YUZlZGVyYXRpb25PbmxpbmVBcmNoaXZlLFxuICBDZm5Qcml2YXRlbGlua0VuZHBvaW50U2VydmljZURhdGFGZWRlcmF0aW9uT25saW5lQXJjaGl2ZVByb3BzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJpdmF0ZWxpbmstZW5kcG9pbnQtc2VydmljZS1kYXRhLWZlZGVyYXRpb24tb25saW5lLWFyY2hpdmVcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuUHJvamVjdCxcbiAgQ2ZuUHJvamVjdFByb3BzLFxuICBQcm9qZWN0QXBpS2V5LFxuICBQcm9qZWN0U2V0dGluZ3MsXG4gIFByb2plY3RUZWFtLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJvamVjdFwiO1xuXG5leHBvcnQge1xuICBDZm5Qcm9qZWN0SW52aXRhdGlvbixcbiAgQ2ZuUHJvamVjdEludml0YXRpb25Qcm9wcyxcbiAgQ2ZuUHJvamVjdEludml0YXRpb25Qcm9wc1JvbGVzLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJvamVjdC1pbnZpdGF0aW9uXCI7XG5cbmV4cG9ydCB7XG4gIEFjY2Vzc0xpc3REZWZpbml0aW9uLFxuICBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0LFxuICBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMsXG4gIExpc3RPcHRpb25zLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvcHJvamVjdC1pcC1hY2Nlc3MtbGlzdFwiO1xuXG5leHBvcnQge1xuICBDZm5TZWFyY2hEZXBsb3ltZW50LFxuICBDZm5TZWFyY2hEZXBsb3ltZW50UHJvcHMsXG4gIEFwaVNlYXJjaERlcGxveW1lbnRTcGVjLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvc2VhcmNoLWRlcGxveW1lbnRcIjtcblxuZXhwb3J0IHtcbiAgQXBpQXRsYXNGdHNBbmFseXplcnNUb2tlbml6ZXIsXG4gIEFwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbCxcbiAgQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwsXG4gIEFwaUF0bGFzRnRzU3lub255bU1hcHBpbmdEZWZpbml0aW9uVmlldyxcbiAgQ2ZuU2VhcmNoSW5kZXgsXG4gIENmblNlYXJjaEluZGV4UHJvcHMsXG4gIFN5bm9ueW1Tb3VyY2UsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9zZWFyY2gtaW5kZXhcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuU2VydmVybGVzc0luc3RhbmNlLFxuICBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyxcbiAgU2VydmVybGVzc0luc3RhbmNlQ29ubmVjdGlvblN0cmluZ3MsXG4gIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludCxcbiAgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQsXG4gIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFR5cGUsXG4gIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3MsXG4gIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3NQcm92aWRlck5hbWUsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9zZXJ2ZXJsZXNzLWluc3RhbmNlXCI7XG5cbmV4cG9ydCB7XG4gIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcyxcbiAgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludCxcbiAgQXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlnLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvc2VydmVybGVzcy1wcml2YXRlLWVuZHBvaW50XCI7XG5cbmV4cG9ydCB7XG4gIENmblN0cmVhbUNvbm5lY3Rpb24sXG4gIENmblN0cmVhbUNvbm5lY3Rpb25Qcm9wcyxcbiAgQ2ZuU3RyZWFtQ29ubmVjdGlvblByb3BzVHlwZSxcbiAgRGJSb2xlVG9FeGVjdXRlLFxuICBEYlJvbGVUb0V4ZWN1dGVUeXBlLFxuICBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbixcbiAgU3RyZWFtc0thZmthU2VjdXJpdHksXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9zdHJlYW0tY29ubmVjdGlvblwiO1xuXG5leHBvcnQge1xuICBDZm5TdHJlYW1JbnN0YW5jZSxcbiAgU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uQ2xvdWRQcm92aWRlcixcbiAgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyxcbiAgU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uLFxuICBTdHJlYW1Db25maWcsXG4gIFN0cmVhbXNDb25uZWN0aW9uLFxuICBTdHJlYW1zQ29ubmVjdGlvblR5cGUsXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy9zdHJlYW0taW5zdGFuY2VcIjtcblxuZXhwb3J0IHtcbiAgQ2ZuVGVhbXMsXG4gIENmblRlYW1zUHJvcHMsXG4gIENmblRlYW1zUHJvcHNSb2xlTmFtZXMsXG4gIEF0bGFzUm9sZVJvbGVOYW1lLFxuICBBdGxhc1JvbGUsXG4gIEF0bGFzVXNlcixcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL3RlYW1zXCI7XG5cbmV4cG9ydCB7XG4gIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvbixcbiAgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMsXG4gIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzU2NoZW1lLFxuICBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1NlcnZpY2VEaXNjb3ZlcnksXG4gIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzVHlwZSxcbn0gZnJvbSBcIi4vbDEtcmVzb3VyY2VzL3RoaXJkLXBhcnR5LWludGVncmF0aW9uXCI7XG5cbmV4cG9ydCB7XG4gIEF1dGhDb25maWcsXG4gIEF1dGhDb25maWdPcGVyYXRpb25UeXBlLFxuICBBdXRoQ29uZmlnUHJvdmlkZXJzLFxuICBDZm5UcmlnZ2VyLFxuICBDZm5UcmlnZ2VyUHJvcHMsXG4gIERhdGFiYXNlQ29uZmlnLFxuICBEYXRhYmFzZUNvbmZpZ09wZXJhdGlvblR5cGVzLFxuICBFdmVudCxcbiAgRXZlbnRBd3NldmVudGJyaWRnZSxcbiAgRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyxcbiAgRXZlbnRGdW5jdGlvbixcbiAgRXZlbnRGdW5jdGlvbkZ1bmNDb25maWcsXG4gIFNjaGVkdWxlQ29uZmlnLFxufSBmcm9tIFwiLi9sMS1yZXNvdXJjZXMvdHJpZ2dlclwiO1xuXG5leHBvcnQge1xuICBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXIsXG4gIENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzLFxuICBDdXN0b21lclg1MDksXG59IGZyb20gXCIuL2wxLXJlc291cmNlcy94NTA5LWF1dGhlbnRpY2F0aW9uLWRhdGFiYXNlLXVzZXJcIjtcblxuLy8gTDIgQ29uc3RydWN0b3JzXG5cbmV4cG9ydCAqIGZyb20gXCIuL2wyLXJlc291cmNlcy9lbmNyeXB0aW9uLWF0LXJlc3RcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2wyLXJlc291cmNlcy90aGlyZC1wYXJ0eS1pbnRlZ3JhdGlvblwiO1xuXG4vLyBMMyBDb25zdHJ1Y3RvcnNcblxuZXhwb3J0ICogZnJvbSBcIi4vbDMtcmVzb3VyY2VzL2NvbW1vbi9wcm9wc1wiO1xuXG5leHBvcnQgKiBmcm9tIFwiLi9sMy1yZXNvdXJjZXMvYXRsYXMtYmFzaWNcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2wzLXJlc291cmNlcy9hdGxhcy1zZXJ2ZXJsZXNzLWJhc2ljXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sMy1yZXNvdXJjZXMvYXRsYXMtYmFzaWMtcHJpdmF0ZS1lbmRwb2ludFwiO1xuZXhwb3J0ICogZnJvbSBcIi4vbDMtcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC1leHByZXNzXCI7XG5leHBvcnQgKiBmcm9tIFwiLi9sMy1yZXNvdXJjZXMvYXRsYXMtYm9vdHN0cmFwXCI7XG4iXX0=

@@ -54,3 +54,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnAccessListApiKey[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnAccessListApiKey", version: "3.7.2" };
CfnAccessListApiKey[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnAccessListApiKey", version: "3.8.0" };
/**

@@ -57,0 +57,0 @@ * The CloudFormation resource type name for this resource class.

@@ -16,8 +16,2 @@ import * as cdk from "aws-cdk-lib";

/**
* Date and time when MongoDB Cloud created the alert configuration. This parameter expresses its value in the ISO 8601 timestamp format in UTC.
*
* @schema CfnAlertConfigurationProps#Created
*/
readonly created?: string;
/**
* Event type that triggers an alert.

@@ -193,14 +187,2 @@ *

/**
* Flowdock flow name to which MongoDB Cloud sends alert notifications. This name appears after the organization name in the Uniform Resource Locator (URL) path: 'www.flowdock.com/app/<organization-name>/<flow-name>'. The resource requires this parameter when '"notifications.typeName" : "FLOWDOCK"'.
*
* @schema NotificationView#FlowName
*/
readonly flowName?: string;
/**
* Flowdock API token that MongoDB Cloud needs to send alert notifications to Flowdock. The resource requires this parameter when '"notifications.typeName" : "FLOWDOCK"'. If the token later becomes invalid, MongoDB Cloud sends an email to the project owners. If the token remains invalid, MongoDB Cloud removes the token.
*
* @schema NotificationView#FlowdockApiToken
*/
readonly flowdockApiToken?: string;
/**
* Number of minutes to wait between successive notifications. MongoDB Cloud sends notifications until someone acknowledges the unacknowledged alert.

@@ -569,2 +551,6 @@ *

/**
* Attribute `MongoDB::Atlas::AlertConfiguration.Created`
*/
readonly attrCreated: string;
/**
* Create a new `MongoDB::Atlas::AlertConfiguration`.

@@ -571,0 +557,0 @@ *

@@ -18,3 +18,2 @@ "use strict";

Profile: obj.profile,
Created: obj.created,
EventTypeName: obj.eventTypeName,

@@ -84,4 +83,2 @@ ProjectId: obj.projectId,

EmailEnabled: obj.emailEnabled,
FlowName: obj.flowName,
FlowdockApiToken: obj.flowdockApiToken,
IntervalMin: obj.intervalMin,

@@ -341,2 +338,3 @@ MicrosoftTeamsWebhookUrl: obj.microsoftTeamsWebhookUrl,

this.attrUpdated = cdk.Token.asString(this.getAtt("Updated"));
this.attrCreated = cdk.Token.asString(this.getAtt("Created"));
}

@@ -346,3 +344,3 @@ }

_a = JSII_RTTI_SYMBOL_1;
CfnAlertConfiguration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnAlertConfiguration", version: "3.7.2" };
CfnAlertConfiguration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnAlertConfiguration", version: "3.8.0" };
/**

@@ -352,2 +350,2 @@ * The CloudFormation resource type name for this resource class.

CfnAlertConfiguration.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::AlertConfiguration";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2FsZXJ0LWNvbmZpZ3VyYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBeUVuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixpQ0FBaUMsQ0FDL0MsR0FBMkM7SUFFM0MsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtRQUNoQyxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckQsZUFBZSxFQUFFLDBCQUEwQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7UUFDaEUsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RSxTQUFTLEVBQUUsMkJBQTJCLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQztRQUNyRCxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7S0FDdkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FB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QUM7UUFDMUMsSUFBSSxDQUFDLFdBQVcsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQzs7QUEvQ0gsc0RBZ0RDOzs7QUEvQ0M7O0dBRUc7QUFDb0IsNENBQXNCLEdBQzNDLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zIGFuZCBlZGl0cyB0aGUgY29uZGl0aW9ucyB0aGF0IHRyaWdnZXIgYWxlcnRzIGFuZCBob3cgTW9uZ29EQiBDbG91ZCBub3RpZmllcyB1c2Vycy4gVGhpcyBjb2xsZWN0aW9uIHJlbWFpbnMgdW5kZXIgcmV2aXNpb24gYW5kIG1heSBjaGFuZ2UuIFJlZmVyIHRvIHRoZSBsZWdhY3kgZG9jdW1lbnRhdGlvbiBmb3IgdGhpcyBjb2xsZWN0aW9uIGluIHRoZSBmb2xsb3dpbmcgbGluay5cbiAqXG4gKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMge1xuICAvKipcbiAgICogUHJvZmlsZSB1c2VkIHRvIHByb3ZpZGUgY3JlZGVudGlhbHMgaW5mb3JtYXRpb24sIChhIHNlY3JldCB3aXRoIHRoZSBjZm4vYXRsYXMvcHJvZmlsZS97UHJvZmlsZX0sIGlzIHJlcXVpcmVkKSwgaWYgbm90IHByb3ZpZGVkIGRlZmF1bHQgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGUgYW5kIHRpbWUgd2hlbiBNb25nb0RCIENsb3VkIGNyZWF0ZWQgdGhlIGFsZXJ0IGNvbmZpZ3VyYXRpb24uIFRoaXMgcGFyYW1ldGVyIGV4cHJlc3NlcyBpdHMgdmFsdWUgaW4gdGhlIElTTyA4NjAxIHRpbWVzdGFtcCBmb3JtYXQgaW4gVVRDLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI0NyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGNyZWF0ZWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEV2ZW50IHR5cGUgdGhhdCB0cmlnZ2VycyBhbiBhbGVydC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyNFdmVudFR5cGVOYW1lXG4gICAqL1xuICByZWFkb25seSBldmVudFR5cGVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcnVsZXMgdGhhdCBkZXRlcm1pbmUgd2hldGhlciBNb25nb0RCIENsb3VkIGNoZWNrcyBhbiBvYmplY3QgZm9yIHRoZSBhbGVydCBjb25maWd1cmF0aW9uLiBZb3UgY2FuIGZpbHRlciB1c2luZyB0aGUgbWF0Y2hlcnMgYXJyYXkgaWYgdGhlICoqZXZlbnRUeXBlTmFtZSoqIHNwZWNpZmllcyBhbiBldmVudCBmb3IgYSBob3N0LCByZXBsaWNhIHNldCwgb3Igc2hhcmRlZCBjbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI01hdGNoZXJzXG4gICAqL1xuICByZWFkb25seSBtYXRjaGVycz86IE1hdGNoZXJbXTtcblxuICAvKipcbiAgICogVGhyZXNob2xkIGZvciB0aGUgbWV0cmljIHRoYXQsIHdoZW4gZXhjZWVkZWQsIHRyaWdnZXJzIGFuIGFsZXJ0LiBUaGUgcmVzb3VyY2UgcmV0dXJucyB0aGlzIHBhcmFtZXRlciB3aGVuICdcImV2ZW50VHlwZU5hbWVcIiA6IFwiT1VUU0lERV9NRVRSSUNfVEhSRVNIT0xEXCInLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI01ldHJpY1RocmVzaG9sZFxuICAgKi9cbiAgcmVhZG9ubHkgbWV0cmljVGhyZXNob2xkPzogTWV0cmljVGhyZXNob2xkVmlldztcblxuICAvKipcbiAgICogTGlzdCB0aGF0IGNvbnRhaW5zIHRoZSB0YXJnZXRzIHRoYXQgTW9uZ29EQiBDbG91ZCBzZW5kcyBub3RpZmljYXRpb25zLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI05vdGlmaWNhdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IG5vdGlmaWNhdGlvbnM/OiBOb3RpZmljYXRpb25WaWV3W107XG5cbiAgLyoqXG4gICAqIExpbWl0IHRoYXQgdHJpZ2dlcnMgYW4gYWxlcnQgd2hlbiBleGNlZWRlZC4gVGhlIHJlc291cmNlIHJldHVybnMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAqKmV2ZW50VHlwZU5hbWUqKiBoYXMgbm90IGJlZW4gc2V0IHRvICdPVVRTSURFX01FVFJJQ19USFJFU0hPTEQnLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI1RocmVzaG9sZFxuICAgKi9cbiAgcmVhZG9ubHkgdGhyZXNob2xkPzogSW50ZWdlclRocmVzaG9sZFZpZXc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgZGlzcGxheXMgdGhlIGFsZXJ0IHR5cGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjVHlwZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGVOYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMoXG4gIG9iajogQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBDcmVhdGVkOiBvYmouY3JlYXRlZCxcbiAgICBFdmVudFR5cGVOYW1lOiBvYmouZXZlbnRUeXBlTmFtZSxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gICAgTWF0Y2hlcnM6IG9iai5tYXRjaGVycz8ubWFwKCh5KSA9PiB0b0pzb25fTWF0Y2hlcih5KSksXG4gICAgTWV0cmljVGhyZXNob2xkOiB0b0pzb25fTWV0cmljVGhyZXNob2xkVmlldyhvYmoubWV0cmljVGhyZXNob2xkKSxcbiAgICBOb3RpZmljYXRpb25zOiBvYmoubm90aWZpY2F0aW9ucz8ubWFwKCh5KSA9PiB0b0pzb25fTm90aWZpY2F0aW9uVmlldyh5KSksXG4gICAgVGhyZXNob2xkOiB0b0pzb25fSW50ZWdlclRocmVzaG9sZFZpZXcob2JqLnRocmVzaG9sZCksXG4gICAgVHlwZU5hbWU6IG9iai50eXBlTmFtZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBNYXRjaGVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWF0Y2hlciB7XG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBwYXJhbWV0ZXIgaW4gdGhlIHRhcmdldCBvYmplY3QgdGhhdCBNb25nb0RCIENsb3VkIGNoZWNrcy4gVGhlIHBhcmFtZXRlciBtdXN0IG1hdGNoIGFsbCBydWxlcyBmb3IgTW9uZ29EQiBDbG91ZCB0byBjaGVjayBmb3IgYWxlcnQgY29uZmlndXJhdGlvbnMuXG4gICAqXG4gICAqIEBzY2hlbWEgTWF0Y2hlciNGaWVsZE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGZpZWxkTmFtZT86IE1hdGNoZXJGaWVsZE5hbWU7XG5cbiAgLyoqXG4gICAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gYXBwbHkgd2hlbiBjaGVja2luZyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUgYWdhaW5zdCAqKm1hdGNoZXJbbl0udmFsdWUqKi5cbiAgICpcbiAgICogQHNjaGVtYSBNYXRjaGVyI09wZXJhdG9yXG4gICAqL1xuICByZWFkb25seSBvcGVyYXRvcj86IE1hdGNoZXJPcGVyYXRvcjtcblxuICAvKipcbiAgICogVmFsdWUgdG8gbWF0Y2ggb3IgZXhjZWVkIHVzaW5nIHRoZSBzcGVjaWZpZWQgKiptYXRjaGVycy5vcGVyYXRvcioqLlxuICAgKlxuICAgKiBAc2NoZW1hIE1hdGNoZXIjVmFsdWVcbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdNYXRjaGVyJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9NYXRjaGVyKFxuICBvYmo6IE1hdGNoZXIgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBGaWVsZE5hbWU6IG9iai5maWVsZE5hbWUsXG4gICAgT3BlcmF0b3I6IG9iai5vcGVyYXRvcixcbiAgICBWYWx1ZTogb2JqLnZhbHVlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIE1ldHJpY1RocmVzaG9sZFZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNZXRyaWNUaHJlc2hvbGRWaWV3IHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgbWV0cmljIGFnYWluc3Qgd2hpY2ggTW9uZ29EQiBDbG91ZCBjaGVja3MgdGhlIGNvbmZpZ3VyZWQgKiptZXRyaWNUaHJlc2hvbGQudGhyZXNob2xkKiouXG4gICAqXG4gICAqIEBzY2hlbWEgTWV0cmljVGhyZXNob2xkVmlldyNNZXRyaWNOYW1lXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNb25nb0RCIENsb3VkIGNvbXB1dGVzIHRoZSBjdXJyZW50IG1ldHJpYyB2YWx1ZSBhcyBhbiBhdmVyYWdlLlxuICAgKlxuICAgKiBAc2NoZW1hIE1ldHJpY1RocmVzaG9sZFZpZXcjTW9kZVxuICAgKi9cbiAgcmVhZG9ubHkgbW9kZT86IE1ldHJpY1RocmVzaG9sZFZpZXdNb2RlO1xuXG4gIC8qKlxuICAgKiBDb21wYXJpc29uIG9wZXJhdG9yIHRvIGFwcGx5IHdoZW4gY2hlY2tpbmcgdGhlIGN1cnJlbnQgbWV0cmljIHZhbHVlLlxuICAgKlxuICAgKiBAc2NoZW1hIE1ldHJpY1RocmVzaG9sZFZpZXcjT3BlcmF0b3JcbiAgICovXG4gIHJlYWRvbmx5IG9wZXJhdG9yPzogTWV0cmljVGhyZXNob2xkVmlld09wZXJhdG9yO1xuXG4gIC8qKlxuICAgKiBWYWx1ZSBvZiBtZXRyaWMgdGhhdCwgd2hlbiBleGNlZWRlZCwgdHJpZ2dlcnMgYW4gYWxlcnQuXG4gICAqXG4gICAqIEBzY2hlbWEgTWV0cmljVGhyZXNob2xkVmlldyNUaHJlc2hvbGRcbiAgICovXG4gIHJlYWRvbmx5IHRocmVzaG9sZD86IG51bWJlcjtcblxuICAvKipcbiAgICogRWxlbWVudCB1c2VkIHRvIGV4cHJlc3MgdGhlIHF1YW50aXR5LiBUaGlzIGNhbiBiZSBhbiBlbGVtZW50IG9mIHRpbWUsIHN0b3JhZ2UgY2FwYWNpdHksIGFuZCB0aGUgbGlrZS5cbiAgICpcbiAgICogQHNjaGVtYSBNZXRyaWNUaHJlc2hvbGRWaWV3I1VuaXRzXG4gICAqL1xuICByZWFkb25seSB1bml0cz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnTWV0cmljVGhyZXNob2xkVmlldycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fTWV0cmljVGhyZXNob2xkVmlldyhcbiAgb2JqOiBNZXRyaWNUaHJlc2hvbGRWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgTWV0cmljTmFtZTogb2JqLm1ldHJpY05hbWUsXG4gICAgTW9kZTogb2JqLm1vZGUsXG4gICAgT3BlcmF0b3I6IG9iai5vcGVyYXRvcixcbiAgICBUaHJlc2hvbGQ6IG9iai50aHJlc2hvbGQsXG4gICAgVW5pdHM6IG9iai51bml0cyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTm90aWZpY2F0aW9uVmlldyB7XG4gIC8qKlxuICAgKiBTbGFjayBBUEkgdG9rZW4gb3IgQm90IHRva2VuIHRoYXQgTW9uZ29EQiBDbG91ZCBuZWVkcyB0byBzZW5kIGFsZXJ0IG5vdGlmaWNhdGlvbnMgdmlhIFNsYWNrLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlNMQUNLXCInLiBJZiB0aGUgdG9rZW4gbGF0ZXIgYmVjb21lcyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHNlbmRzIGFuIGVtYWlsIHRvIHRoZSBwcm9qZWN0IG93bmVycy4gSWYgdGhlIHRva2VuIHJlbWFpbnMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCByZW1vdmVzIHRoZSB0b2tlbi5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0FwaVRva2VuXG4gICAqL1xuICByZWFkb25seSBhcGlUb2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgU2xhY2sgY2hhbm5lbCB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIGFsZXJ0IG5vdGlmaWNhdGlvbnMuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiU0xBQ0tcIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNDaGFubmVsTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgY2hhbm5lbE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGFkb2cgQVBJIEtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIERhdGFkb2cuIFlvdSBjYW4gZmluZCB0aGlzIEFQSSBrZXkgaW4gdGhlIERhdGFkb2cgZGFzaGJvYXJkLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIkRBVEFET0dcIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNEYXRhZG9nQXBpS2V5XG4gICAqL1xuICByZWFkb25seSBkYXRhZG9nQXBpS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRhZG9nIHJlZ2lvbiB0aGF0IGluZGljYXRlcyB3aGljaCBBUEkgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHRvIHVzZS4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJEQVRBRE9HXCInLlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjRGF0YWRvZ1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWRvZ1JlZ2lvbj86IE5vdGlmaWNhdGlvblZpZXdEYXRhZG9nUmVnaW9uO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgbWludXRlcyB0aGF0IE1vbmdvREIgQ2xvdWQgd2FpdHMgYWZ0ZXIgZGV0ZWN0aW5nIGFuIGFsZXJ0IGNvbmRpdGlvbiBiZWZvcmUgaXQgc2VuZHMgb3V0IHRoZSBmaXJzdCBub3RpZmljYXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNEZWxheU1pblxuICAgKi9cbiAgcmVhZG9ubHkgZGVsYXlNaW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEVtYWlsIGFkZHJlc3MgdG8gd2hpY2ggTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydCBub3RpZmljYXRpb25zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIkVNQUlMXCInLiBZb3UgZG9uJ3QgbmVlZCB0byBzZXQgdGhpcyB2YWx1ZSB0byBzZW5kIGVtYWlscyB0byBpbmRpdmlkdWFsIG9yIGdyb3VwcyBvZiBNb25nb0RCIENsb3VkIHVzZXJzIGluY2x1ZGluZzpcbiAgICpcbiAgICogLSBzcGVjaWZpYyBNb25nb0RCIENsb3VkIHVzZXJzICgnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlVTRVJcIicpXG4gICAqIC0gTW9uZ29EQiBDbG91ZCB1c2VycyB3aXRoIHNwZWNpZmljIHByb2plY3Qgcm9sZXMgKCdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiR1JPVVBcIicpXG4gICAqIC0gTW9uZ29EQiBDbG91ZCB1c2VycyB3aXRoIHNwZWNpZmljIG9yZ2FuaXphdGlvbiByb2xlcyAoJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJPUkdcIicpXG4gICAqIC0gTW9uZ29EQiBDbG91ZCB0ZWFtcyAoJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJURUFNXCInKVxuICAgKlxuICAgKiBUbyBzZW5kIGVtYWlscyB0byBvbmUgTW9uZ29EQiBDbG91ZCB1c2VyIG9yIGdyb3VwaW5nIG9mIHVzZXJzLCBzZXQgdGhlICoqbm90aWZpY2F0aW9ucy5lbWFpbEVuYWJsZWQqKiBwYXJhbWV0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNFbWFpbEFkZHJlc3NcbiAgICovXG4gIHJlYWRvbmx5IGVtYWlsQWRkcmVzcz86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIE1vbmdvREIgQ2xvdWQgc2hvdWxkIHNlbmQgZW1haWwgbm90aWZpY2F0aW9ucy4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gb25lIG9mIHRoZSBmb2xsb3dpbmcgdmFsdWVzIGhhdmUgYmVlbiBzZXQ6XG4gICAqXG4gICAqIC0gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJPUkdcIidcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIkdST1VQXCInXG4gICAqIC0gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJVU0VSXCInXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNFbWFpbEVuYWJsZWRcbiAgICovXG4gIHJlYWRvbmx5IGVtYWlsRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZsb3dkb2NrIGZsb3cgbmFtZSB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIGFsZXJ0IG5vdGlmaWNhdGlvbnMuIFRoaXMgbmFtZSBhcHBlYXJzIGFmdGVyIHRoZSBvcmdhbml6YXRpb24gbmFtZSBpbiB0aGUgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHBhdGg6ICd3d3cuZmxvd2RvY2suY29tL2FwcC88b3JnYW5pemF0aW9uLW5hbWU+LzxmbG93LW5hbWU+Jy4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJGTE9XRE9DS1wiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0Zsb3dOYW1lXG4gICAqL1xuICByZWFkb25seSBmbG93TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRmxvd2RvY2sgQVBJIHRva2VuIHRoYXQgTW9uZ29EQiBDbG91ZCBuZWVkcyB0byBzZW5kIGFsZXJ0IG5vdGlmaWNhdGlvbnMgdG8gRmxvd2RvY2suIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiRkxPV0RPQ0tcIicuIElmIHRoZSB0b2tlbiBsYXRlciBiZWNvbWVzIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYW4gZW1haWwgdG8gdGhlIHByb2plY3Qgb3duZXJzLiBJZiB0aGUgdG9rZW4gcmVtYWlucyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHJlbW92ZXMgdGhlIHRva2VuLlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjRmxvd2RvY2tBcGlUb2tlblxuICAgKi9cbiAgcmVhZG9ubHkgZmxvd2RvY2tBcGlUb2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogTnVtYmVyIG9mIG1pbnV0ZXMgdG8gd2FpdCBiZXR3ZWVuIHN1Y2Nlc3NpdmUgbm90aWZpY2F0aW9ucy4gTW9uZ29EQiBDbG91ZCBzZW5kcyBub3RpZmljYXRpb25zIHVudGlsIHNvbWVvbmUgYWNrbm93bGVkZ2VzIHRoZSB1bmFja25vd2xlZGdlZCBhbGVydC5cbiAgICpcbiAgICogUGFnZXJEdXR5LCBWaWN0b3JPcHMsIGFuZCBPcHNHZW5pZSBub3RpZmljYXRpb25zIGRvbid0IHJldHVybiB0aGlzIGVsZW1lbnQuIENvbmZpZ3VyZSBhbmQgbWFuYWdlIHRoZSBub3RpZmljYXRpb24gaW50ZXJ2YWwgd2l0aGluIGVhY2ggb2YgdGhvc2Ugc2VydmljZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNJbnRlcnZhbE1pblxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZXJ2YWxNaW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1pY3Jvc29mdCBUZWFtcyBXZWJob29rIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvciAoVVJMKSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCB0aGlzIG5vdGlmaWNhdGlvbiB2aWEgTWljcm9zb2Z0IFRlYW1zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk1JQ1JPU09GVF9URUFNU1wiJy4gSWYgdGhlIFVSTCBsYXRlciBiZWNvbWVzIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYW4gZW1haWwgdG8gdGhlIHByb2plY3Qgb3duZXJzLiBJZiB0aGUga2V5IHJlbWFpbnMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCByZW1vdmVzIGl0LlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjTWljcm9zb2Z0VGVhbXNXZWJob29rVXJsXG4gICAqL1xuICByZWFkb25seSBtaWNyb3NvZnRUZWFtc1dlYmhvb2tVcmw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1vYmlsZSBwaG9uZSBudW1iZXIgdG8gd2hpY2ggTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydCBub3RpZmljYXRpb25zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlNNU1wiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I01vYmlsZU51bWJlclxuICAgKi9cbiAgcmVhZG9ubHkgbW9iaWxlTnVtYmVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIaXBDaGF0IEFQSSB0b2tlbiB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIEhpcENoYXQuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiSElQX0NIQVRcIidcIi4gSWYgdGhlIHRva2VuIGxhdGVyIGJlY29tZXMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCBzZW5kcyBhbiBlbWFpbCB0byB0aGUgcHJvamVjdCBvd25lcnMuIElmIHRoZSB0b2tlbiByZW1haW5zIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgcmVtb3ZlcyBpdC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I05vdGlmaWNhdGlvblRva2VuXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25Ub2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogQVBJIEtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCB0aGlzIG5vdGlmaWNhdGlvbiB2aWEgT3BzZ2VuaWUuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiT1BTX0dFTklFXCInLiBJZiB0aGUga2V5IGxhdGVyIGJlY29tZXMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCBzZW5kcyBhbiBlbWFpbCB0byB0aGUgcHJvamVjdCBvd25lcnMuIElmIHRoZSBrZXkgcmVtYWlucyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHJlbW92ZXMgaXQuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNPcHNHZW5pZUFwaUtleVxuICAgKi9cbiAgcmVhZG9ubHkgb3BzR2VuaWVBcGlLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wc2dlbmllIHJlZ2lvbiB0aGF0IGluZGljYXRlcyB3aGljaCBBUEkgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHRvIHVzZS5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I09wc0dlbmllUmVnaW9uXG4gICAqL1xuICByZWFkb25seSBvcHNHZW5pZVJlZ2lvbj86IE5vdGlmaWNhdGlvblZpZXdPcHNHZW5pZVJlZ2lvbjtcblxuICAvKipcbiAgICogRmxvd2RvY2sgb3JnYW5pemF0aW9uIG5hbWUgdG8gd2hpY2ggTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydCBub3RpZmljYXRpb25zLiBUaGlzIG5hbWUgYXBwZWFycyBhZnRlciAnd3d3LmZsb3dkb2NrLmNvbS9hcHAvJyBpbiB0aGUgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHBhdGguIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiRkxPV0RPQ0tcIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNPcmdOYW1lXG4gICAqL1xuICByZWFkb25seSBvcmdOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIG9uZSBvciBtb3JlIG9yZ2FuaXphdGlvbiBvciBwcm9qZWN0IHJvbGVzIHRoYXQgcmVjZWl2ZSB0aGUgY29uZmlndXJlZCBhbGVydC4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJHUk9VUFwiJyBvciAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk9SR1wiJy4gSWYgeW91IGluY2x1ZGUgdGhpcyBwYXJhbWV0ZXIsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYWxlcnRzIG9ubHkgdG8gdXNlcnMgYXNzaWduZWQgdGhlIHJvbGVzIHlvdSBzcGVjaWZ5IGluIHRoZSBhcnJheS4gSWYgeW91IG9taXQgdGhpcyBwYXJhbWV0ZXIsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYWxlcnRzIHRvIHVzZXJzIGFzc2lnbmVkIGFueSByb2xlLlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjUm9sZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVzPzogTm90aWZpY2F0aW9uVmlld1JvbGVzW107XG5cbiAgLyoqXG4gICAqIEhpcENoYXQgQVBJIHJvb20gbmFtZSB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIGFsZXJ0IG5vdGlmaWNhdGlvbnMuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiSElQX0NIQVRcIidcIi5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1Jvb21OYW1lXG4gICAqL1xuICByZWFkb25seSByb29tTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogUGFnZXJEdXR5IHNlcnZpY2Uga2V5IHRoYXQgTW9uZ29EQiBDbG91ZCBuZWVkcyB0byBzZW5kIG5vdGlmaWNhdGlvbnMgdmlhIFBhZ2VyRHV0eS4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJQQUdFUl9EVVRZXCInLiBJZiB0aGUga2V5IGxhdGVyIGJlY29tZXMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCBzZW5kcyBhbiBlbWFpbCB0byB0aGUgcHJvamVjdCBvd25lcnMuIElmIHRoZSBrZXkgcmVtYWlucyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHJlbW92ZXMgaXQuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNTZXJ2aWNlS2V5XG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWdyZWUgb2Ygc2VyaW91c25lc3MgZ2l2ZW4gdG8gdGhpcyBub3RpZmljYXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNTZXZlcml0eVxuICAgKi9cbiAgcmVhZG9ubHkgc2V2ZXJpdHk/OiBOb3RpZmljYXRpb25WaWV3U2V2ZXJpdHk7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBNb25nb0RCIENsb3VkIHNob3VsZCBzZW5kIHRleHQgbWVzc2FnZSBub3RpZmljYXRpb25zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXMgaGF2ZSBiZWVuIHNldDpcbiAgICpcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk9SR1wiJ1xuICAgKiAtICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiR1JPVVBcIidcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlVTRVJcIidcbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1Ntc0VuYWJsZWRcbiAgICovXG4gIHJlYWRvbmx5IHNtc0VuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyBvbmUgTW9uZ29EQiBDbG91ZCB0ZWFtLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlRFQU1cIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNUZWFtSWRcbiAgICovXG4gIHJlYWRvbmx5IHRlYW1JZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgTW9uZ29EQiBDbG91ZCB0ZWFtIHRoYXQgcmVjZWl2ZXMgdGhpcyBub3RpZmljYXRpb24uIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiVEVBTVwiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1RlYW1OYW1lXG4gICAqL1xuICByZWFkb25seSB0ZWFtTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBkaXNwbGF5cyB0aGUgYWxlcnQgbm90aWZpY2F0aW9uIHR5cGUuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNUeXBlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZU5hbWU/OiBOb3RpZmljYXRpb25WaWV3VHlwZU5hbWU7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgQ2xvdWQgdXNlcm5hbWUgb2YgdGhlIHBlcnNvbiB0byB3aG9tIE1vbmdvREIgQ2xvdWQgc2VuZHMgbm90aWZpY2F0aW9ucy4gU3BlY2lmeSBvbmx5IE1vbmdvREIgQ2xvdWQgdXNlcnMgd2hvIGJlbG9uZyB0byB0aGUgcHJvamVjdCB0aGF0IG93bnMgdGhlIGFsZXJ0IGNvbmZpZ3VyYXRpb24uIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiVVNFUlwiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1VzZXJuYW1lXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQVBJIGtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIFNwbHVuayBPbi1DYWxsLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlZJQ1RPUl9PUFNcIicuIElmIHRoZSBrZXkgbGF0ZXIgYmVjb21lcyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHNlbmRzIGFuIGVtYWlsIHRvIHRoZSBwcm9qZWN0IG93bmVycy4gSWYgdGhlIGtleSByZW1haW5zIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgcmVtb3ZlcyBpdC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1ZpY3Rvck9wc0FwaUtleVxuICAgKi9cbiAgcmVhZG9ubHkgdmljdG9yT3BzQXBpS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSb3V0aW5nIGtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIFNwbHVuayBPbi1DYWxsLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlZJQ1RPUl9PUFNcIicuIElmIHRoZSBrZXkgbGF0ZXIgYmVjb21lcyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHNlbmRzIGFuIGVtYWlsIHRvIHRoZSBwcm9qZWN0IG93bmVycy4gSWYgdGhlIGtleSByZW1haW5zIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgcmVtb3ZlcyBpdC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1ZpY3Rvck9wc1JvdXRpbmdLZXlcbiAgICovXG4gIHJlYWRvbmx5IHZpY3Rvck9wc1JvdXRpbmdLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIG9wdGlvbmFsIGZpZWxkIGZvciB5b3VyIHdlYmhvb2sgc2VjcmV0LlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjV2ViaG9va1NlY3JldFxuICAgKi9cbiAgcmVhZG9ubHkgd2ViaG9va1NlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogWW91ciB3ZWJob29rIFVSTC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1dlYmhvb2tVcmxcbiAgICovXG4gIHJlYWRvbmx5IHdlYmhvb2tVcmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ05vdGlmaWNhdGlvblZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX05vdGlmaWNhdGlvblZpZXcoXG4gIG9iajogTm90aWZpY2F0aW9uVmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEFwaVRva2VuOiBvYmouYXBpVG9rZW4sXG4gICAgQ2hhbm5lbE5hbWU6IG9iai5jaGFubmVsTmFtZSxcbiAgICBEYXRhZG9nQXBpS2V5OiBvYmouZGF0YWRvZ0FwaUtleSxcbiAgICBEYXRhZG9nUmVnaW9uOiBvYmouZGF0YWRvZ1JlZ2lvbixcbiAgICBEZWxheU1pbjogb2JqLmRlbGF5TWluLFxuICAgIEVtYWlsQWRkcmVzczogb2JqLmVtYWlsQWRkcmVzcyxcbiAgICBFbWFpbEVuYWJsZWQ6IG9iai5lbWFpbEVuYWJsZWQsXG4gICAgRmxvd05hbWU6IG9iai5mbG93TmFtZSxcbiAgICBGbG93ZG9ja0FwaVRva2VuOiBvYmouZmxvd2RvY2tBcGlUb2tlbixcbiAgICBJbnRlcnZhbE1pbjogb2JqLmludGVydmFsTWluLFxuICAgIE1pY3Jvc29mdFRlYW1zV2ViaG9va1VybDogb2JqLm1pY3Jvc29mdFRlYW1zV2ViaG9va1VybCxcbiAgICBNb2JpbGVOdW1iZXI6IG9iai5tb2JpbGVOdW1iZXIsXG4gICAgTm90aWZpY2F0aW9uVG9rZW46IG9iai5ub3RpZmljYXRpb25Ub2tlbixcbiAgICBPcHNHZW5pZUFwaUtleTogb2JqLm9wc0dlbmllQXBpS2V5LFxuICAgIE9wc0dlbmllUmVnaW9uOiBvYmoub3BzR2VuaWVSZWdpb24sXG4gICAgT3JnTmFtZTogb2JqLm9yZ05hbWUsXG4gICAgUm9sZXM6IG9iai5yb2xlcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBSb29tTmFtZTogb2JqLnJvb21OYW1lLFxuICAgIFNlcnZpY2VLZXk6IG9iai5zZXJ2aWNlS2V5LFxuICAgIFNldmVyaXR5OiBvYmouc2V2ZXJpdHksXG4gICAgU21zRW5hYmxlZDogb2JqLnNtc0VuYWJsZWQsXG4gICAgVGVhbUlkOiBvYmoudGVhbUlkLFxuICAgIFRlYW1OYW1lOiBvYmoudGVhbU5hbWUsXG4gICAgVHlwZU5hbWU6IG9iai50eXBlTmFtZSxcbiAgICBVc2VybmFtZTogb2JqLnVzZXJuYW1lLFxuICAgIFZpY3Rvck9wc0FwaUtleTogb2JqLnZpY3Rvck9wc0FwaUtleSxcbiAgICBWaWN0b3JPcHNSb3V0aW5nS2V5OiBvYmoudmljdG9yT3BzUm91dGluZ0tleSxcbiAgICBXZWJob29rU2VjcmV0OiBvYmoud2ViaG9va1NlY3JldCxcbiAgICBXZWJob29rVXJsOiBvYmoud2ViaG9va1VybCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBJbnRlZ2VyVGhyZXNob2xkVmlld1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEludGVnZXJUaHJlc2hvbGRWaWV3IHtcbiAgLyoqXG4gICAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gYXBwbHkgd2hlbiBjaGVja2luZyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUuXG4gICAqXG4gICAqIEBzY2hlbWEgSW50ZWdlclRocmVzaG9sZFZpZXcjT3BlcmF0b3JcbiAgICovXG4gIHJlYWRvbmx5IG9wZXJhdG9yPzogSW50ZWdlclRocmVzaG9sZFZpZXdPcGVyYXRvcjtcblxuICAvKipcbiAgICogVmFsdWUgb2YgbWV0cmljIHRoYXQsIHdoZW4gZXhjZWVkZWQsIHRyaWdnZXJzIGFuIGFsZXJ0LlxuICAgKlxuICAgKiBAc2NoZW1hIEludGVnZXJUaHJlc2hvbGRWaWV3I1RocmVzaG9sZFxuICAgKi9cbiAgcmVhZG9ubHkgdGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBFbGVtZW50IHVzZWQgdG8gZXhwcmVzcyB0aGUgcXVhbnRpdHkuIFRoaXMgY2FuIGJlIGFuIGVsZW1lbnQgb2YgdGltZSwgc3RvcmFnZSBjYXBhY2l0eSwgYW5kIHRoZSBsaWtlLlxuICAgKlxuICAgKiBAc2NoZW1hIEludGVnZXJUaHJlc2hvbGRWaWV3I1VuaXRzXG4gICAqL1xuICByZWFkb25seSB1bml0cz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnSW50ZWdlclRocmVzaG9sZFZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0ludGVnZXJUaHJlc2hvbGRWaWV3KFxuICBvYmo6IEludGVnZXJUaHJlc2hvbGRWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgT3BlcmF0b3I6IG9iai5vcGVyYXRvcixcbiAgICBUaHJlc2hvbGQ6IG9iai50aHJlc2hvbGQsXG4gICAgVW5pdHM6IG9iai51bml0cyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogTmFtZSBvZiB0aGUgcGFyYW1ldGVyIGluIHRoZSB0YXJnZXQgb2JqZWN0IHRoYXQgTW9uZ29EQiBDbG91ZCBjaGVja3MuIFRoZSBwYXJhbWV0ZXIgbXVzdCBtYXRjaCBhbGwgcnVsZXMgZm9yIE1vbmdvREIgQ2xvdWQgdG8gY2hlY2sgZm9yIGFsZXJ0IGNvbmZpZ3VyYXRpb25zLlxuICpcbiAqIEBzY2hlbWEgTWF0Y2hlckZpZWxkTmFtZVxuICovXG5leHBvcnQgZW51bSBNYXRjaGVyRmllbGROYW1lIHtcbiAgLyoqIENMVVNURVJfTkFNRSAqL1xuICBDTFVTVEVSX05BTUUgPSBcIkNMVVNURVJfTkFNRVwiLFxuICAvKiogSE9TVE5BTUUgKi9cbiAgSE9TVE5BTUUgPSBcIkhPU1ROQU1FXCIsXG4gIC8qKiBIT1NUTkFNRV9BTkRfUE9SVCAqL1xuICBIT1NUTkFNRV9BTkRfUE9SVCA9IFwiSE9TVE5BTUVfQU5EX1BPUlRcIixcbiAgLyoqIFBPUlQgKi9cbiAgUE9SVCA9IFwiUE9SVFwiLFxuICAvKiogUkVQTElDQV9TRVRfTkFNRSAqL1xuICBSRVBMSUNBX1NFVF9OQU1FID0gXCJSRVBMSUNBX1NFVF9OQU1FXCIsXG4gIC8qKiBTSEFSRF9OQU1FICovXG4gIFNIQVJEX05BTUUgPSBcIlNIQVJEX05BTUVcIixcbiAgLyoqIFRZUEVfTkFNRSAqL1xuICBUWVBFX05BTUUgPSBcIlRZUEVfTkFNRVwiLFxuICAvKiogQVBQTElDQVRJT05fSUQgKi9cbiAgQVBQTElDQVRJT05fSUQgPSBcIkFQUExJQ0FUSU9OX0lEXCIsXG4gIC8qKiBJTlNUQU5DRV9OQU1FICovXG4gIElOU1RBTkNFX05BTUUgPSBcIklOU1RBTkNFX05BTUVcIixcbiAgLyoqIFBST0NFU1NPUl9OQU1FICovXG4gIFBST0NFU1NPUl9OQU1FID0gXCJQUk9DRVNTT1JfTkFNRVwiLFxufVxuXG4vKipcbiAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gYXBwbHkgd2hlbiBjaGVja2luZyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUgYWdhaW5zdCAqKm1hdGNoZXJbbl0udmFsdWUqKi5cbiAqXG4gKiBAc2NoZW1hIE1hdGNoZXJPcGVyYXRvclxuICovXG5leHBvcnQgZW51bSBNYXRjaGVyT3BlcmF0b3Ige1xuICAvKiogRVFVQUxTICovXG4gIEVRVUFMUyA9IFwiRVFVQUxTXCIsXG4gIC8qKiBDT05UQUlOUyAqL1xuICBDT05UQUlOUyA9IFwiQ09OVEFJTlNcIixcbiAgLyoqIFNUQVJUU19XSVRIICovXG4gIFNUQVJUU19XSVRIID0gXCJTVEFSVFNfV0lUSFwiLFxuICAvKiogRU5EU19XSVRIICovXG4gIEVORFNfV0lUSCA9IFwiRU5EU19XSVRIXCIsXG4gIC8qKiBOT1RfRVFVQUxTICovXG4gIE5PVF9FUVVBTFMgPSBcIk5PVF9FUVVBTFNcIixcbiAgLyoqIE5PVF9DT05UQUlOUyAqL1xuICBOT1RfQ09OVEFJTlMgPSBcIk5PVF9DT05UQUlOU1wiLFxuICAvKiogUkVHRVggKi9cbiAgUkVHRVggPSBcIlJFR0VYXCIsXG59XG5cbi8qKlxuICogTW9uZ29EQiBDbG91ZCBjb21wdXRlcyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUgYXMgYW4gYXZlcmFnZS5cbiAqXG4gKiBAc2NoZW1hIE1ldHJpY1RocmVzaG9sZFZpZXdNb2RlXG4gKi9cbmV4cG9ydCBlbnVtIE1ldHJpY1RocmVzaG9sZFZpZXdNb2RlIHtcbiAgLyoqIEFWRVJBR0UgKi9cbiAgQVZFUkFHRSA9IFwiQVZFUkFHRVwiLFxufVxuXG4vKipcbiAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gYXBwbHkgd2hlbiBjaGVja2luZyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUuXG4gKlxuICogQHNjaGVtYSBNZXRyaWNUaHJlc2hvbGRWaWV3T3BlcmF0b3JcbiAqL1xuZXhwb3J0IGVudW0gTWV0cmljVGhyZXNob2xkVmlld09wZXJhdG9yIHtcbiAgLyoqIEdSRUFURVJfVEhBTiAqL1xuICBHUkVBVEVSX1RIQU4gPSBcIkdSRUFURVJfVEhBTlwiLFxuICAvKiogTEVTU19USEFOICovXG4gIExFU1NfVEhBTiA9IFwiTEVTU19USEFOXCIsXG59XG5cbi8qKlxuICogRGF0YWRvZyByZWdpb24gdGhhdCBpbmRpY2F0ZXMgd2hpY2ggQVBJIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvciAoVVJMKSB0byB1c2UuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiREFUQURPR1wiJy5cbiAqXG4gKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXdEYXRhZG9nUmVnaW9uXG4gKi9cbmV4cG9ydCBlbnVtIE5vdGlmaWNhdGlvblZpZXdEYXRhZG9nUmVnaW9uIHtcbiAgLyoqIEVVICovXG4gIEVVID0gXCJFVVwiLFxuICAvKiogVVMgKi9cbiAgVVMgPSBcIlVTXCIsXG59XG5cbi8qKlxuICogT3BzZ2VuaWUgcmVnaW9uIHRoYXQgaW5kaWNhdGVzIHdoaWNoIEFQSSBVbmlmb3JtIFJlc291cmNlIExvY2F0b3IgKFVSTCkgdG8gdXNlLlxuICpcbiAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlld09wc0dlbmllUmVnaW9uXG4gKi9cbmV4cG9ydCBlbnVtIE5vdGlmaWNhdGlvblZpZXdPcHNHZW5pZVJlZ2lvbiB7XG4gIC8qKiBFVSAqL1xuICBFVSA9IFwiRVVcIixcbiAgLyoqIFVTICovXG4gIFVTID0gXCJVU1wiLFxufVxuXG4vKipcbiAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlld1JvbGVzXG4gKi9cbmV4cG9ydCBlbnVtIE5vdGlmaWNhdGlvblZpZXdSb2xlcyB7XG4gIC8qKiBHUk9VUF9DTFVTVEVSX01BTkFHRVIgKi9cbiAgR1JPVVBfQ0xVU1RFUl9NQU5BR0VSID0gXCJHUk9VUF9DTFVTVEVSX01BTkFHRVJcIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX0FETUlOICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX0FETUlOID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTlwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWSA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEUgPSBcIkdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEVcIixcbiAgLyoqIEdST1VQX09XTkVSICovXG4gIEdST1VQX09XTkVSID0gXCJHUk9VUF9PV05FUlwiLFxuICAvKiogR1JPVVBfUkVBRF9XUklURSAqL1xuICBHUk9VUF9SRUFEX1dSSVRFID0gXCJHUk9VUF9SRUFEX1dSSVRFXCIsXG4gIC8qKiBPUkdfT1dORVIgKi9cbiAgT1JHX09XTkVSID0gXCJPUkdfT1dORVJcIixcbiAgLyoqIE9SR19NRU1CRVIgKi9cbiAgT1JHX01FTUJFUiA9IFwiT1JHX01FTUJFUlwiLFxuICAvKiogT1JHX0dST1VQX0NSRUFUT1IgKi9cbiAgT1JHX0dST1VQX0NSRUFUT1IgPSBcIk9SR19HUk9VUF9DUkVBVE9SXCIsXG4gIC8qKiBPUkdfQklMTElOR19BRE1JTiAqL1xuICBPUkdfQklMTElOR19BRE1JTiA9IFwiT1JHX0JJTExJTkdfQURNSU5cIixcbiAgLyoqIE9SR19SRUFEX09OTFkgKi9cbiAgT1JHX1JFQURfT05MWSA9IFwiT1JHX1JFQURfT05MWVwiLFxufVxuXG4vKipcbiAqIERlZ3JlZSBvZiBzZXJpb3VzbmVzcyBnaXZlbiB0byB0aGlzIG5vdGlmaWNhdGlvbi5cbiAqXG4gKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXdTZXZlcml0eVxuICovXG5leHBvcnQgZW51bSBOb3RpZmljYXRpb25WaWV3U2V2ZXJpdHkge1xuICAvKiogQ1JJVElDQUwgKi9cbiAgQ1JJVElDQUwgPSBcIkNSSVRJQ0FMXCIsXG4gIC8qKiBFUlJPUiAqL1xuICBFUlJPUiA9IFwiRVJST1JcIixcbiAgLyoqIFdBUk5JTkcgKi9cbiAgV0FSTklORyA9IFwiV0FSTklOR1wiLFxufVxuXG4vKipcbiAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgZGlzcGxheXMgdGhlIGFsZXJ0IG5vdGlmaWNhdGlvbiB0eXBlLlxuICpcbiAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlld1R5cGVOYW1lXG4gKi9cbmV4cG9ydCBlbnVtIE5vdGlmaWNhdGlvblZpZXdUeXBlTmFtZSB7XG4gIC8qKiBEQVRBRE9HICovXG4gIERBVEFET0cgPSBcIkRBVEFET0dcIixcbiAgLyoqIEVNQUlMICovXG4gIEVNQUlMID0gXCJFTUFJTFwiLFxuICAvKiogRkxPV0RPQ0sgKi9cbiAgRkxPV0RPQ0sgPSBcIkZMT1dET0NLXCIsXG4gIC8qKiBHUk9VUCAqL1xuICBHUk9VUCA9IFwiR1JPVVBcIixcbiAgLyoqIE1JQ1JPU09GVF9URUFNUyAqL1xuICBNSUNST1NPRlRfVEVBTVMgPSBcIk1JQ1JPU09GVF9URUFNU1wiLFxuICAvKiogT1BTX0dFTklFICovXG4gIE9QU19HRU5JRSA9IFwiT1BTX0dFTklFXCIsXG4gIC8qKiBPUkcgKi9cbiAgT1JHID0gXCJPUkdcIixcbiAgLyoqIFBBR0VSX0RVVFkgKi9cbiAgUEFHRVJfRFVUWSA9IFwiUEFHRVJfRFVUWVwiLFxuICAvKiogUFJPTUVUSEVVUyAqL1xuICBQUk9NRVRIRVVTID0gXCJQUk9NRVRIRVVTXCIsXG4gIC8qKiBTTEFDSyAqL1xuICBTTEFDSyA9IFwiU0xBQ0tcIixcbiAgLyoqIFNNUyAqL1xuICBTTVMgPSBcIlNNU1wiLFxuICAvKiogVEVBTSAqL1xuICBURUFNID0gXCJURUFNXCIsXG4gIC8qKiBVU0VSICovXG4gIFVTRVIgPSBcIlVTRVJcIixcbiAgLyoqIFZJQ1RPUl9PUFMgKi9cbiAgVklDVE9SX09QUyA9IFwiVklDVE9SX09QU1wiLFxuICAvKiogV0VCSE9PSyAqL1xuICBXRUJIT09LID0gXCJXRUJIT09LXCIsXG59XG5cbi8qKlxuICogQ29tcGFyaXNvbiBvcGVyYXRvciB0byBhcHBseSB3aGVuIGNoZWNraW5nIHRoZSBjdXJyZW50IG1ldHJpYyB2YWx1ZS5cbiAqXG4gKiBAc2NoZW1hIEludGVnZXJUaHJlc2hvbGRWaWV3T3BlcmF0b3JcbiAqL1xuZXhwb3J0IGVudW0gSW50ZWdlclRocmVzaG9sZFZpZXdPcGVyYXRvciB7XG4gIC8qKiBHUkVBVEVSX1RIQU4gKi9cbiAgR1JFQVRFUl9USEFOID0gXCJHUkVBVEVSX1RIQU5cIixcbiAgLyoqIExFU1NfVEhBTiAqL1xuICBMRVNTX1RIQU4gPSBcIkxFU1NfVEhBTlwiLFxufVxuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb25gXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OkFsZXJ0Q29uZmlndXJhdGlvblxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuQWxlcnRDb25maWd1cmF0aW9uIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkFsZXJ0Q29uZmlndXJhdGlvblwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkFsZXJ0Q29uZmlndXJhdGlvbi5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkFsZXJ0Q29uZmlndXJhdGlvbi5FbmFibGVkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJFbmFibGVkOiBjZGsuSVJlc29sdmFibGU7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb24uVXBkYXRlZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyVXBkYXRlZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb25gLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5BbGVydENvbmZpZ3VyYXRpb24uQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRySWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJZFwiKSk7XG4gICAgdGhpcy5hdHRyRW5hYmxlZCA9IHRoaXMuZ2V0QXR0KFwiRW5hYmxlZFwiKTtcbiAgICB0aGlzLmF0dHJVcGRhdGVkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiVXBkYXRlZFwiKSk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2FsZXJ0LWNvbmZpZ3VyYXRpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBa0VuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixpQ0FBaUMsQ0FDL0MsR0FBMkM7SUFFM0MsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhO1FBQ2hDLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNyRCxlQUFlLEVBQUUsMEJBQTBCLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztRQUNoRSxhQUFhLEVBQUUsR0FBRyxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQ3JELFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtLQUN2QixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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QztRQUM5RCxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDOztBQXBESCxzREFxREM7OztBQXBEQzs7R0FFRztBQUNvQiw0Q0FBc0IsR0FDM0Msb0NBQW9DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMgYW5kIGVkaXRzIHRoZSBjb25kaXRpb25zIHRoYXQgdHJpZ2dlciBhbGVydHMgYW5kIGhvdyBNb25nb0RCIENsb3VkIG5vdGlmaWVzIHVzZXJzLiBUaGlzIGNvbGxlY3Rpb24gcmVtYWlucyB1bmRlciByZXZpc2lvbiBhbmQgbWF5IGNoYW5nZS4gUmVmZXIgdG8gdGhlIGxlZ2FjeSBkb2N1bWVudGF0aW9uIGZvciB0aGlzIGNvbGxlY3Rpb24gaW4gdGhlIGZvbGxvd2luZyBsaW5rLlxuICpcbiAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogRXZlbnQgdHlwZSB0aGF0IHRyaWdnZXJzIGFuIGFsZXJ0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzI0V2ZW50VHlwZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGV2ZW50VHlwZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBydWxlcyB0aGF0IGRldGVybWluZSB3aGV0aGVyIE1vbmdvREIgQ2xvdWQgY2hlY2tzIGFuIG9iamVjdCBmb3IgdGhlIGFsZXJ0IGNvbmZpZ3VyYXRpb24uIFlvdSBjYW4gZmlsdGVyIHVzaW5nIHRoZSBtYXRjaGVycyBhcnJheSBpZiB0aGUgKipldmVudFR5cGVOYW1lKiogc3BlY2lmaWVzIGFuIGV2ZW50IGZvciBhIGhvc3QsIHJlcGxpY2Egc2V0LCBvciBzaGFyZGVkIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjTWF0Y2hlcnNcbiAgICovXG4gIHJlYWRvbmx5IG1hdGNoZXJzPzogTWF0Y2hlcltdO1xuXG4gIC8qKlxuICAgKiBUaHJlc2hvbGQgZm9yIHRoZSBtZXRyaWMgdGhhdCwgd2hlbiBleGNlZWRlZCwgdHJpZ2dlcnMgYW4gYWxlcnQuIFRoZSByZXNvdXJjZSByZXR1cm5zIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wiZXZlbnRUeXBlTmFtZVwiIDogXCJPVVRTSURFX01FVFJJQ19USFJFU0hPTERcIicuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjTWV0cmljVGhyZXNob2xkXG4gICAqL1xuICByZWFkb25seSBtZXRyaWNUaHJlc2hvbGQ/OiBNZXRyaWNUaHJlc2hvbGRWaWV3O1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIHRhcmdldHMgdGhhdCBNb25nb0RCIENsb3VkIHNlbmRzIG5vdGlmaWNhdGlvbnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjTm90aWZpY2F0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgbm90aWZpY2F0aW9ucz86IE5vdGlmaWNhdGlvblZpZXdbXTtcblxuICAvKipcbiAgICogTGltaXQgdGhhdCB0cmlnZ2VycyBhbiBhbGVydCB3aGVuIGV4Y2VlZGVkLiBUaGUgcmVzb3VyY2UgcmV0dXJucyB0aGlzIHBhcmFtZXRlciB3aGVuICoqZXZlbnRUeXBlTmFtZSoqIGhhcyBub3QgYmVlbiBzZXQgdG8gJ09VVFNJREVfTUVUUklDX1RIUkVTSE9MRCcuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQWxlcnRDb25maWd1cmF0aW9uUHJvcHMjVGhyZXNob2xkXG4gICAqL1xuICByZWFkb25seSB0aHJlc2hvbGQ/OiBJbnRlZ2VyVGhyZXNob2xkVmlldztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBkaXNwbGF5cyB0aGUgYWxlcnQgdHlwZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyNUeXBlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyhcbiAgb2JqOiBDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIEV2ZW50VHlwZU5hbWU6IG9iai5ldmVudFR5cGVOYW1lLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBNYXRjaGVyczogb2JqLm1hdGNoZXJzPy5tYXAoKHkpID0+IHRvSnNvbl9NYXRjaGVyKHkpKSxcbiAgICBNZXRyaWNUaHJlc2hvbGQ6IHRvSnNvbl9NZXRyaWNUaHJlc2hvbGRWaWV3KG9iai5tZXRyaWNUaHJlc2hvbGQpLFxuICAgIE5vdGlmaWNhdGlvbnM6IG9iai5ub3RpZmljYXRpb25zPy5tYXAoKHkpID0+IHRvSnNvbl9Ob3RpZmljYXRpb25WaWV3KHkpKSxcbiAgICBUaHJlc2hvbGQ6IHRvSnNvbl9JbnRlZ2VyVGhyZXNob2xkVmlldyhvYmoudGhyZXNob2xkKSxcbiAgICBUeXBlTmFtZTogb2JqLnR5cGVOYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIE1hdGNoZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBNYXRjaGVyIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHBhcmFtZXRlciBpbiB0aGUgdGFyZ2V0IG9iamVjdCB0aGF0IE1vbmdvREIgQ2xvdWQgY2hlY2tzLiBUaGUgcGFyYW1ldGVyIG11c3QgbWF0Y2ggYWxsIHJ1bGVzIGZvciBNb25nb0RCIENsb3VkIHRvIGNoZWNrIGZvciBhbGVydCBjb25maWd1cmF0aW9ucy5cbiAgICpcbiAgICogQHNjaGVtYSBNYXRjaGVyI0ZpZWxkTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZmllbGROYW1lPzogTWF0Y2hlckZpZWxkTmFtZTtcblxuICAvKipcbiAgICogQ29tcGFyaXNvbiBvcGVyYXRvciB0byBhcHBseSB3aGVuIGNoZWNraW5nIHRoZSBjdXJyZW50IG1ldHJpYyB2YWx1ZSBhZ2FpbnN0ICoqbWF0Y2hlcltuXS52YWx1ZSoqLlxuICAgKlxuICAgKiBAc2NoZW1hIE1hdGNoZXIjT3BlcmF0b3JcbiAgICovXG4gIHJlYWRvbmx5IG9wZXJhdG9yPzogTWF0Y2hlck9wZXJhdG9yO1xuXG4gIC8qKlxuICAgKiBWYWx1ZSB0byBtYXRjaCBvciBleGNlZWQgdXNpbmcgdGhlIHNwZWNpZmllZCAqKm1hdGNoZXJzLm9wZXJhdG9yKiouXG4gICAqXG4gICAqIEBzY2hlbWEgTWF0Y2hlciNWYWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ01hdGNoZXInIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX01hdGNoZXIoXG4gIG9iajogTWF0Y2hlciB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEZpZWxkTmFtZTogb2JqLmZpZWxkTmFtZSxcbiAgICBPcGVyYXRvcjogb2JqLm9wZXJhdG9yLFxuICAgIFZhbHVlOiBvYmoudmFsdWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgTWV0cmljVGhyZXNob2xkVmlld1xuICovXG5leHBvcnQgaW50ZXJmYWNlIE1ldHJpY1RocmVzaG9sZFZpZXcge1xuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBtZXRyaWMgYWdhaW5zdCB3aGljaCBNb25nb0RCIENsb3VkIGNoZWNrcyB0aGUgY29uZmlndXJlZCAqKm1ldHJpY1RocmVzaG9sZC50aHJlc2hvbGQqKi5cbiAgICpcbiAgICogQHNjaGVtYSBNZXRyaWNUaHJlc2hvbGRWaWV3I01ldHJpY05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG1ldHJpY05hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgQ2xvdWQgY29tcHV0ZXMgdGhlIGN1cnJlbnQgbWV0cmljIHZhbHVlIGFzIGFuIGF2ZXJhZ2UuXG4gICAqXG4gICAqIEBzY2hlbWEgTWV0cmljVGhyZXNob2xkVmlldyNNb2RlXG4gICAqL1xuICByZWFkb25seSBtb2RlPzogTWV0cmljVGhyZXNob2xkVmlld01vZGU7XG5cbiAgLyoqXG4gICAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gYXBwbHkgd2hlbiBjaGVja2luZyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUuXG4gICAqXG4gICAqIEBzY2hlbWEgTWV0cmljVGhyZXNob2xkVmlldyNPcGVyYXRvclxuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0b3I/OiBNZXRyaWNUaHJlc2hvbGRWaWV3T3BlcmF0b3I7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIG1ldHJpYyB0aGF0LCB3aGVuIGV4Y2VlZGVkLCB0cmlnZ2VycyBhbiBhbGVydC5cbiAgICpcbiAgICogQHNjaGVtYSBNZXRyaWNUaHJlc2hvbGRWaWV3I1RocmVzaG9sZFxuICAgKi9cbiAgcmVhZG9ubHkgdGhyZXNob2xkPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBFbGVtZW50IHVzZWQgdG8gZXhwcmVzcyB0aGUgcXVhbnRpdHkuIFRoaXMgY2FuIGJlIGFuIGVsZW1lbnQgb2YgdGltZSwgc3RvcmFnZSBjYXBhY2l0eSwgYW5kIHRoZSBsaWtlLlxuICAgKlxuICAgKiBAc2NoZW1hIE1ldHJpY1RocmVzaG9sZFZpZXcjVW5pdHNcbiAgICovXG4gIHJlYWRvbmx5IHVuaXRzPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdNZXRyaWNUaHJlc2hvbGRWaWV3JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9NZXRyaWNUaHJlc2hvbGRWaWV3KFxuICBvYmo6IE1ldHJpY1RocmVzaG9sZFZpZXcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBNZXRyaWNOYW1lOiBvYmoubWV0cmljTmFtZSxcbiAgICBNb2RlOiBvYmoubW9kZSxcbiAgICBPcGVyYXRvcjogb2JqLm9wZXJhdG9yLFxuICAgIFRocmVzaG9sZDogb2JqLnRocmVzaG9sZCxcbiAgICBVbml0czogb2JqLnVuaXRzLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBOb3RpZmljYXRpb25WaWV3IHtcbiAgLyoqXG4gICAqIFNsYWNrIEFQSSB0b2tlbiBvciBCb3QgdG9rZW4gdGhhdCBNb25nb0RCIENsb3VkIG5lZWRzIHRvIHNlbmQgYWxlcnQgbm90aWZpY2F0aW9ucyB2aWEgU2xhY2suIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiU0xBQ0tcIicuIElmIHRoZSB0b2tlbiBsYXRlciBiZWNvbWVzIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYW4gZW1haWwgdG8gdGhlIHByb2plY3Qgb3duZXJzLiBJZiB0aGUgdG9rZW4gcmVtYWlucyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHJlbW92ZXMgdGhlIHRva2VuLlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjQXBpVG9rZW5cbiAgICovXG4gIHJlYWRvbmx5IGFwaVRva2VuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBTbGFjayBjaGFubmVsIHRvIHdoaWNoIE1vbmdvREIgQ2xvdWQgc2VuZHMgYWxlcnQgbm90aWZpY2F0aW9ucy4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJTTEFDS1wiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0NoYW5uZWxOYW1lXG4gICAqL1xuICByZWFkb25seSBjaGFubmVsTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGF0YWRvZyBBUEkgS2V5IHRoYXQgTW9uZ29EQiBDbG91ZCBuZWVkcyB0byBzZW5kIGFsZXJ0IG5vdGlmaWNhdGlvbnMgdG8gRGF0YWRvZy4gWW91IGNhbiBmaW5kIHRoaXMgQVBJIGtleSBpbiB0aGUgRGF0YWRvZyBkYXNoYm9hcmQuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiREFUQURPR1wiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0RhdGFkb2dBcGlLZXlcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFkb2dBcGlLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERhdGFkb2cgcmVnaW9uIHRoYXQgaW5kaWNhdGVzIHdoaWNoIEFQSSBVbmlmb3JtIFJlc291cmNlIExvY2F0b3IgKFVSTCkgdG8gdXNlLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIkRBVEFET0dcIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNEYXRhZG9nUmVnaW9uXG4gICAqL1xuICByZWFkb25seSBkYXRhZG9nUmVnaW9uPzogTm90aWZpY2F0aW9uVmlld0RhdGFkb2dSZWdpb247XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBtaW51dGVzIHRoYXQgTW9uZ29EQiBDbG91ZCB3YWl0cyBhZnRlciBkZXRlY3RpbmcgYW4gYWxlcnQgY29uZGl0aW9uIGJlZm9yZSBpdCBzZW5kcyBvdXQgdGhlIGZpcnN0IG5vdGlmaWNhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0RlbGF5TWluXG4gICAqL1xuICByZWFkb25seSBkZWxheU1pbj86IG51bWJlcjtcblxuICAvKipcbiAgICogRW1haWwgYWRkcmVzcyB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIGFsZXJ0IG5vdGlmaWNhdGlvbnMuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiRU1BSUxcIicuIFlvdSBkb24ndCBuZWVkIHRvIHNldCB0aGlzIHZhbHVlIHRvIHNlbmQgZW1haWxzIHRvIGluZGl2aWR1YWwgb3IgZ3JvdXBzIG9mIE1vbmdvREIgQ2xvdWQgdXNlcnMgaW5jbHVkaW5nOlxuICAgKlxuICAgKiAtIHNwZWNpZmljIE1vbmdvREIgQ2xvdWQgdXNlcnMgKCdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiVVNFUlwiJylcbiAgICogLSBNb25nb0RCIENsb3VkIHVzZXJzIHdpdGggc3BlY2lmaWMgcHJvamVjdCByb2xlcyAoJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJHUk9VUFwiJylcbiAgICogLSBNb25nb0RCIENsb3VkIHVzZXJzIHdpdGggc3BlY2lmaWMgb3JnYW5pemF0aW9uIHJvbGVzICgnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk9SR1wiJylcbiAgICogLSBNb25nb0RCIENsb3VkIHRlYW1zICgnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlRFQU1cIicpXG4gICAqXG4gICAqIFRvIHNlbmQgZW1haWxzIHRvIG9uZSBNb25nb0RCIENsb3VkIHVzZXIgb3IgZ3JvdXBpbmcgb2YgdXNlcnMsIHNldCB0aGUgKipub3RpZmljYXRpb25zLmVtYWlsRW5hYmxlZCoqIHBhcmFtZXRlci5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0VtYWlsQWRkcmVzc1xuICAgKi9cbiAgcmVhZG9ubHkgZW1haWxBZGRyZXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgTW9uZ29EQiBDbG91ZCBzaG91bGQgc2VuZCBlbWFpbCBub3RpZmljYXRpb25zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXMgaGF2ZSBiZWVuIHNldDpcbiAgICpcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk9SR1wiJ1xuICAgKiAtICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiR1JPVVBcIidcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlVTRVJcIidcbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I0VtYWlsRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZW1haWxFbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIG1pbnV0ZXMgdG8gd2FpdCBiZXR3ZWVuIHN1Y2Nlc3NpdmUgbm90aWZpY2F0aW9ucy4gTW9uZ29EQiBDbG91ZCBzZW5kcyBub3RpZmljYXRpb25zIHVudGlsIHNvbWVvbmUgYWNrbm93bGVkZ2VzIHRoZSB1bmFja25vd2xlZGdlZCBhbGVydC5cbiAgICpcbiAgICogUGFnZXJEdXR5LCBWaWN0b3JPcHMsIGFuZCBPcHNHZW5pZSBub3RpZmljYXRpb25zIGRvbid0IHJldHVybiB0aGlzIGVsZW1lbnQuIENvbmZpZ3VyZSBhbmQgbWFuYWdlIHRoZSBub3RpZmljYXRpb24gaW50ZXJ2YWwgd2l0aGluIGVhY2ggb2YgdGhvc2Ugc2VydmljZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNJbnRlcnZhbE1pblxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZXJ2YWxNaW4/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1pY3Jvc29mdCBUZWFtcyBXZWJob29rIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvciAoVVJMKSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCB0aGlzIG5vdGlmaWNhdGlvbiB2aWEgTWljcm9zb2Z0IFRlYW1zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk1JQ1JPU09GVF9URUFNU1wiJy4gSWYgdGhlIFVSTCBsYXRlciBiZWNvbWVzIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYW4gZW1haWwgdG8gdGhlIHByb2plY3Qgb3duZXJzLiBJZiB0aGUga2V5IHJlbWFpbnMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCByZW1vdmVzIGl0LlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjTWljcm9zb2Z0VGVhbXNXZWJob29rVXJsXG4gICAqL1xuICByZWFkb25seSBtaWNyb3NvZnRUZWFtc1dlYmhvb2tVcmw/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1vYmlsZSBwaG9uZSBudW1iZXIgdG8gd2hpY2ggTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydCBub3RpZmljYXRpb25zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlNNU1wiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I01vYmlsZU51bWJlclxuICAgKi9cbiAgcmVhZG9ubHkgbW9iaWxlTnVtYmVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIaXBDaGF0IEFQSSB0b2tlbiB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIEhpcENoYXQuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiSElQX0NIQVRcIidcIi4gSWYgdGhlIHRva2VuIGxhdGVyIGJlY29tZXMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCBzZW5kcyBhbiBlbWFpbCB0byB0aGUgcHJvamVjdCBvd25lcnMuIElmIHRoZSB0b2tlbiByZW1haW5zIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgcmVtb3ZlcyBpdC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I05vdGlmaWNhdGlvblRva2VuXG4gICAqL1xuICByZWFkb25seSBub3RpZmljYXRpb25Ub2tlbj86IHN0cmluZztcblxuICAvKipcbiAgICogQVBJIEtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCB0aGlzIG5vdGlmaWNhdGlvbiB2aWEgT3BzZ2VuaWUuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiT1BTX0dFTklFXCInLiBJZiB0aGUga2V5IGxhdGVyIGJlY29tZXMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCBzZW5kcyBhbiBlbWFpbCB0byB0aGUgcHJvamVjdCBvd25lcnMuIElmIHRoZSBrZXkgcmVtYWlucyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHJlbW92ZXMgaXQuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNPcHNHZW5pZUFwaUtleVxuICAgKi9cbiAgcmVhZG9ubHkgb3BzR2VuaWVBcGlLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wc2dlbmllIHJlZ2lvbiB0aGF0IGluZGljYXRlcyB3aGljaCBBUEkgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHRvIHVzZS5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I09wc0dlbmllUmVnaW9uXG4gICAqL1xuICByZWFkb25seSBvcHNHZW5pZVJlZ2lvbj86IE5vdGlmaWNhdGlvblZpZXdPcHNHZW5pZVJlZ2lvbjtcblxuICAvKipcbiAgICogRmxvd2RvY2sgb3JnYW5pemF0aW9uIG5hbWUgdG8gd2hpY2ggTW9uZ29EQiBDbG91ZCBzZW5kcyBhbGVydCBub3RpZmljYXRpb25zLiBUaGlzIG5hbWUgYXBwZWFycyBhZnRlciAnd3d3LmZsb3dkb2NrLmNvbS9hcHAvJyBpbiB0aGUgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHBhdGguIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiRkxPV0RPQ0tcIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNPcmdOYW1lXG4gICAqL1xuICByZWFkb25seSBvcmdOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIG9uZSBvciBtb3JlIG9yZ2FuaXphdGlvbiBvciBwcm9qZWN0IHJvbGVzIHRoYXQgcmVjZWl2ZSB0aGUgY29uZmlndXJlZCBhbGVydC4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJHUk9VUFwiJyBvciAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk9SR1wiJy4gSWYgeW91IGluY2x1ZGUgdGhpcyBwYXJhbWV0ZXIsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYWxlcnRzIG9ubHkgdG8gdXNlcnMgYXNzaWduZWQgdGhlIHJvbGVzIHlvdSBzcGVjaWZ5IGluIHRoZSBhcnJheS4gSWYgeW91IG9taXQgdGhpcyBwYXJhbWV0ZXIsIE1vbmdvREIgQ2xvdWQgc2VuZHMgYWxlcnRzIHRvIHVzZXJzIGFzc2lnbmVkIGFueSByb2xlLlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjUm9sZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVzPzogTm90aWZpY2F0aW9uVmlld1JvbGVzW107XG5cbiAgLyoqXG4gICAqIEhpcENoYXQgQVBJIHJvb20gbmFtZSB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIGFsZXJ0IG5vdGlmaWNhdGlvbnMuIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiSElQX0NIQVRcIidcIi5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1Jvb21OYW1lXG4gICAqL1xuICByZWFkb25seSByb29tTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogUGFnZXJEdXR5IHNlcnZpY2Uga2V5IHRoYXQgTW9uZ29EQiBDbG91ZCBuZWVkcyB0byBzZW5kIG5vdGlmaWNhdGlvbnMgdmlhIFBhZ2VyRHV0eS4gVGhlIHJlc291cmNlIHJlcXVpcmVzIHRoaXMgcGFyYW1ldGVyIHdoZW4gJ1wibm90aWZpY2F0aW9ucy50eXBlTmFtZVwiIDogXCJQQUdFUl9EVVRZXCInLiBJZiB0aGUga2V5IGxhdGVyIGJlY29tZXMgaW52YWxpZCwgTW9uZ29EQiBDbG91ZCBzZW5kcyBhbiBlbWFpbCB0byB0aGUgcHJvamVjdCBvd25lcnMuIElmIHRoZSBrZXkgcmVtYWlucyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHJlbW92ZXMgaXQuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNTZXJ2aWNlS2V5XG4gICAqL1xuICByZWFkb25seSBzZXJ2aWNlS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZWdyZWUgb2Ygc2VyaW91c25lc3MgZ2l2ZW4gdG8gdGhpcyBub3RpZmljYXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNTZXZlcml0eVxuICAgKi9cbiAgcmVhZG9ubHkgc2V2ZXJpdHk/OiBOb3RpZmljYXRpb25WaWV3U2V2ZXJpdHk7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBNb25nb0RCIENsb3VkIHNob3VsZCBzZW5kIHRleHQgbWVzc2FnZSBub3RpZmljYXRpb25zLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiBvbmUgb2YgdGhlIGZvbGxvd2luZyB2YWx1ZXMgaGF2ZSBiZWVuIHNldDpcbiAgICpcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIk9SR1wiJ1xuICAgKiAtICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiR1JPVVBcIidcbiAgICogLSAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlVTRVJcIidcbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1Ntc0VuYWJsZWRcbiAgICovXG4gIHJlYWRvbmx5IHNtc0VuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyBvbmUgTW9uZ29EQiBDbG91ZCB0ZWFtLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlRFQU1cIicuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNUZWFtSWRcbiAgICovXG4gIHJlYWRvbmx5IHRlYW1JZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgTW9uZ29EQiBDbG91ZCB0ZWFtIHRoYXQgcmVjZWl2ZXMgdGhpcyBub3RpZmljYXRpb24uIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiVEVBTVwiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1RlYW1OYW1lXG4gICAqL1xuICByZWFkb25seSB0ZWFtTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBkaXNwbGF5cyB0aGUgYWxlcnQgbm90aWZpY2F0aW9uIHR5cGUuXG4gICAqXG4gICAqIEBzY2hlbWEgTm90aWZpY2F0aW9uVmlldyNUeXBlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZU5hbWU/OiBOb3RpZmljYXRpb25WaWV3VHlwZU5hbWU7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgQ2xvdWQgdXNlcm5hbWUgb2YgdGhlIHBlcnNvbiB0byB3aG9tIE1vbmdvREIgQ2xvdWQgc2VuZHMgbm90aWZpY2F0aW9ucy4gU3BlY2lmeSBvbmx5IE1vbmdvREIgQ2xvdWQgdXNlcnMgd2hvIGJlbG9uZyB0byB0aGUgcHJvamVjdCB0aGF0IG93bnMgdGhlIGFsZXJ0IGNvbmZpZ3VyYXRpb24uIFRoZSByZXNvdXJjZSByZXF1aXJlcyB0aGlzIHBhcmFtZXRlciB3aGVuICdcIm5vdGlmaWNhdGlvbnMudHlwZU5hbWVcIiA6IFwiVVNFUlwiJy5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1VzZXJuYW1lXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQVBJIGtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIFNwbHVuayBPbi1DYWxsLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlZJQ1RPUl9PUFNcIicuIElmIHRoZSBrZXkgbGF0ZXIgYmVjb21lcyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHNlbmRzIGFuIGVtYWlsIHRvIHRoZSBwcm9qZWN0IG93bmVycy4gSWYgdGhlIGtleSByZW1haW5zIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgcmVtb3ZlcyBpdC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1ZpY3Rvck9wc0FwaUtleVxuICAgKi9cbiAgcmVhZG9ubHkgdmljdG9yT3BzQXBpS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSb3V0aW5nIGtleSB0aGF0IE1vbmdvREIgQ2xvdWQgbmVlZHMgdG8gc2VuZCBhbGVydCBub3RpZmljYXRpb25zIHRvIFNwbHVuayBPbi1DYWxsLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIlZJQ1RPUl9PUFNcIicuIElmIHRoZSBrZXkgbGF0ZXIgYmVjb21lcyBpbnZhbGlkLCBNb25nb0RCIENsb3VkIHNlbmRzIGFuIGVtYWlsIHRvIHRoZSBwcm9qZWN0IG93bmVycy4gSWYgdGhlIGtleSByZW1haW5zIGludmFsaWQsIE1vbmdvREIgQ2xvdWQgcmVtb3ZlcyBpdC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1ZpY3Rvck9wc1JvdXRpbmdLZXlcbiAgICovXG4gIHJlYWRvbmx5IHZpY3Rvck9wc1JvdXRpbmdLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIG9wdGlvbmFsIGZpZWxkIGZvciB5b3VyIHdlYmhvb2sgc2VjcmV0LlxuICAgKlxuICAgKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXcjV2ViaG9va1NlY3JldFxuICAgKi9cbiAgcmVhZG9ubHkgd2ViaG9va1NlY3JldD86IHN0cmluZztcblxuICAvKipcbiAgICogWW91ciB3ZWJob29rIFVSTC5cbiAgICpcbiAgICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3I1dlYmhvb2tVcmxcbiAgICovXG4gIHJlYWRvbmx5IHdlYmhvb2tVcmw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ05vdGlmaWNhdGlvblZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX05vdGlmaWNhdGlvblZpZXcoXG4gIG9iajogTm90aWZpY2F0aW9uVmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEFwaVRva2VuOiBvYmouYXBpVG9rZW4sXG4gICAgQ2hhbm5lbE5hbWU6IG9iai5jaGFubmVsTmFtZSxcbiAgICBEYXRhZG9nQXBpS2V5OiBvYmouZGF0YWRvZ0FwaUtleSxcbiAgICBEYXRhZG9nUmVnaW9uOiBvYmouZGF0YWRvZ1JlZ2lvbixcbiAgICBEZWxheU1pbjogb2JqLmRlbGF5TWluLFxuICAgIEVtYWlsQWRkcmVzczogb2JqLmVtYWlsQWRkcmVzcyxcbiAgICBFbWFpbEVuYWJsZWQ6IG9iai5lbWFpbEVuYWJsZWQsXG4gICAgSW50ZXJ2YWxNaW46IG9iai5pbnRlcnZhbE1pbixcbiAgICBNaWNyb3NvZnRUZWFtc1dlYmhvb2tVcmw6IG9iai5taWNyb3NvZnRUZWFtc1dlYmhvb2tVcmwsXG4gICAgTW9iaWxlTnVtYmVyOiBvYmoubW9iaWxlTnVtYmVyLFxuICAgIE5vdGlmaWNhdGlvblRva2VuOiBvYmoubm90aWZpY2F0aW9uVG9rZW4sXG4gICAgT3BzR2VuaWVBcGlLZXk6IG9iai5vcHNHZW5pZUFwaUtleSxcbiAgICBPcHNHZW5pZVJlZ2lvbjogb2JqLm9wc0dlbmllUmVnaW9uLFxuICAgIE9yZ05hbWU6IG9iai5vcmdOYW1lLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4geSksXG4gICAgUm9vbU5hbWU6IG9iai5yb29tTmFtZSxcbiAgICBTZXJ2aWNlS2V5OiBvYmouc2VydmljZUtleSxcbiAgICBTZXZlcml0eTogb2JqLnNldmVyaXR5LFxuICAgIFNtc0VuYWJsZWQ6IG9iai5zbXNFbmFibGVkLFxuICAgIFRlYW1JZDogb2JqLnRlYW1JZCxcbiAgICBUZWFtTmFtZTogb2JqLnRlYW1OYW1lLFxuICAgIFR5cGVOYW1lOiBvYmoudHlwZU5hbWUsXG4gICAgVXNlcm5hbWU6IG9iai51c2VybmFtZSxcbiAgICBWaWN0b3JPcHNBcGlLZXk6IG9iai52aWN0b3JPcHNBcGlLZXksXG4gICAgVmljdG9yT3BzUm91dGluZ0tleTogb2JqLnZpY3Rvck9wc1JvdXRpbmdLZXksXG4gICAgV2ViaG9va1NlY3JldDogb2JqLndlYmhvb2tTZWNyZXQsXG4gICAgV2ViaG9va1VybDogb2JqLndlYmhvb2tVcmwsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgSW50ZWdlclRocmVzaG9sZFZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJbnRlZ2VyVGhyZXNob2xkVmlldyB7XG4gIC8qKlxuICAgKiBDb21wYXJpc29uIG9wZXJhdG9yIHRvIGFwcGx5IHdoZW4gY2hlY2tpbmcgdGhlIGN1cnJlbnQgbWV0cmljIHZhbHVlLlxuICAgKlxuICAgKiBAc2NoZW1hIEludGVnZXJUaHJlc2hvbGRWaWV3I09wZXJhdG9yXG4gICAqL1xuICByZWFkb25seSBvcGVyYXRvcj86IEludGVnZXJUaHJlc2hvbGRWaWV3T3BlcmF0b3I7XG5cbiAgLyoqXG4gICAqIFZhbHVlIG9mIG1ldHJpYyB0aGF0LCB3aGVuIGV4Y2VlZGVkLCB0cmlnZ2VycyBhbiBhbGVydC5cbiAgICpcbiAgICogQHNjaGVtYSBJbnRlZ2VyVGhyZXNob2xkVmlldyNUaHJlc2hvbGRcbiAgICovXG4gIHJlYWRvbmx5IHRocmVzaG9sZD86IG51bWJlcjtcblxuICAvKipcbiAgICogRWxlbWVudCB1c2VkIHRvIGV4cHJlc3MgdGhlIHF1YW50aXR5LiBUaGlzIGNhbiBiZSBhbiBlbGVtZW50IG9mIHRpbWUsIHN0b3JhZ2UgY2FwYWNpdHksIGFuZCB0aGUgbGlrZS5cbiAgICpcbiAgICogQHNjaGVtYSBJbnRlZ2VyVGhyZXNob2xkVmlldyNVbml0c1xuICAgKi9cbiAgcmVhZG9ubHkgdW5pdHM/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0ludGVnZXJUaHJlc2hvbGRWaWV3JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9JbnRlZ2VyVGhyZXNob2xkVmlldyhcbiAgb2JqOiBJbnRlZ2VyVGhyZXNob2xkVmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE9wZXJhdG9yOiBvYmoub3BlcmF0b3IsXG4gICAgVGhyZXNob2xkOiBvYmoudGhyZXNob2xkLFxuICAgIFVuaXRzOiBvYmoudW5pdHMsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIE5hbWUgb2YgdGhlIHBhcmFtZXRlciBpbiB0aGUgdGFyZ2V0IG9iamVjdCB0aGF0IE1vbmdvREIgQ2xvdWQgY2hlY2tzLiBUaGUgcGFyYW1ldGVyIG11c3QgbWF0Y2ggYWxsIHJ1bGVzIGZvciBNb25nb0RCIENsb3VkIHRvIGNoZWNrIGZvciBhbGVydCBjb25maWd1cmF0aW9ucy5cbiAqXG4gKiBAc2NoZW1hIE1hdGNoZXJGaWVsZE5hbWVcbiAqL1xuZXhwb3J0IGVudW0gTWF0Y2hlckZpZWxkTmFtZSB7XG4gIC8qKiBDTFVTVEVSX05BTUUgKi9cbiAgQ0xVU1RFUl9OQU1FID0gXCJDTFVTVEVSX05BTUVcIixcbiAgLyoqIEhPU1ROQU1FICovXG4gIEhPU1ROQU1FID0gXCJIT1NUTkFNRVwiLFxuICAvKiogSE9TVE5BTUVfQU5EX1BPUlQgKi9cbiAgSE9TVE5BTUVfQU5EX1BPUlQgPSBcIkhPU1ROQU1FX0FORF9QT1JUXCIsXG4gIC8qKiBQT1JUICovXG4gIFBPUlQgPSBcIlBPUlRcIixcbiAgLyoqIFJFUExJQ0FfU0VUX05BTUUgKi9cbiAgUkVQTElDQV9TRVRfTkFNRSA9IFwiUkVQTElDQV9TRVRfTkFNRVwiLFxuICAvKiogU0hBUkRfTkFNRSAqL1xuICBTSEFSRF9OQU1FID0gXCJTSEFSRF9OQU1FXCIsXG4gIC8qKiBUWVBFX05BTUUgKi9cbiAgVFlQRV9OQU1FID0gXCJUWVBFX05BTUVcIixcbiAgLyoqIEFQUExJQ0FUSU9OX0lEICovXG4gIEFQUExJQ0FUSU9OX0lEID0gXCJBUFBMSUNBVElPTl9JRFwiLFxuICAvKiogSU5TVEFOQ0VfTkFNRSAqL1xuICBJTlNUQU5DRV9OQU1FID0gXCJJTlNUQU5DRV9OQU1FXCIsXG4gIC8qKiBQUk9DRVNTT1JfTkFNRSAqL1xuICBQUk9DRVNTT1JfTkFNRSA9IFwiUFJPQ0VTU09SX05BTUVcIixcbn1cblxuLyoqXG4gKiBDb21wYXJpc29uIG9wZXJhdG9yIHRvIGFwcGx5IHdoZW4gY2hlY2tpbmcgdGhlIGN1cnJlbnQgbWV0cmljIHZhbHVlIGFnYWluc3QgKiptYXRjaGVyW25dLnZhbHVlKiouXG4gKlxuICogQHNjaGVtYSBNYXRjaGVyT3BlcmF0b3JcbiAqL1xuZXhwb3J0IGVudW0gTWF0Y2hlck9wZXJhdG9yIHtcbiAgLyoqIEVRVUFMUyAqL1xuICBFUVVBTFMgPSBcIkVRVUFMU1wiLFxuICAvKiogQ09OVEFJTlMgKi9cbiAgQ09OVEFJTlMgPSBcIkNPTlRBSU5TXCIsXG4gIC8qKiBTVEFSVFNfV0lUSCAqL1xuICBTVEFSVFNfV0lUSCA9IFwiU1RBUlRTX1dJVEhcIixcbiAgLyoqIEVORFNfV0lUSCAqL1xuICBFTkRTX1dJVEggPSBcIkVORFNfV0lUSFwiLFxuICAvKiogTk9UX0VRVUFMUyAqL1xuICBOT1RfRVFVQUxTID0gXCJOT1RfRVFVQUxTXCIsXG4gIC8qKiBOT1RfQ09OVEFJTlMgKi9cbiAgTk9UX0NPTlRBSU5TID0gXCJOT1RfQ09OVEFJTlNcIixcbiAgLyoqIFJFR0VYICovXG4gIFJFR0VYID0gXCJSRUdFWFwiLFxufVxuXG4vKipcbiAqIE1vbmdvREIgQ2xvdWQgY29tcHV0ZXMgdGhlIGN1cnJlbnQgbWV0cmljIHZhbHVlIGFzIGFuIGF2ZXJhZ2UuXG4gKlxuICogQHNjaGVtYSBNZXRyaWNUaHJlc2hvbGRWaWV3TW9kZVxuICovXG5leHBvcnQgZW51bSBNZXRyaWNUaHJlc2hvbGRWaWV3TW9kZSB7XG4gIC8qKiBBVkVSQUdFICovXG4gIEFWRVJBR0UgPSBcIkFWRVJBR0VcIixcbn1cblxuLyoqXG4gKiBDb21wYXJpc29uIG9wZXJhdG9yIHRvIGFwcGx5IHdoZW4gY2hlY2tpbmcgdGhlIGN1cnJlbnQgbWV0cmljIHZhbHVlLlxuICpcbiAqIEBzY2hlbWEgTWV0cmljVGhyZXNob2xkVmlld09wZXJhdG9yXG4gKi9cbmV4cG9ydCBlbnVtIE1ldHJpY1RocmVzaG9sZFZpZXdPcGVyYXRvciB7XG4gIC8qKiBHUkVBVEVSX1RIQU4gKi9cbiAgR1JFQVRFUl9USEFOID0gXCJHUkVBVEVSX1RIQU5cIixcbiAgLyoqIExFU1NfVEhBTiAqL1xuICBMRVNTX1RIQU4gPSBcIkxFU1NfVEhBTlwiLFxufVxuXG4vKipcbiAqIERhdGFkb2cgcmVnaW9uIHRoYXQgaW5kaWNhdGVzIHdoaWNoIEFQSSBVbmlmb3JtIFJlc291cmNlIExvY2F0b3IgKFVSTCkgdG8gdXNlLiBUaGUgcmVzb3VyY2UgcmVxdWlyZXMgdGhpcyBwYXJhbWV0ZXIgd2hlbiAnXCJub3RpZmljYXRpb25zLnR5cGVOYW1lXCIgOiBcIkRBVEFET0dcIicuXG4gKlxuICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3RGF0YWRvZ1JlZ2lvblxuICovXG5leHBvcnQgZW51bSBOb3RpZmljYXRpb25WaWV3RGF0YWRvZ1JlZ2lvbiB7XG4gIC8qKiBFVSAqL1xuICBFVSA9IFwiRVVcIixcbiAgLyoqIFVTICovXG4gIFVTID0gXCJVU1wiLFxufVxuXG4vKipcbiAqIE9wc2dlbmllIHJlZ2lvbiB0aGF0IGluZGljYXRlcyB3aGljaCBBUEkgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHRvIHVzZS5cbiAqXG4gKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXdPcHNHZW5pZVJlZ2lvblxuICovXG5leHBvcnQgZW51bSBOb3RpZmljYXRpb25WaWV3T3BzR2VuaWVSZWdpb24ge1xuICAvKiogRVUgKi9cbiAgRVUgPSBcIkVVXCIsXG4gIC8qKiBVUyAqL1xuICBVUyA9IFwiVVNcIixcbn1cblxuLyoqXG4gKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXdSb2xlc1xuICovXG5leHBvcnQgZW51bSBOb3RpZmljYXRpb25WaWV3Um9sZXMge1xuICAvKiogR1JPVVBfQ0xVU1RFUl9NQU5BR0VSICovXG4gIEdST1VQX0NMVVNURVJfTUFOQUdFUiA9IFwiR1JPVVBfQ0xVU1RFUl9NQU5BR0VSXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTiAqL1xuICBHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTiA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfQURNSU5cIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWSAqL1xuICBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFkgPSBcIkdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWVwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURSAqL1xuICBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFXCIsXG4gIC8qKiBHUk9VUF9PV05FUiAqL1xuICBHUk9VUF9PV05FUiA9IFwiR1JPVVBfT1dORVJcIixcbiAgLyoqIEdST1VQX1JFQURfV1JJVEUgKi9cbiAgR1JPVVBfUkVBRF9XUklURSA9IFwiR1JPVVBfUkVBRF9XUklURVwiLFxuICAvKiogT1JHX09XTkVSICovXG4gIE9SR19PV05FUiA9IFwiT1JHX09XTkVSXCIsXG4gIC8qKiBPUkdfTUVNQkVSICovXG4gIE9SR19NRU1CRVIgPSBcIk9SR19NRU1CRVJcIixcbiAgLyoqIE9SR19HUk9VUF9DUkVBVE9SICovXG4gIE9SR19HUk9VUF9DUkVBVE9SID0gXCJPUkdfR1JPVVBfQ1JFQVRPUlwiLFxuICAvKiogT1JHX0JJTExJTkdfQURNSU4gKi9cbiAgT1JHX0JJTExJTkdfQURNSU4gPSBcIk9SR19CSUxMSU5HX0FETUlOXCIsXG4gIC8qKiBPUkdfUkVBRF9PTkxZICovXG4gIE9SR19SRUFEX09OTFkgPSBcIk9SR19SRUFEX09OTFlcIixcbn1cblxuLyoqXG4gKiBEZWdyZWUgb2Ygc2VyaW91c25lc3MgZ2l2ZW4gdG8gdGhpcyBub3RpZmljYXRpb24uXG4gKlxuICogQHNjaGVtYSBOb3RpZmljYXRpb25WaWV3U2V2ZXJpdHlcbiAqL1xuZXhwb3J0IGVudW0gTm90aWZpY2F0aW9uVmlld1NldmVyaXR5IHtcbiAgLyoqIENSSVRJQ0FMICovXG4gIENSSVRJQ0FMID0gXCJDUklUSUNBTFwiLFxuICAvKiogRVJST1IgKi9cbiAgRVJST1IgPSBcIkVSUk9SXCIsXG4gIC8qKiBXQVJOSU5HICovXG4gIFdBUk5JTkcgPSBcIldBUk5JTkdcIixcbn1cblxuLyoqXG4gKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGRpc3BsYXlzIHRoZSBhbGVydCBub3RpZmljYXRpb24gdHlwZS5cbiAqXG4gKiBAc2NoZW1hIE5vdGlmaWNhdGlvblZpZXdUeXBlTmFtZVxuICovXG5leHBvcnQgZW51bSBOb3RpZmljYXRpb25WaWV3VHlwZU5hbWUge1xuICAvKiogREFUQURPRyAqL1xuICBEQVRBRE9HID0gXCJEQVRBRE9HXCIsXG4gIC8qKiBFTUFJTCAqL1xuICBFTUFJTCA9IFwiRU1BSUxcIixcbiAgLyoqIEZMT1dET0NLICovXG4gIEZMT1dET0NLID0gXCJGTE9XRE9DS1wiLFxuICAvKiogR1JPVVAgKi9cbiAgR1JPVVAgPSBcIkdST1VQXCIsXG4gIC8qKiBNSUNST1NPRlRfVEVBTVMgKi9cbiAgTUlDUk9TT0ZUX1RFQU1TID0gXCJNSUNST1NPRlRfVEVBTVNcIixcbiAgLyoqIE9QU19HRU5JRSAqL1xuICBPUFNfR0VOSUUgPSBcIk9QU19HRU5JRVwiLFxuICAvKiogT1JHICovXG4gIE9SRyA9IFwiT1JHXCIsXG4gIC8qKiBQQUdFUl9EVVRZICovXG4gIFBBR0VSX0RVVFkgPSBcIlBBR0VSX0RVVFlcIixcbiAgLyoqIFBST01FVEhFVVMgKi9cbiAgUFJPTUVUSEVVUyA9IFwiUFJPTUVUSEVVU1wiLFxuICAvKiogU0xBQ0sgKi9cbiAgU0xBQ0sgPSBcIlNMQUNLXCIsXG4gIC8qKiBTTVMgKi9cbiAgU01TID0gXCJTTVNcIixcbiAgLyoqIFRFQU0gKi9cbiAgVEVBTSA9IFwiVEVBTVwiLFxuICAvKiogVVNFUiAqL1xuICBVU0VSID0gXCJVU0VSXCIsXG4gIC8qKiBWSUNUT1JfT1BTICovXG4gIFZJQ1RPUl9PUFMgPSBcIlZJQ1RPUl9PUFNcIixcbiAgLyoqIFdFQkhPT0sgKi9cbiAgV0VCSE9PSyA9IFwiV0VCSE9PS1wiLFxufVxuXG4vKipcbiAqIENvbXBhcmlzb24gb3BlcmF0b3IgdG8gYXBwbHkgd2hlbiBjaGVja2luZyB0aGUgY3VycmVudCBtZXRyaWMgdmFsdWUuXG4gKlxuICogQHNjaGVtYSBJbnRlZ2VyVGhyZXNob2xkVmlld09wZXJhdG9yXG4gKi9cbmV4cG9ydCBlbnVtIEludGVnZXJUaHJlc2hvbGRWaWV3T3BlcmF0b3Ige1xuICAvKiogR1JFQVRFUl9USEFOICovXG4gIEdSRUFURVJfVEhBTiA9IFwiR1JFQVRFUl9USEFOXCIsXG4gIC8qKiBMRVNTX1RIQU4gKi9cbiAgTEVTU19USEFOID0gXCJMRVNTX1RIQU5cIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6QWxlcnRDb25maWd1cmF0aW9uYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb25cbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbkFsZXJ0Q29uZmlndXJhdGlvbiBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb25cIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb24uSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpBbGVydENvbmZpZ3VyYXRpb24uRW5hYmxlZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRW5hYmxlZDogY2RrLklSZXNvbHZhYmxlO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6QWxlcnRDb25maWd1cmF0aW9uLlVwZGF0ZWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clVwZGF0ZWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkFsZXJ0Q29uZmlndXJhdGlvbi5DcmVhdGVkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJDcmVhdGVkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OkFsZXJ0Q29uZmlndXJhdGlvbmAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5BbGVydENvbmZpZ3VyYXRpb25Qcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkFsZXJ0Q29uZmlndXJhdGlvbi5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmbkFsZXJ0Q29uZmlndXJhdGlvblByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgICB0aGlzLmF0dHJFbmFibGVkID0gdGhpcy5nZXRBdHQoXCJFbmFibGVkXCIpO1xuICAgIHRoaXMuYXR0clVwZGF0ZWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJVcGRhdGVkXCIpKTtcbiAgICB0aGlzLmF0dHJDcmVhdGVkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiQ3JlYXRlZFwiKSk7XG4gIH1cbn1cbiJdfQ==

@@ -16,7 +16,7 @@ import * as cdk from "aws-cdk-lib";

/**
* Name of the AWS Secrets Manager secret that stores the API key Details. The secret name must be unique to the AWS account and region. If you don't specify a name, AWS CloudFormation use APIUserId for the secret name.
* Name of the AWS Secrets Manager secret that stores the API key Details.
*
* @schema CfnApiKeyProps#AwsSecretName
*/
readonly awsSecretName?: string;
readonly awsSecretName: string;
/**

@@ -35,2 +35,8 @@ * Unique 24-hexadecimal digit string that identifies the organization that contains your projects. Use the /orgs endpoint to retrieve all organizations to which the authenticated user has access.

/**
* ARN of the AWS Secrets Manager secret that stores the API key Details
*
* @schema CfnApiKeyProps#AwsSecretArn
*/
readonly awsSecretArn?: string;
/**
* List of roles to grant this API key. If you provide this list, provide a minimum of one role and ensure each role applies to this organization.

@@ -130,6 +136,2 @@ *

/**
* Attribute `MongoDB::Atlas::APIKey.AwsSecretArn`
*/
readonly attrAwsSecretArn: string;
/**
* Create a new `MongoDB::Atlas::APIKey`.

@@ -136,0 +138,0 @@ *

@@ -21,2 +21,3 @@ "use strict";

Profile: obj.profile,
AwsSecretArn: obj.awsSecretArn,
Roles: obj.roles?.map((y) => y),

@@ -87,3 +88,2 @@ ProjectAssignments: obj.projectAssignments?.map((y) => toJson_ProjectAssignment(y)),

this.attrAPIUserId = cdk.Token.asString(this.getAtt("APIUserId"));
this.attrAwsSecretArn = cdk.Token.asString(this.getAtt("AwsSecretArn"));
}

@@ -93,3 +93,3 @@ }

_a = JSII_RTTI_SYMBOL_1;
CfnApiKey[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnApiKey", version: "3.7.2" };
CfnApiKey[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnApiKey", version: "3.8.0" };
/**

@@ -99,2 +99,2 @@ * The CloudFormation resource type name for this resource class.

CfnApiKey.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::APIKey";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2FwaS1rZXkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBdURuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixxQkFBcUIsQ0FDbkMsR0FBK0I7SUFFL0IsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7UUFDNUIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhO1FBQ2hDLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0Isa0JBQWtCLEVBQUUsR0FBRyxDQUFDLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ3BELHdCQUF3QixDQUFDLENBQUMsQ0FBQyxDQUM1QjtRQUNELFdBQVcsRUFBRSxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDO0tBQ2pELENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQXRCRCxzREFzQkM7QUFzQkQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isd0JBQXdCLENBQ3RDLEdBQWtDO0lBRWxDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDL0IsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWZELDREQWVDO0FBNkJEOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtCQUFrQixDQUNoQyxHQUE0QjtJQUU1QixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO0tBQy9CLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWhCRCxnREFnQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLFNBQVUsU0FBUSxHQUFHLENBQUMsV0FBVztJQTRCNUM7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFxQjtRQUN4RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxTQUFTLENBQUMsc0JBQXNCO1lBQ3RDLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxLQUFLLENBQUU7U0FDMUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFDcEUsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDbEUsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDOztBQS9DSCw4QkFnREM7OztBQS9DQzs7R0FFRztBQUNvQixnQ0FBc0IsR0FBRyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQ3JlYXRlcyBvbmUgQVBJIGtleSBmb3IgdGhlIHNwZWNpZmllZCBvcmdhbml6YXRpb24uIEFuIG9yZ2FuaXphdGlvbiBBUEkga2V5IGdyYW50cyBwcm9ncmFtbWF0aWMgYWNjZXNzIHRvIGFuIG9yZ2FuaXphdGlvbi5cbiAqXG4gKiBAc2NoZW1hIENmbkFwaUtleVByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuQXBpS2V5UHJvcHMge1xuICAvKipcbiAgICogUHVycG9zZSBvciBleHBsYW5hdGlvbiBwcm92aWRlZCB3aGVuIHNvbWVvbmUgY3JlYXRlZCB0aGlzIG9yZ2FuaXphdGlvbiBBUEkga2V5LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFwaUtleVByb3BzI0Rlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBBV1MgU2VjcmV0cyBNYW5hZ2VyIHNlY3JldCB0aGF0IHN0b3JlcyB0aGUgQVBJIGtleSBEZXRhaWxzLiBUaGUgc2VjcmV0IG5hbWUgbXVzdCBiZSB1bmlxdWUgdG8gdGhlIEFXUyBhY2NvdW50IGFuZCByZWdpb24uIElmIHlvdSBkb24ndCBzcGVjaWZ5IGEgbmFtZSwgQVdTIENsb3VkRm9ybWF0aW9uIHVzZSBBUElVc2VySWQgZm9yIHRoZSBzZWNyZXQgbmFtZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNBd3NTZWNyZXROYW1lXG4gICAqL1xuICByZWFkb25seSBhd3NTZWNyZXROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgb3JnYW5pemF0aW9uIHRoYXQgY29udGFpbnMgeW91ciBwcm9qZWN0cy4gVXNlIHRoZSAvb3JncyBlbmRwb2ludCB0byByZXRyaWV2ZSBhbGwgb3JnYW5pemF0aW9ucyB0byB3aGljaCB0aGUgYXV0aGVudGljYXRlZCB1c2VyIGhhcyBhY2Nlc3MuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQXBpS2V5UHJvcHMjT3JnSWRcbiAgICovXG4gIHJlYWRvbmx5IG9yZ0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFByb2ZpbGUgdXNlZCB0byBwcm92aWRlIGNyZWRlbnRpYWxzIGluZm9ybWF0aW9uLCAoYSBzZWNyZXQgd2l0aCB0aGUgY2ZuL2F0bGFzL3Byb2ZpbGUve1Byb2ZpbGV9LCBpcyByZXF1aXJlZCksIGlmIG5vdCBwcm92aWRlZCBkZWZhdWx0IGlzIHVzZWRcbiAgICpcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHJvbGVzIHRvIGdyYW50IHRoaXMgQVBJIGtleS4gSWYgeW91IHByb3ZpZGUgdGhpcyBsaXN0LCBwcm92aWRlIGEgbWluaW11bSBvZiBvbmUgcm9sZSBhbmQgZW5zdXJlIGVhY2ggcm9sZSBhcHBsaWVzIHRvIHRoaXMgb3JnYW5pemF0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkFwaUtleVByb3BzI1JvbGVzXG4gICAqL1xuICByZWFkb25seSByb2xlcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmbkFwaUtleVByb3BzI1Byb2plY3RBc3NpZ25tZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdEFzc2lnbm1lbnRzPzogUHJvamVjdEFzc2lnbm1lbnRbXTtcblxuICAvKipcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNMaXN0T3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgbGlzdE9wdGlvbnM/OiBMaXN0T3B0aW9ucztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuQXBpS2V5UHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmbkFwaUtleVByb3BzKFxuICBvYmo6IENmbkFwaUtleVByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRGVzY3JpcHRpb246IG9iai5kZXNjcmlwdGlvbixcbiAgICBBd3NTZWNyZXROYW1lOiBvYmouYXdzU2VjcmV0TmFtZSxcbiAgICBPcmdJZDogb2JqLm9yZ0lkLFxuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4geSksXG4gICAgUHJvamVjdEFzc2lnbm1lbnRzOiBvYmoucHJvamVjdEFzc2lnbm1lbnRzPy5tYXAoKHkpID0+XG4gICAgICB0b0pzb25fUHJvamVjdEFzc2lnbm1lbnQoeSlcbiAgICApLFxuICAgIExpc3RPcHRpb25zOiB0b0pzb25fTGlzdE9wdGlvbnMob2JqLmxpc3RPcHRpb25zKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBQcm9qZWN0QXNzaWdubWVudFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFByb2plY3RBc3NpZ25tZW50IHtcbiAgLyoqXG4gICAqIExpc3Qgb2Ygcm9sZXMgdG8gZ3JhbnQgdGhpcyBBUEkga2V5LiBJZiB5b3UgcHJvdmlkZSB0aGlzIGxpc3QsIHByb3ZpZGUgYSBtaW5pbXVtIG9mIG9uZSByb2xlIGFuZCBlbnN1cmUgZWFjaCByb2xlIGFwcGxpZXMgdG8gdGhpcyBvcmdhbml6YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgUHJvamVjdEFzc2lnbm1lbnQjUm9sZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBwcm9qZWN0IGluIGFuIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBQcm9qZWN0QXNzaWdubWVudCNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnUHJvamVjdEFzc2lnbm1lbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1Byb2plY3RBc3NpZ25tZW50KFxuICBvYmo6IFByb2plY3RBc3NpZ25tZW50IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUm9sZXM6IG9iai5yb2xlcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgTGlzdE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaXN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGhlIHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgY3VycmVudCBzZXQgb2YgdGhlIHRvdGFsIG9iamVjdHMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucy5cbiAgICpcbiAgICogQHNjaGVtYSBMaXN0T3B0aW9ucyNQYWdlTnVtXG4gICAqL1xuICByZWFkb25seSBwYWdlTnVtPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucyBwZXIgcGFnZS5cbiAgICpcbiAgICogQHNjaGVtYSBMaXN0T3B0aW9ucyNJdGVtc1BlclBhZ2VcbiAgICovXG4gIHJlYWRvbmx5IGl0ZW1zUGVyUGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSByZXNwb25zZSByZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMgKHRvdGFsQ291bnQpIGluIHRoZSByZXNwb25zZS5cbiAgICpcbiAgICogQHNjaGVtYSBMaXN0T3B0aW9ucyNJbmNsdWRlQ291bnRcbiAgICovXG4gIHJlYWRvbmx5IGluY2x1ZGVDb3VudD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0xpc3RPcHRpb25zJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9MaXN0T3B0aW9ucyhcbiAgb2JqOiBMaXN0T3B0aW9ucyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFBhZ2VOdW06IG9iai5wYWdlTnVtLFxuICAgIEl0ZW1zUGVyUGFnZTogb2JqLml0ZW1zUGVyUGFnZSxcbiAgICBJbmNsdWRlQ291bnQ6IG9iai5pbmNsdWRlQ291bnQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpBUElLZXlgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OkFQSUtleVxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuQXBpS2V5IGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPSBcIk1vbmdvREI6OkF0bGFzOjpBUElLZXlcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkFwaUtleVByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpBUElLZXkuUHJpdmF0ZUtleWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyUHJpdmF0ZUtleTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6QVBJS2V5LlB1YmxpY0tleWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyUHVibGljS2V5OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpBUElLZXkuQVBJVXNlcklkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJBUElVc2VySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkFQSUtleS5Bd3NTZWNyZXRBcm5gXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckF3c1NlY3JldEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpBUElLZXlgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDZm5BcGlLZXlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuQXBpS2V5LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuQXBpS2V5UHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0clByaXZhdGVLZXkgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJQcml2YXRlS2V5XCIpKTtcbiAgICB0aGlzLmF0dHJQdWJsaWNLZXkgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJQdWJsaWNLZXlcIikpO1xuICAgIHRoaXMuYXR0ckFQSVVzZXJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkFQSVVzZXJJZFwiKSk7XG4gICAgdGhpcy5hdHRyQXdzU2VjcmV0QXJuID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiQXdzU2VjcmV0QXJuXCIpKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2FwaS1rZXkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBOERuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixxQkFBcUIsQ0FDbkMsR0FBK0I7SUFFL0IsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7UUFDNUIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhO1FBQ2hDLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9CLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNwRCx3QkFBd0IsQ0FBQyxDQUFDLENBQUMsQ0FDNUI7UUFDRCxXQUFXLEVBQUUsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztLQUNqRCxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FB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QUFHLHdCQUF3QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBDcmVhdGVzIG9uZSBBUEkga2V5IGZvciB0aGUgc3BlY2lmaWVkIG9yZ2FuaXphdGlvbi4gQW4gb3JnYW5pemF0aW9uIEFQSSBrZXkgZ3JhbnRzIHByb2dyYW1tYXRpYyBhY2Nlc3MgdG8gYW4gb3JnYW5pemF0aW9uLlxuICpcbiAqIEBzY2hlbWEgQ2ZuQXBpS2V5UHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5BcGlLZXlQcm9wcyB7XG4gIC8qKlxuICAgKiBQdXJwb3NlIG9yIGV4cGxhbmF0aW9uIHByb3ZpZGVkIHdoZW4gc29tZW9uZSBjcmVhdGVkIHRoaXMgb3JnYW5pemF0aW9uIEFQSSBrZXkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQXBpS2V5UHJvcHMjRGVzY3JpcHRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIEFXUyBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IHRoYXQgc3RvcmVzIHRoZSBBUEkga2V5IERldGFpbHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQXBpS2V5UHJvcHMjQXdzU2VjcmV0TmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgYXdzU2VjcmV0TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgb3JnYW5pemF0aW9uIHRoYXQgY29udGFpbnMgeW91ciBwcm9qZWN0cy4gVXNlIHRoZSAvb3JncyBlbmRwb2ludCB0byByZXRyaWV2ZSBhbGwgb3JnYW5pemF0aW9ucyB0byB3aGljaCB0aGUgYXV0aGVudGljYXRlZCB1c2VyIGhhcyBhY2Nlc3MuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQXBpS2V5UHJvcHMjT3JnSWRcbiAgICovXG4gIHJlYWRvbmx5IG9yZ0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFByb2ZpbGUgdXNlZCB0byBwcm92aWRlIGNyZWRlbnRpYWxzIGluZm9ybWF0aW9uLCAoYSBzZWNyZXQgd2l0aCB0aGUgY2ZuL2F0bGFzL3Byb2ZpbGUve1Byb2ZpbGV9LCBpcyByZXF1aXJlZCksIGlmIG5vdCBwcm92aWRlZCBkZWZhdWx0IGlzIHVzZWRcbiAgICpcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBUk4gb2YgdGhlIEFXUyBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IHRoYXQgc3RvcmVzIHRoZSBBUEkga2V5IERldGFpbHNcbiAgICpcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNBd3NTZWNyZXRBcm5cbiAgICovXG4gIHJlYWRvbmx5IGF3c1NlY3JldEFybj86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiByb2xlcyB0byBncmFudCB0aGlzIEFQSSBrZXkuIElmIHlvdSBwcm92aWRlIHRoaXMgbGlzdCwgcHJvdmlkZSBhIG1pbmltdW0gb2Ygb25lIHJvbGUgYW5kIGVuc3VyZSBlYWNoIHJvbGUgYXBwbGllcyB0byB0aGlzIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQHNjaGVtYSBDZm5BcGlLZXlQcm9wcyNQcm9qZWN0QXNzaWdubWVudHNcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RBc3NpZ25tZW50cz86IFByb2plY3RBc3NpZ25tZW50W107XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgQ2ZuQXBpS2V5UHJvcHMjTGlzdE9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGxpc3RPcHRpb25zPzogTGlzdE9wdGlvbnM7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkFwaUtleVByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5BcGlLZXlQcm9wcyhcbiAgb2JqOiBDZm5BcGlLZXlQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIERlc2NyaXB0aW9uOiBvYmouZGVzY3JpcHRpb24sXG4gICAgQXdzU2VjcmV0TmFtZTogb2JqLmF3c1NlY3JldE5hbWUsXG4gICAgT3JnSWQ6IG9iai5vcmdJZCxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBBd3NTZWNyZXRBcm46IG9iai5hd3NTZWNyZXRBcm4sXG4gICAgUm9sZXM6IG9iai5yb2xlcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBQcm9qZWN0QXNzaWdubWVudHM6IG9iai5wcm9qZWN0QXNzaWdubWVudHM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9Qcm9qZWN0QXNzaWdubWVudCh5KVxuICAgICksXG4gICAgTGlzdE9wdGlvbnM6IHRvSnNvbl9MaXN0T3B0aW9ucyhvYmoubGlzdE9wdGlvbnMpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFByb2plY3RBc3NpZ25tZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJvamVjdEFzc2lnbm1lbnQge1xuICAvKipcbiAgICogTGlzdCBvZiByb2xlcyB0byBncmFudCB0aGlzIEFQSSBrZXkuIElmIHlvdSBwcm92aWRlIHRoaXMgbGlzdCwgcHJvdmlkZSBhIG1pbmltdW0gb2Ygb25lIHJvbGUgYW5kIGVuc3VyZSBlYWNoIHJvbGUgYXBwbGllcyB0byB0aGlzIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBQcm9qZWN0QXNzaWdubWVudCNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIHByb2plY3QgaW4gYW4gb3JnYW5pemF0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIFByb2plY3RBc3NpZ25tZW50I1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdQcm9qZWN0QXNzaWdubWVudCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fUHJvamVjdEFzc2lnbm1lbnQoXG4gIG9iajogUHJvamVjdEFzc2lnbm1lbnQgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBSb2xlczogb2JqLnJvbGVzPy5tYXAoKHkpID0+IHkpLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBMaXN0T3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIE51bWJlciBvZiB0aGUgcGFnZSB0aGF0IGRpc3BsYXlzIHRoZSBjdXJyZW50IHNldCBvZiB0aGUgdG90YWwgb2JqZWN0cyB0aGF0IHRoZSByZXNwb25zZSByZXR1cm5zLlxuICAgKlxuICAgKiBAc2NoZW1hIExpc3RPcHRpb25zI1BhZ2VOdW1cbiAgICovXG4gIHJlYWRvbmx5IHBhZ2VOdW0/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBpdGVtcyB0aGF0IHRoZSByZXNwb25zZSByZXR1cm5zIHBlciBwYWdlLlxuICAgKlxuICAgKiBAc2NoZW1hIExpc3RPcHRpb25zI0l0ZW1zUGVyUGFnZVxuICAgKi9cbiAgcmVhZG9ubHkgaXRlbXNQZXJQYWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIHJldHVybnMgdGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyAodG90YWxDb3VudCkgaW4gdGhlIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAc2NoZW1hIExpc3RPcHRpb25zI0luY2x1ZGVDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW5jbHVkZUNvdW50PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnTGlzdE9wdGlvbnMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0xpc3RPcHRpb25zKFxuICBvYmo6IExpc3RPcHRpb25zIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUGFnZU51bTogb2JqLnBhZ2VOdW0sXG4gICAgSXRlbXNQZXJQYWdlOiBvYmouaXRlbXNQZXJQYWdlLFxuICAgIEluY2x1ZGVDb3VudDogb2JqLmluY2x1ZGVDb3VudCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OkFQSUtleWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6QVBJS2V5XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5BcGlLZXkgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9IFwiTW9uZ29EQjo6QXRsYXM6OkFQSUtleVwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuQXBpS2V5UHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkFQSUtleS5Qcml2YXRlS2V5YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJQcml2YXRlS2V5OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpBUElLZXkuUHVibGljS2V5YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJQdWJsaWNLZXk6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkFQSUtleS5BUElVc2VySWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckFQSVVzZXJJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpBUElLZXlgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDZm5BcGlLZXlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuQXBpS2V5LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuQXBpS2V5UHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0clByaXZhdGVLZXkgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJQcml2YXRlS2V5XCIpKTtcbiAgICB0aGlzLmF0dHJQdWJsaWNLZXkgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJQdWJsaWNLZXlcIikpO1xuICAgIHRoaXMuYXR0ckFQSVVzZXJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkFQSVVzZXJJZFwiKSk7XG4gIH1cbn1cbiJdfQ==

@@ -52,3 +52,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnAuditing[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnAuditing", version: "3.7.2" };
CfnAuditing[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnAuditing", version: "3.8.0" };
/**

@@ -55,0 +55,0 @@ * The CloudFormation resource type name for this resource class.

@@ -34,26 +34,14 @@ import * as cdk from "aws-cdk-lib";

/**
* Indicates whether the restore job was canceled.
* Unique identifier of the source snapshot ID of the restore job.
*
* @schema CfnCloudBackUpRestoreJobsProps#Cancelled
* @schema CfnCloudBackUpRestoreJobsProps#SnapshotId
*/
readonly cancelled?: boolean;
readonly snapshotId: string;
/**
* Indicates whether the restore job failed.
* One or more links to sub-resources and/or related resources.
*
* @schema CfnCloudBackUpRestoreJobsProps#Failed
* @schema CfnCloudBackUpRestoreJobsProps#Links
*/
readonly failed?: boolean;
readonly links?: CfnCloudBackUpRestoreJobsPropsLinks[];
/**
* Indicates whether the restore job expired.
*
* @schema CfnCloudBackUpRestoreJobsProps#Expired
*/
readonly expired?: boolean;
/**
* Unique identifier of the source snapshot ID of the restore job.
*
* @schema CfnCloudBackUpRestoreJobsProps#SnapshotId
*/
readonly snapshotId: string;
/**
* Timestamp in the number of seconds that have elapsed since the UNIX epoch from which to you want to restore this snapshot. This is the first part of an Oplog timestamp.

@@ -136,2 +124,19 @@ *

/**
* @schema CfnCloudBackUpRestoreJobsPropsLinks
*/
export interface CfnCloudBackUpRestoreJobsPropsLinks {
/**
* @schema CfnCloudBackUpRestoreJobsPropsLinks#Rel
*/
readonly rel?: string;
/**
* @schema CfnCloudBackUpRestoreJobsPropsLinks#Href
*/
readonly href?: string;
}
/**
* Converts an object of type 'CfnCloudBackUpRestoreJobsPropsLinks' to JSON representation.
*/
export declare function toJson_CfnCloudBackUpRestoreJobsPropsLinks(obj: CfnCloudBackUpRestoreJobsPropsLinks | undefined): Record<string, any> | undefined;
/**
* Options that needs to be set to control the synchronous creation flow, this options need to be set if EnableSynchronousCreation is se to TRUE

@@ -189,2 +194,14 @@ *

/**
* Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.Cancelled`
*/
readonly attrCancelled: cdk.IResolvable;
/**
* Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.Failed`
*/
readonly attrFailed: cdk.IResolvable;
/**
* Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.Expired`
*/
readonly attrExpired: cdk.IResolvable;
/**
* Attribute `MongoDB::Atlas::CloudBackUpRestoreJobs.ExpiresAt`

@@ -191,0 +208,0 @@ */

"use strict";
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CfnCloudBackUpRestoreJobs = exports.toJson_SynchronousCreationOptions = exports.CfnCloudBackUpRestoreJobsPropsDeliveryType = exports.CfnCloudBackUpRestoreJobsPropsInstanceType = exports.toJson_CfnCloudBackUpRestoreJobsProps = void 0;
exports.CfnCloudBackUpRestoreJobs = exports.toJson_SynchronousCreationOptions = exports.toJson_CfnCloudBackUpRestoreJobsPropsLinks = exports.CfnCloudBackUpRestoreJobsPropsDeliveryType = exports.CfnCloudBackUpRestoreJobsPropsInstanceType = exports.toJson_CfnCloudBackUpRestoreJobsProps = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");

@@ -21,6 +21,4 @@ // Generated by cdk-import

DeliveryType: obj.deliveryType,
Cancelled: obj.cancelled,
Failed: obj.failed,
Expired: obj.expired,
SnapshotId: obj.snapshotId,
Links: obj.links?.map((y) => toJson_CfnCloudBackUpRestoreJobsPropsLinks(y)),
OpLogTs: obj.opLogTs,

@@ -67,2 +65,18 @@ OpLogInc: obj.opLogInc,

/**
* Converts an object of type 'CfnCloudBackUpRestoreJobsPropsLinks' to JSON representation.
*/
/* eslint-disable max-len, quote-props */
function toJson_CfnCloudBackUpRestoreJobsPropsLinks(obj) {
if (obj === undefined) {
return undefined;
}
const result = {
Rel: obj.rel,
Href: obj.href,
};
// filter undefined values
return Object.entries(result).reduce((r, i) => (i[1] === undefined ? r : { ...r, [i[0]]: i[1] }), {});
}
exports.toJson_CfnCloudBackUpRestoreJobsPropsLinks = toJson_CfnCloudBackUpRestoreJobsPropsLinks;
/**
* Converts an object of type 'SynchronousCreationOptions' to JSON representation.

@@ -107,2 +121,5 @@ */

this.attrDeliveryUrl = cdk.Token.asList(this.getAtt("DeliveryUrl"));
this.attrCancelled = this.getAtt("Cancelled");
this.attrFailed = this.getAtt("Failed");
this.attrExpired = this.getAtt("Expired");
this.attrExpiresAt = cdk.Token.asString(this.getAtt("ExpiresAt"));

@@ -115,3 +132,3 @@ this.attrFinishedAt = cdk.Token.asString(this.getAtt("FinishedAt"));

_a = JSII_RTTI_SYMBOL_1;
CfnCloudBackUpRestoreJobs[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackUpRestoreJobs", version: "3.7.2" };
CfnCloudBackUpRestoreJobs[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackUpRestoreJobs", version: "3.8.0" };
/**

@@ -121,2 +138,2 @@ * The CloudFormation resource type name for this resource class.

CfnCloudBackUpRestoreJobs.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::CloudBackUpRestoreJobs";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1yZXN0b3JlLWpvYnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBMEhuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixxQ0FBcUMsQ0FDbkQsR0FBK0M7SUFFL0MsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtRQUNsQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1FBQzFCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIscUJBQXFCLEVBQUUsR0FBRyxDQUFDLHFCQUFxQjtRQUNoRCxlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWU7UUFDcEMsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLGlCQUFpQjtRQUN4QyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIseUJBQXlCLEVBQUUsR0FBRyxDQUFDLHlCQUF5QjtRQUN4RCwwQkFBMEIsRUFBRSxpQ0FBaUMsQ0FDM0QsR0FBRyxDQUFDLDBCQUEwQixDQUMvQjtLQUNGLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FB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QUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNwRSxDQUFDOztBQXpESCw4REEwREM7OztBQXpEQzs7R0FFRztBQUNvQixnREFBc0IsR0FDM0Msd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIHN0YXJ0cywgYW5kIGNhbmNlbHMgQ2xvdWQgQmFja3VwIHJlc3RvcmUgam9icy5cbiAqXG4gKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHByb2plY3QgZm9yIHRoZSBBdGxhcyBjbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGluc3RhbmNlIHNwZWNpZmllZCBvbiB0aGUgSW5zdGFuY2UgTmFtZSBzZXJ2ZXJsZXNzIG9yIGNsdXN0ZXJcbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjSW5zdGFuY2VUeXBlXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU6IENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0luc3RhbmNlVHlwZTtcblxuICAvKipcbiAgICogVGhlIGluc3RhbmNlIG5hbWUgb2YgdGhlIFNlcnZlcmxlc3MvQ2x1c3RlciB3aG9zZSBzbmFwc2hvdCB5b3Ugd2FudCB0byByZXN0b3JlIG9yIHlvdSB3YW50IHRvIHJldHJpZXZlIHJlc3RvcmUgam9icy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjSW5zdGFuY2VOYW1lXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZU5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiByZXN0b3JlIGpvYiB0byBjcmVhdGUuVGhlIHZhbHVlIGNhbiBiZSBhbnkgb25lIG9mIGRvd25sb2FkLGF1dG9tYXRlZCBvciBwb2ludF9pbl90aW1lXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI0RlbGl2ZXJ5VHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsaXZlcnlUeXBlOiBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNEZWxpdmVyeVR5cGU7XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyB3aGV0aGVyIHRoZSByZXN0b3JlIGpvYiB3YXMgY2FuY2VsZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI0NhbmNlbGxlZFxuICAgKi9cbiAgcmVhZG9ubHkgY2FuY2VsbGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJlc3RvcmUgam9iIGZhaWxlZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjRmFpbGVkXG4gICAqL1xuICByZWFkb25seSBmYWlsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgd2hldGhlciB0aGUgcmVzdG9yZSBqb2IgZXhwaXJlZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjRXhwaXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgZXhwaXJlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBzb3VyY2Ugc25hcHNob3QgSUQgb2YgdGhlIHJlc3RvcmUgam9iLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNTbmFwc2hvdElkXG4gICAqL1xuICByZWFkb25seSBzbmFwc2hvdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRpbWVzdGFtcCBpbiB0aGUgbnVtYmVyIG9mIHNlY29uZHMgdGhhdCBoYXZlIGVsYXBzZWQgc2luY2UgdGhlIFVOSVggZXBvY2ggZnJvbSB3aGljaCB0byB5b3Ugd2FudCB0byByZXN0b3JlIHRoaXMgc25hcHNob3QuIFRoaXMgaXMgdGhlIGZpcnN0IHBhcnQgb2YgYW4gT3Bsb2cgdGltZXN0YW1wLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNPcExvZ1RzXG4gICAqL1xuICByZWFkb25seSBvcExvZ1RzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcGxvZyBvcGVyYXRpb24gbnVtYmVyIGZyb20gd2hpY2ggdG8geW91IHdhbnQgdG8gcmVzdG9yZSB0aGlzIHNuYXBzaG90LiBUaGlzIGlzIHRoZSBzZWNvbmQgcGFydCBvZiBhbiBPcGxvZyB0aW1lc3RhbXAuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI09wTG9nSW5jXG4gICAqL1xuICByZWFkb25seSBvcExvZ0luYz86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgeW91IHBlcmZvcm1lZCBhIFBvaW50LWluLVRpbWUgcmVzdG9yZXMgYXQgYSB0aW1lIHNwZWNpZmllZCBieSBhIFVuaXggdGltZSBpbiBzZWNvbmRzIHNpbmNlIGVwb2NoLCBwb2ludEluVGltZVVUQ1NlY29uZHMgaW5kaWNhdGVzIHRoZSBVbml4IHRpbWUgdXNlZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjUG9pbnRJblRpbWVVdGNTZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBwb2ludEluVGltZVV0Y1NlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHRhcmdldCBBdGxhcyBwcm9qZWN0IG9mIHRoZSByZXN0b3JlIGpvYi4gT25seSB2aXNpYmxlIGlmIGRlbGl2ZXJ5VHlwZSBpcyBhdXRvbWF0ZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI1RhcmdldFByb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0UHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB0YXJnZXQgQXRsYXMgY2x1c3RlciB0byB3aGljaCB0aGUgcmVzdG9yZSBqb2IgcmVzdG9yZXMgdGhlIHNuYXBzaG90LiBPbmx5IHZpc2libGUgaWYgZGVsaXZlcnlUeXBlIGlzIGF1dG9tYXRlZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjVGFyZ2V0Q2x1c3Rlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldENsdXN0ZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIHNldCB0byB0cnVlLCB0aGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2Ugd2lsbCB3YWl0IHVudGlsIHRoZSBqb2IgaXMgY29tcGxldGVkLCBXQVJOSU5HOiBpZiB0aGUgc25hcHNob3QgaGFzIGEgYmlnIGxvYWQgb2YgZGF0YSwgdGhlIGNsb3VkIGZvcm1hdGlvbiByZXNvdXJjZSBtaWdodCB0YWtlIGEgbG9uZyB0aW1lIHRvIGZpbmlzaCBsZWFkaW5nIHRvIGhpZ2ggY29zdHNcbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjRW5hYmxlU3luY2hyb25vdXNDcmVhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlU3luY2hyb25vdXNDcmVhdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgdGhhdCBuZWVkcyB0byBiZSBzZXQgdG8gY29udHJvbCB0aGUgc3luY2hyb25vdXMgY3JlYXRpb24gZmxvdywgdGhpcyBvcHRpb25zIG5lZWQgdG8gYmUgc2V0IGlmIEVuYWJsZVN5bmNocm9ub3VzQ3JlYXRpb24gaXMgc2UgdG8gVFJVRVxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgc3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnM/OiBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMoXG4gIG9iajogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIEluc3RhbmNlVHlwZTogb2JqLmluc3RhbmNlVHlwZSxcbiAgICBJbnN0YW5jZU5hbWU6IG9iai5pbnN0YW5jZU5hbWUsXG4gICAgRGVsaXZlcnlUeXBlOiBvYmouZGVsaXZlcnlUeXBlLFxuICAgIENhbmNlbGxlZDogb2JqLmNhbmNlbGxlZCxcbiAgICBGYWlsZWQ6IG9iai5mYWlsZWQsXG4gICAgRXhwaXJlZDogb2JqLmV4cGlyZWQsXG4gICAgU25hcHNob3RJZDogb2JqLnNuYXBzaG90SWQsXG4gICAgT3BMb2dUczogb2JqLm9wTG9nVHMsXG4gICAgT3BMb2dJbmM6IG9iai5vcExvZ0luYyxcbiAgICBQb2ludEluVGltZVV0Y1NlY29uZHM6IG9iai5wb2ludEluVGltZVV0Y1NlY29uZHMsXG4gICAgVGFyZ2V0UHJvamVjdElkOiBvYmoudGFyZ2V0UHJvamVjdElkLFxuICAgIFRhcmdldENsdXN0ZXJOYW1lOiBvYmoudGFyZ2V0Q2x1c3Rlck5hbWUsXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgRW5hYmxlU3luY2hyb25vdXNDcmVhdGlvbjogb2JqLmVuYWJsZVN5bmNocm9ub3VzQ3JlYXRpb24sXG4gICAgU3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnM6IHRvSnNvbl9TeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucyhcbiAgICAgIG9iai5zeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9uc1xuICAgICksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIFR5cGUgb2YgaW5zdGFuY2Ugc3BlY2lmaWVkIG9uIHRoZSBJbnN0YW5jZSBOYW1lIHNlcnZlcmxlc3Mgb3IgY2x1c3RlclxuICpcbiAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzSW5zdGFuY2VUeXBlXG4gKi9cbmV4cG9ydCBlbnVtIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0luc3RhbmNlVHlwZSB7XG4gIC8qKiBzZXJ2ZXJsZXNzICovXG4gIFNFUlZFUkxFU1MgPSBcInNlcnZlcmxlc3NcIixcbiAgLyoqIGNsdXN0ZXIgKi9cbiAgQ0xVU1RFUiA9IFwiY2x1c3RlclwiLFxufVxuXG4vKipcbiAqIFR5cGUgb2YgcmVzdG9yZSBqb2IgdG8gY3JlYXRlLlRoZSB2YWx1ZSBjYW4gYmUgYW55IG9uZSBvZiBkb3dubG9hZCxhdXRvbWF0ZWQgb3IgcG9pbnRfaW5fdGltZVxuICpcbiAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzRGVsaXZlcnlUeXBlXG4gKi9cbmV4cG9ydCBlbnVtIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0RlbGl2ZXJ5VHlwZSB7XG4gIC8qKiBkb3dubG9hZCAqL1xuICBET1dOTE9BRCA9IFwiZG93bmxvYWRcIixcbiAgLyoqIGF1dG9tYXRlZCAqL1xuICBBVVRPTUFURUQgPSBcImF1dG9tYXRlZFwiLFxuICAvKiogcG9pbnRJblRpbWUgKi9cbiAgUE9JTlRfSU5fVElNRSA9IFwicG9pbnRJblRpbWVcIixcbn1cblxuLyoqXG4gKiBPcHRpb25zIHRoYXQgbmVlZHMgdG8gYmUgc2V0IHRvIGNvbnRyb2wgdGhlIHN5bmNocm9ub3VzIGNyZWF0aW9uIGZsb3csIHRoaXMgb3B0aW9ucyBuZWVkIHRvIGJlIHNldCBpZiBFbmFibGVTeW5jaHJvbm91c0NyZWF0aW9uIGlzIHNlIHRvIFRSVUVcbiAqXG4gKiBAc2NoZW1hIFN5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGFtb3VudCBvZiB0aW1lIHRoZSBwcm9jZXNzIHdpbGwgd2FpdCB1bnRpbCBleGl0aW5nIHdpdGggYSBzdWNjZXNzLCBkZWZhdWx0ICgxMjAwIHNlY29uZHMpXG4gICAqXG4gICAqIEBzY2hlbWEgU3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnMjVGltZU91dEluU2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgdGltZU91dEluU2Vjb25kcz86IG51bWJlcjtcblxuICAvKipcbiAgICogUmVwcmVzZW50cyB0aGUgdGltZSBpbnRlcnZhbCwgbWVhc3VyZWQgaW4gc2Vjb25kcywgZm9yIHRoZSBzeW5jaHJvbm91cyBwcm9jZXNzIHRvIHdhaXQgYmVmb3JlIGNoZWNraW5nIGFnYWluIHRvIHZlcmlmeSBpZiB0aGUgam9iIGhhcyBiZWVuIGNvbXBsZXRlZC4gZXhhbXBsZTogaWYgc2V0IHRvIDIwLCBpdCB3aWxsIGNoZWsgZXZlcnkgMjAgc2Vjb25kcyBpZiB0aGUgcmVzb3VyY2UgaXMgY29tcGxldGVkLCBkZWZhdWx0ICgzMCBzZWNvbmRzKVxuICAgKlxuICAgKiBAc2NoZW1hIFN5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zI0NhbGxiYWNrRGVsYXlTZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBjYWxsYmFja0RlbGF5U2Vjb25kcz86IG51bWJlcjtcblxuICAvKipcbiAgICogaWYgc2V0IHRvIHRydWUsIHRoZSBwcm9jZXNzIHdpbGwgcmV0dXJuIHN1Y2Nlc3MsIGluIHRoZSBldmVudCBvZiBhIHRpbWVPdXQsIGRlZmF1bHQgZmFsc2VcbiAgICpcbiAgICogQHNjaGVtYSBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucyNSZXR1cm5TdWNjZXNzSWZUaW1lT3V0XG4gICAqL1xuICByZWFkb25seSByZXR1cm5TdWNjZXNzSWZUaW1lT3V0PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1N5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zKFxuICBvYmo6IFN5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgVGltZU91dEluU2Vjb25kczogb2JqLnRpbWVPdXRJblNlY29uZHMsXG4gICAgQ2FsbGJhY2tEZWxheVNlY29uZHM6IG9iai5jYWxsYmFja0RlbGF5U2Vjb25kcyxcbiAgICBSZXR1cm5TdWNjZXNzSWZUaW1lT3V0OiBvYmoucmV0dXJuU3VjY2Vzc0lmVGltZU91dCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnNgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnNcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnMgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9ic1wiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2tVcFJlc3RvcmVKb2JzLklkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9icy5EZWxpdmVyeVVybGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRGVsaXZlcnlVcmw6IHN0cmluZ1tdO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9icy5FeHBpcmVzQXRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckV4cGlyZXNBdDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9icy5GaW5pc2hlZEF0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJGaW5pc2hlZEF0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2tVcFJlc3RvcmVKb2JzLlRpbWVzdGFtcGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyVGltZXN0YW1wOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnNgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9icy5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRySWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJZFwiKSk7XG4gICAgdGhpcy5hdHRyRGVsaXZlcnlVcmwgPSBjZGsuVG9rZW4uYXNMaXN0KHRoaXMuZ2V0QXR0KFwiRGVsaXZlcnlVcmxcIikpO1xuICAgIHRoaXMuYXR0ckV4cGlyZXNBdCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkV4cGlyZXNBdFwiKSk7XG4gICAgdGhpcy5hdHRyRmluaXNoZWRBdCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkZpbmlzaGVkQXRcIikpO1xuICAgIHRoaXMuYXR0clRpbWVzdGFtcCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIlRpbWVzdGFtcFwiKSk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1yZXN0b3JlLWpvYnMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBNEduQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixxQ0FBcUMsQ0FDbkQsR0FBK0M7SUFFL0MsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1FBQzFCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsMENBQTBDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDM0UsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtRQUN0QixxQkFBcUIsRUFBRSxHQUFHLENBQUMscUJBQXFCO1FBQ2hELGVBQWUsRUFBRSxHQUFHLENBQUMsZUFBZTtRQUNwQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsaUJBQWlCO1FBQ3hDLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQix5QkFBeUIsRUFBRSxHQUFHLENBQUMseUJBQXlCO1FBQ3hELDBCQUEwQixFQUFFLGlDQUFpQyxDQUMzRCxHQUFHLENBQUMsMEJBQTBCLENBQy9CO0tBQ0YsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFB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ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucywgc3RhcnRzLCBhbmQgY2FuY2VscyBDbG91ZCBCYWNrdXAgcmVzdG9yZSBqb2JzLlxuICpcbiAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzIHtcbiAgLyoqXG4gICAqIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgcHJvamVjdCBmb3IgdGhlIEF0bGFzIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgaW5zdGFuY2Ugc3BlY2lmaWVkIG9uIHRoZSBJbnN0YW5jZSBOYW1lIHNlcnZlcmxlc3Mgb3IgY2x1c3RlclxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNJbnN0YW5jZVR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlVHlwZTogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzSW5zdGFuY2VUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgaW5zdGFuY2UgbmFtZSBvZiB0aGUgU2VydmVybGVzcy9DbHVzdGVyIHdob3NlIHNuYXBzaG90IHlvdSB3YW50IHRvIHJlc3RvcmUgb3IgeW91IHdhbnQgdG8gcmV0cmlldmUgcmVzdG9yZSBqb2JzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNJbnN0YW5jZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIHJlc3RvcmUgam9iIHRvIGNyZWF0ZS5UaGUgdmFsdWUgY2FuIGJlIGFueSBvbmUgb2YgZG93bmxvYWQsYXV0b21hdGVkIG9yIHBvaW50X2luX3RpbWVcbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjRGVsaXZlcnlUeXBlXG4gICAqL1xuICByZWFkb25seSBkZWxpdmVyeVR5cGU6IENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0RlbGl2ZXJ5VHlwZTtcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHNvdXJjZSBzbmFwc2hvdCBJRCBvZiB0aGUgcmVzdG9yZSBqb2IuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI1NuYXBzaG90SWRcbiAgICovXG4gIHJlYWRvbmx5IHNuYXBzaG90SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogT25lIG9yIG1vcmUgbGlua3MgdG8gc3ViLXJlc291cmNlcyBhbmQvb3IgcmVsYXRlZCByZXNvdXJjZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI0xpbmtzXG4gICAqL1xuICByZWFkb25seSBsaW5rcz86IENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0xpbmtzW107XG5cbiAgLyoqXG4gICAqIFRpbWVzdGFtcCBpbiB0aGUgbnVtYmVyIG9mIHNlY29uZHMgdGhhdCBoYXZlIGVsYXBzZWQgc2luY2UgdGhlIFVOSVggZXBvY2ggZnJvbSB3aGljaCB0byB5b3Ugd2FudCB0byByZXN0b3JlIHRoaXMgc25hcHNob3QuIFRoaXMgaXMgdGhlIGZpcnN0IHBhcnQgb2YgYW4gT3Bsb2cgdGltZXN0YW1wLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNPcExvZ1RzXG4gICAqL1xuICByZWFkb25seSBvcExvZ1RzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcGxvZyBvcGVyYXRpb24gbnVtYmVyIGZyb20gd2hpY2ggdG8geW91IHdhbnQgdG8gcmVzdG9yZSB0aGlzIHNuYXBzaG90LiBUaGlzIGlzIHRoZSBzZWNvbmQgcGFydCBvZiBhbiBPcGxvZyB0aW1lc3RhbXAuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI09wTG9nSW5jXG4gICAqL1xuICByZWFkb25seSBvcExvZ0luYz86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgeW91IHBlcmZvcm1lZCBhIFBvaW50LWluLVRpbWUgcmVzdG9yZXMgYXQgYSB0aW1lIHNwZWNpZmllZCBieSBhIFVuaXggdGltZSBpbiBzZWNvbmRzIHNpbmNlIGVwb2NoLCBwb2ludEluVGltZVVUQ1NlY29uZHMgaW5kaWNhdGVzIHRoZSBVbml4IHRpbWUgdXNlZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjUG9pbnRJblRpbWVVdGNTZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBwb2ludEluVGltZVV0Y1NlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIHRhcmdldCBBdGxhcyBwcm9qZWN0IG9mIHRoZSByZXN0b3JlIGpvYi4gT25seSB2aXNpYmxlIGlmIGRlbGl2ZXJ5VHlwZSBpcyBhdXRvbWF0ZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI1RhcmdldFByb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgdGFyZ2V0UHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSB0YXJnZXQgQXRsYXMgY2x1c3RlciB0byB3aGljaCB0aGUgcmVzdG9yZSBqb2IgcmVzdG9yZXMgdGhlIHNuYXBzaG90LiBPbmx5IHZpc2libGUgaWYgZGVsaXZlcnlUeXBlIGlzIGF1dG9tYXRlZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjVGFyZ2V0Q2x1c3Rlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHRhcmdldENsdXN0ZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIHNldCB0byB0cnVlLCB0aGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2Ugd2lsbCB3YWl0IHVudGlsIHRoZSBqb2IgaXMgY29tcGxldGVkLCBXQVJOSU5HOiBpZiB0aGUgc25hcHNob3QgaGFzIGEgYmlnIGxvYWQgb2YgZGF0YSwgdGhlIGNsb3VkIGZvcm1hdGlvbiByZXNvdXJjZSBtaWdodCB0YWtlIGEgbG9uZyB0aW1lIHRvIGZpbmlzaCBsZWFkaW5nIHRvIGhpZ2ggY29zdHNcbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMjRW5hYmxlU3luY2hyb25vdXNDcmVhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlU3luY2hyb25vdXNDcmVhdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9wdGlvbnMgdGhhdCBuZWVkcyB0byBiZSBzZXQgdG8gY29udHJvbCB0aGUgc3luY2hyb25vdXMgY3JlYXRpb24gZmxvdywgdGhpcyBvcHRpb25zIG5lZWQgdG8gYmUgc2V0IGlmIEVuYWJsZVN5bmNocm9ub3VzQ3JlYXRpb24gaXMgc2UgdG8gVFJVRVxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyNTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgc3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnM/OiBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHMoXG4gIG9iajogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIEluc3RhbmNlVHlwZTogb2JqLmluc3RhbmNlVHlwZSxcbiAgICBJbnN0YW5jZU5hbWU6IG9iai5pbnN0YW5jZU5hbWUsXG4gICAgRGVsaXZlcnlUeXBlOiBvYmouZGVsaXZlcnlUeXBlLFxuICAgIFNuYXBzaG90SWQ6IG9iai5zbmFwc2hvdElkLFxuICAgIExpbmtzOiBvYmoubGlua3M/Lm1hcCgoeSkgPT4gdG9Kc29uX0NmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0xpbmtzKHkpKSxcbiAgICBPcExvZ1RzOiBvYmoub3BMb2dUcyxcbiAgICBPcExvZ0luYzogb2JqLm9wTG9nSW5jLFxuICAgIFBvaW50SW5UaW1lVXRjU2Vjb25kczogb2JqLnBvaW50SW5UaW1lVXRjU2Vjb25kcyxcbiAgICBUYXJnZXRQcm9qZWN0SWQ6IG9iai50YXJnZXRQcm9qZWN0SWQsXG4gICAgVGFyZ2V0Q2x1c3Rlck5hbWU6IG9iai50YXJnZXRDbHVzdGVyTmFtZSxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBFbmFibGVTeW5jaHJvbm91c0NyZWF0aW9uOiBvYmouZW5hYmxlU3luY2hyb25vdXNDcmVhdGlvbixcbiAgICBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9uczogdG9Kc29uX1N5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zKFxuICAgICAgb2JqLnN5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zXG4gICAgKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogVHlwZSBvZiBpbnN0YW5jZSBzcGVjaWZpZWQgb24gdGhlIEluc3RhbmNlIE5hbWUgc2VydmVybGVzcyBvciBjbHVzdGVyXG4gKlxuICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNJbnN0YW5jZVR5cGVcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzSW5zdGFuY2VUeXBlIHtcbiAgLyoqIHNlcnZlcmxlc3MgKi9cbiAgU0VSVkVSTEVTUyA9IFwic2VydmVybGVzc1wiLFxuICAvKiogY2x1c3RlciAqL1xuICBDTFVTVEVSID0gXCJjbHVzdGVyXCIsXG59XG5cbi8qKlxuICogVHlwZSBvZiByZXN0b3JlIGpvYiB0byBjcmVhdGUuVGhlIHZhbHVlIGNhbiBiZSBhbnkgb25lIG9mIGRvd25sb2FkLGF1dG9tYXRlZCBvciBwb2ludF9pbl90aW1lXG4gKlxuICogQHNjaGVtYSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNEZWxpdmVyeVR5cGVcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzRGVsaXZlcnlUeXBlIHtcbiAgLyoqIGRvd25sb2FkICovXG4gIERPV05MT0FEID0gXCJkb3dubG9hZFwiLFxuICAvKiogYXV0b21hdGVkICovXG4gIEFVVE9NQVRFRCA9IFwiYXV0b21hdGVkXCIsXG4gIC8qKiBwb2ludEluVGltZSAqL1xuICBQT0lOVF9JTl9USU1FID0gXCJwb2ludEluVGltZVwiLFxufVxuXG4vKipcbiAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzTGlua3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNMaW5rcyB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0xpbmtzI1JlbFxuICAgKi9cbiAgcmVhZG9ubHkgcmVsPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0xpbmtzI0hyZWZcbiAgICovXG4gIHJlYWRvbmx5IGhyZWY/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wc0xpbmtzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNMaW5rcyhcbiAgb2JqOiBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzUHJvcHNMaW5rcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFJlbDogb2JqLnJlbCxcbiAgICBIcmVmOiBvYmouaHJlZixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogT3B0aW9ucyB0aGF0IG5lZWRzIHRvIGJlIHNldCB0byBjb250cm9sIHRoZSBzeW5jaHJvbm91cyBjcmVhdGlvbiBmbG93LCB0aGlzIG9wdGlvbnMgbmVlZCB0byBiZSBzZXQgaWYgRW5hYmxlU3luY2hyb25vdXNDcmVhdGlvbiBpcyBzZSB0byBUUlVFXG4gKlxuICogQHNjaGVtYSBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFN5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBhbW91bnQgb2YgdGltZSB0aGUgcHJvY2VzcyB3aWxsIHdhaXQgdW50aWwgZXhpdGluZyB3aXRoIGEgc3VjY2VzcywgZGVmYXVsdCAoMTIwMCBzZWNvbmRzKVxuICAgKlxuICAgKiBAc2NoZW1hIFN5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zI1RpbWVPdXRJblNlY29uZHNcbiAgICovXG4gIHJlYWRvbmx5IHRpbWVPdXRJblNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFJlcHJlc2VudHMgdGhlIHRpbWUgaW50ZXJ2YWwsIG1lYXN1cmVkIGluIHNlY29uZHMsIGZvciB0aGUgc3luY2hyb25vdXMgcHJvY2VzcyB0byB3YWl0IGJlZm9yZSBjaGVja2luZyBhZ2FpbiB0byB2ZXJpZnkgaWYgdGhlIGpvYiBoYXMgYmVlbiBjb21wbGV0ZWQuIGV4YW1wbGU6IGlmIHNldCB0byAyMCwgaXQgd2lsbCBjaGVrIGV2ZXJ5IDIwIHNlY29uZHMgaWYgdGhlIHJlc291cmNlIGlzIGNvbXBsZXRlZCwgZGVmYXVsdCAoMzAgc2Vjb25kcylcbiAgICpcbiAgICogQHNjaGVtYSBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucyNDYWxsYmFja0RlbGF5U2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgY2FsbGJhY2tEZWxheVNlY29uZHM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIGlmIHNldCB0byB0cnVlLCB0aGUgcHJvY2VzcyB3aWxsIHJldHVybiBzdWNjZXNzLCBpbiB0aGUgZXZlbnQgb2YgYSB0aW1lT3V0LCBkZWZhdWx0IGZhbHNlXG4gICAqXG4gICAqIEBzY2hlbWEgU3luY2hyb25vdXNDcmVhdGlvbk9wdGlvbnMjUmV0dXJuU3VjY2Vzc0lmVGltZU91dFxuICAgKi9cbiAgcmVhZG9ubHkgcmV0dXJuU3VjY2Vzc0lmVGltZU91dD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N5bmNocm9ub3VzQ3JlYXRpb25PcHRpb25zJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucyhcbiAgb2JqOiBTeW5jaHJvbm91c0NyZWF0aW9uT3B0aW9ucyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFRpbWVPdXRJblNlY29uZHM6IG9iai50aW1lT3V0SW5TZWNvbmRzLFxuICAgIENhbGxiYWNrRGVsYXlTZWNvbmRzOiBvYmouY2FsbGJhY2tEZWxheVNlY29uZHMsXG4gICAgUmV0dXJuU3VjY2Vzc0lmVGltZU91dDogb2JqLnJldHVyblN1Y2Nlc3NJZlRpbWVPdXQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2tVcFJlc3RvcmVKb2JzYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2tVcFJlc3RvcmVKb2JzXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5DbG91ZEJhY2tVcFJlc3RvcmVKb2JzIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnNcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9icy5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnMuRGVsaXZlcnlVcmxgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckRlbGl2ZXJ5VXJsOiBzdHJpbmdbXTtcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnMuQ2FuY2VsbGVkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJDYW5jZWxsZWQ6IGNkay5JUmVzb2x2YWJsZTtcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnMuRmFpbGVkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJGYWlsZWQ6IGNkay5JUmVzb2x2YWJsZTtcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnMuRXhwaXJlZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRXhwaXJlZDogY2RrLklSZXNvbHZhYmxlO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9icy5FeHBpcmVzQXRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckV4cGlyZXNBdDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrVXBSZXN0b3JlSm9icy5GaW5pc2hlZEF0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJGaW5pc2hlZEF0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2tVcFJlc3RvcmVKb2JzLlRpbWVzdGFtcGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyVGltZXN0YW1wOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja1VwUmVzdG9yZUpvYnNgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9ic1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuQ2xvdWRCYWNrVXBSZXN0b3JlSm9icy5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmbkNsb3VkQmFja1VwUmVzdG9yZUpvYnNQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRySWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJZFwiKSk7XG4gICAgdGhpcy5hdHRyRGVsaXZlcnlVcmwgPSBjZGsuVG9rZW4uYXNMaXN0KHRoaXMuZ2V0QXR0KFwiRGVsaXZlcnlVcmxcIikpO1xuICAgIHRoaXMuYXR0ckNhbmNlbGxlZCA9IHRoaXMuZ2V0QXR0KFwiQ2FuY2VsbGVkXCIpO1xuICAgIHRoaXMuYXR0ckZhaWxlZCA9IHRoaXMuZ2V0QXR0KFwiRmFpbGVkXCIpO1xuICAgIHRoaXMuYXR0ckV4cGlyZWQgPSB0aGlzLmdldEF0dChcIkV4cGlyZWRcIik7XG4gICAgdGhpcy5hdHRyRXhwaXJlc0F0ID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiRXhwaXJlc0F0XCIpKTtcbiAgICB0aGlzLmF0dHJGaW5pc2hlZEF0ID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiRmluaXNoZWRBdFwiKSk7XG4gICAgdGhpcy5hdHRyVGltZXN0YW1wID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiVGltZXN0YW1wXCIpKTtcbiAgfVxufVxuIl19

@@ -10,13 +10,7 @@ import * as cdk from "aws-cdk-lib";

/**
* Unique identifier of the snapshot.
* The unique identifier of the project for the Atlas cluster.
*
* @schema CfnCloudBackupScheduleProps#Id
*/
readonly id?: string;
/**
* Unique 24-hexadecimal digit string that identifies your project.
*
* @schema CfnCloudBackupScheduleProps#ProjectId
*/
readonly projectId: string;
readonly projectId?: string;
/**

@@ -27,4 +21,10 @@ * The name of the Atlas cluster that contains the snapshots you want to retrieve.

*/
readonly clusterName: string;
readonly clusterName?: string;
/**
* Unique identifier of the snapshot.
*
* @schema CfnCloudBackupScheduleProps#Id
*/
readonly id?: string;
/**
* Flag that indicates whether automatic export of cloud backup snapshots to the AWS bucket is enabled.

@@ -34,3 +34,3 @@ *

*/
readonly autoExportEnabled?: boolean;
readonly autoExportEnabled: boolean;
/**

@@ -118,3 +118,3 @@ * Specify true to use organization and project names instead of organization and project UUIDs in the path for the metadata files that Atlas uploads to your S3 bucket after it finishes exporting the snapshots.

/**
* Frequency associated with the export policy. Value can be daily, weekly, or monthly.
* Frequency associated with the export policy. Value can be daily, weekly, monthly or yearly.
*

@@ -200,2 +200,4 @@ * @schema Export#FrequencyType

/**
* Unique 24-hexadecimal digit string that identifies this backup policy. The policy id can be retrieved by running: atlas backups schedule describe "${clusterName}" --projectId "${projectId}" | jq -r '.policies[0].id'
*
* @schema ApiPolicyView#ID

@@ -245,3 +247,3 @@ */

/**
* Frequency associated with the backup policy item. One of the following values: hourly, daily, weekly or monthly.
* Frequency associated with the backup policy item. One of the following values: hourly, daily, weekly, monthly or yearly.
*

@@ -264,3 +266,3 @@ * @schema ApiPolicyItemView#FrequencyType

/**
* Metric of duration of the backup policy item: days, weeks, or months.
* Metric of duration of the backup policy item: days, weeks, months or years.
*

@@ -267,0 +269,0 @@ * @schema ApiPolicyItemView#RetentionUnit

@@ -17,5 +17,5 @@ "use strict";

const result = {
Id: obj.id,
ProjectId: obj.projectId,
ClusterName: obj.clusterName,
Id: obj.id,
AutoExportEnabled: obj.autoExportEnabled,

@@ -168,3 +168,3 @@ UseOrgAndGroupNamesInExportPrefix: obj.useOrgAndGroupNamesInExportPrefix,

_a = JSII_RTTI_SYMBOL_1;
CfnCloudBackupSchedule[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackupSchedule", version: "3.7.2" };
CfnCloudBackupSchedule[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackupSchedule", version: "3.8.0" };
/**

@@ -174,2 +174,2 @@ * The CloudFormation resource type name for this resource class.

CfnCloudBackupSchedule.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::CloudBackupSchedule";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1zY2hlZHVsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFtSG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtDQUFrQyxDQUNoRCxHQUE0QztJQUU1QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNWLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7UUFDNUIsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLGlCQUFpQjtRQUN4QyxpQ0FBaUMsRUFBRSxHQUFHLENBQUMsaUNBQWlDO1FBQ3hFLE1BQU0sRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUN4Qyx3Q0FBd0MsQ0FBQyxDQUFDLENBQUMsQ0FDNUM7UUFDRCxtQkFBbUIsRUFBRSxHQUFHLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDdEQsaUNBQWlDLENBQUMsQ0FBQyxDQUFDLENBQ3JDO1FBQ0QsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCO1FBQzFDLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7UUFDaEQsaUJBQWlCLEVBQUUs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QUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWxCRCw0REFrQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBcUJ6RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFrQztRQUVsQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxzQkFBc0IsQ0FBQyxzQkFBc0I7WUFDbkQsVUFBVSxFQUFFLGtDQUFrQyxDQUFDLEtBQUssQ0FBRTtTQUN2RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7O0FBMUNILHdEQTJDQzs7O0FBMUNDOztHQUVHO0FBQ29CLDZDQUFzQixHQUMzQyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQW4gZXhhbXBsZSByZXNvdXJjZSBzY2hlbWEgZGVtb25zdHJhdGluZyBzb21lIGJhc2ljIGNvbnN0cnVjdHMgYW5kIHZhbGlkYXRpb24gcnVsZXMuXG4gKlxuICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMge1xuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHNuYXBzaG90LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNJZFxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEF0bGFzIGNsdXN0ZXIgdGhhdCBjb250YWlucyB0aGUgc25hcHNob3RzIHlvdSB3YW50IHRvIHJldHJpZXZlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNDbHVzdGVyTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgY2x1c3Rlck5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGF1dG9tYXRpYyBleHBvcnQgb2YgY2xvdWQgYmFja3VwIHNuYXBzaG90cyB0byB0aGUgQVdTIGJ1Y2tldCBpcyBlbmFibGVkLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNBdXRvRXhwb3J0RW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0V4cG9ydEVuYWJsZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZ5IHRydWUgdG8gdXNlIG9yZ2FuaXphdGlvbiBhbmQgcHJvamVjdCBuYW1lcyBpbnN0ZWFkIG9mIG9yZ2FuaXphdGlvbiBhbmQgcHJvamVjdCBVVUlEcyBpbiB0aGUgcGF0aCBmb3IgdGhlIG1ldGFkYXRhIGZpbGVzIHRoYXQgQXRsYXMgdXBsb2FkcyB0byB5b3VyIFMzIGJ1Y2tldCBhZnRlciBpdCBmaW5pc2hlcyBleHBvcnRpbmcgdGhlIHNuYXBzaG90cy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjVXNlT3JnQW5kR3JvdXBOYW1lc0luRXhwb3J0UHJlZml4XG4gICAqL1xuICByZWFkb25seSB1c2VPcmdBbmRHcm91cE5hbWVzSW5FeHBvcnRQcmVmaXg/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQb2xpY3kgZm9yIGF1dG9tYXRpY2FsbHkgZXhwb3J0aW5nIGNsb3VkIGJhY2t1cCBzbmFwc2hvdHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI0V4cG9ydFxuICAgKi9cbiAgcmVhZG9ubHkgZXhwb3J0PzogRXhwb3J0O1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgYSBkb2N1bWVudCBmb3IgZWFjaCBjb3B5IHNldHRpbmcgaXRlbSBpbiB0aGUgZGVzaXJlZCBiYWNrdXAgcG9saWN5LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNDb3B5U2V0dGluZ3NcbiAgICovXG4gIHJlYWRvbmx5IGNvcHlTZXR0aW5ncz86IEFwaUF0bGFzRGlza0JhY2t1cENvcHlTZXR0aW5nVmlld1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgYSBkb2N1bWVudCBmb3IgZWFjaCBkZWxldGVkIGNvcHkgc2V0dGluZyB3aG9zZSBiYWNrdXAgY29waWVzIHlvdSB3YW50IHRvIGRlbGV0ZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjRGVsZXRlQ29waWVkQmFja3Vwc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQ29waWVkQmFja3Vwcz86IEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3W107XG5cbiAgLyoqXG4gICAqIFJ1bGVzIHNldCBmb3IgdGhpcyBiYWNrdXAgc2NoZWR1bGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI1BvbGljaWVzXG4gICAqL1xuICByZWFkb25seSBwb2xpY2llcz86IEFwaVBvbGljeVZpZXdbXTtcblxuICAvKipcbiAgICogVVRDIEhvdXIgb2YgZGF5IGJldHdlZW4gMCBhbmQgMjMgcmVwcmVzZW50aW5nIHdoaWNoIGhvdXIgb2YgdGhlIGRheSB0aGF0IEF0bGFzIHRha2VzIGEgc25hcHNob3RcbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjUmVmZXJlbmNlSG91ck9mRGF5XG4gICAqL1xuICByZWFkb25seSByZWZlcmVuY2VIb3VyT2ZEYXk/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFVUQyBNaW51dGUgb2YgZGF5IGJldHdlZW4gMCBhbmQgNTkgcmVwcmVzZW50aW5nIHdoaWNoIG1pbnV0ZSBvZiB0aGUgcmVmZXJlbmNlSG91ck9mRGF5IHRoYXQgQXRsYXMgdGFrZXMgdGhlIHNuYXBzaG90LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNSZWZlcmVuY2VNaW51dGVPZkhvdXJcbiAgICovXG4gIHJlYWRvbmx5IHJlZmVyZW5jZU1pbnV0ZU9mSG91cj86IG51bWJlcjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGRheXMgYmFjayBpbiB0aW1lIHlvdSBjYW4gcmVzdG9yZSB0byB3aXRoIENvbnRpbnVvdXMgQ2xvdWQgQmFja3VwIGFjY3VyYWN5LiBNdXN0IGJlIGEgcG9zaXRpdmUsIG5vbi16ZXJvIGludGVnZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI1Jlc3RvcmVXaW5kb3dEYXlzXG4gICAqL1xuICByZWFkb25seSByZXN0b3JlV2luZG93RGF5cz86IG51bWJlcjtcblxuICAvKipcbiAgICogRmxhZyBpbmRpY2F0aW5nIGlmIHVwZGF0ZXMgdG8gcmV0ZW50aW9uIGluIHRoZSBiYWNrdXAgcG9saWN5IHdlcmUgYXBwbGllZCB0byBzbmFwc2hvdHMgdGhhdCBBdGxhcyB0b29rIGVhcmxpZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI1VwZGF0ZVNuYXBzaG90c1xuICAgKi9cbiAgcmVhZG9ubHkgdXBkYXRlU25hcHNob3RzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogUHJvZmlsZSB1c2VkIHRvIHByb3ZpZGUgY3JlZGVudGlhbHMgaW5mb3JtYXRpb24sIChhIHNlY3JldCB3aXRoIHRoZSBjZm4vYXRsYXMvcHJvZmlsZS97UHJvZmlsZX0sIGlzIHJlcXVpcmVkKSwgaWYgbm90IHByb3ZpZGVkIGRlZmF1bHQgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIG9uZSBvciBtb3JlIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvcnMgKFVSTHMpIHRoYXQgcG9pbnQgdG8gQVBJIHN1Yi1yZXNvdXJjZXMsIHJlbGF0ZWQgQVBJIHJlc291cmNlcywgb3IgYm90aC4gUkZDIDU5ODggb3V0bGluZXMgdGhlc2UgcmVsYXRpb25zaGlwcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjTGlua3NcbiAgICovXG4gIHJlYWRvbmx5IGxpbmtzPzogTGlua1tdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyhcbiAgb2JqOiBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBJZDogb2JqLmlkLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBDbHVzdGVyTmFtZTogb2JqLmNsdXN0ZXJOYW1lLFxuICAgIEF1dG9FeHBvcnRFbmFibGVkOiBvYmouYXV0b0V4cG9ydEVuYWJsZWQsXG4gICAgVXNlT3JnQW5kR3JvdXBOYW1lc0luRXhwb3J0UHJlZml4OiBvYmoudXNlT3JnQW5kR3JvdXBOYW1lc0luRXhwb3J0UHJlZml4LFxuICAgIEV4cG9ydDogdG9Kc29uX0V4cG9ydChvYmouZXhwb3J0KSxcbiAgICBDb3B5U2V0dGluZ3M6IG9iai5jb3B5U2V0dGluZ3M/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9BcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcoeSlcbiAgICApLFxuICAgIERlbGV0ZUNvcGllZEJhY2t1cHM6IG9iai5kZWxldGVDb3BpZWRCYWNrdXBzPy5tYXAoKHkpID0+XG4gICAgICB0b0pzb25fQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXcoeSlcbiAgICApLFxuICAgIFBvbGljaWVzOiBvYmoucG9saWNpZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX0FwaVBvbGljeVZpZXcoeSkpLFxuICAgIFJlZmVyZW5jZUhvdXJPZkRheTogb2JqLnJlZmVyZW5jZUhvdXJPZkRheSxcbiAgICBSZWZlcmVuY2VNaW51dGVPZkhvdXI6IG9iai5yZWZlcmVuY2VNaW51dGVPZkhvdXIsXG4gICAgUmVzdG9yZVdpbmRvd0RheXM6IG9iai5yZXN0b3JlV2luZG93RGF5cyxcbiAgICBVcGRhdGVTbmFwc2hvdHM6IG9iai51cGRhdGVTbmFwc2hvdHMsXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgTGlua3M6IG9iai5saW5rcz8ubWFwKCh5KSA9PiB0b0pzb25fTGluayh5KSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRXhwb3J0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRXhwb3J0IHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBBV1MgYnVja2V0IHRvIGV4cG9ydCB0aGUgY2xvdWQgYmFja3VwIHNuYXBzaG90IHRvXG4gICAqXG4gICAqIEBzY2hlbWEgRXhwb3J0I0V4cG9ydEJ1Y2tldElkXG4gICAqL1xuICByZWFkb25seSBleHBvcnRCdWNrZXRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogRnJlcXVlbmN5IGFzc29jaWF0ZWQgd2l0aCB0aGUgZXhwb3J0IHBvbGljeS4gVmFsdWUgY2FuIGJlIGRhaWx5LCB3ZWVrbHksIG9yIG1vbnRobHkuXG4gICAqXG4gICAqIEBzY2hlbWEgRXhwb3J0I0ZyZXF1ZW5jeVR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGZyZXF1ZW5jeVR5cGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0V4cG9ydCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fRXhwb3J0KFxuICBvYmo6IEV4cG9ydCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEV4cG9ydEJ1Y2tldElkOiBvYmouZXhwb3J0QnVja2V0SWQsXG4gICAgRnJlcXVlbmN5VHlwZTogb2JqLmZyZXF1ZW5jeVR5cGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3IHtcbiAgLyoqXG4gICAqIEEgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjbG91ZCBwcm92aWRlciB0aGF0IHN0b3JlcyB0aGUgc25hcHNob3QgY29weS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcjQ2xvdWRQcm92aWRlclxuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRQcm92aWRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGFyZ2V0IHJlZ2lvbiB0byBjb3B5IHNuYXBzaG90cyBiZWxvbmdpbmcgdG8gcmVwbGljYXRpb25TcGVjSWQgdG8uXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3I1JlZ2lvbk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSByZXBsaWNhdGlvbiBvYmplY3QgZm9yIGEgem9uZSBpbiBhIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3I1JlcGxpY2F0aW9uU3BlY0lkXG4gICAqL1xuICByZWFkb25seSByZXBsaWNhdGlvblNwZWNJZD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRvIGNvcHkgdGhlIG9wbG9ncyB0byB0aGUgdGFyZ2V0IHJlZ2lvbi5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcjU2hvdWxkQ29weU9wbG9nc1xuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkQ29weU9wbG9ncz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBkZXNjcmliZXMgd2hpY2ggdHlwZXMgb2Ygc25hcHNob3RzIHRvIGNvcHkuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3I0ZyZXF1ZW5jaWVzXG4gICAqL1xuICByZWFkb25seSBmcmVxdWVuY2llcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaUF0bGFzRGlza0JhY2t1cENvcHlTZXR0aW5nVmlldyhcbiAgb2JqOiBBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDbG91ZFByb3ZpZGVyOiBvYmouY2xvdWRQcm92aWRlcixcbiAgICBSZWdpb25OYW1lOiBvYmoucmVnaW9uTmFtZSxcbiAgICBSZXBsaWNhdGlvblNwZWNJZDogb2JqLnJlcGxpY2F0aW9uU3BlY0lkLFxuICAgIFNob3VsZENvcHlPcGxvZ3M6IG9iai5zaG91bGRDb3B5T3Bsb2dzLFxuICAgIEZyZXF1ZW5jaWVzOiBvYmouZnJlcXVlbmNpZXM/Lm1hcCgoeSkgPT4geSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlEZWxldGVDb3BpZWRCYWNrdXBzVmlldyB7XG4gIC8qKlxuICAgKiBBIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY2xvdWQgcHJvdmlkZXIgZm9yIHRoZSBkZWxldGVkIGNvcHkgc2V0dGluZyB3aG9zZSBiYWNrdXAgY29waWVzIHlvdSB3YW50IHRvIGRlbGV0ZVxuICAgKlxuICAgKiBAc2NoZW1hIEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3I0Nsb3VkUHJvdmlkZXJcbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkUHJvdmlkZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhcmdldCByZWdpb24gZm9yIHRoZSBkZWxldGVkIGNvcHkgc2V0dGluZyB3aG9zZSBiYWNrdXAgY29waWVzIHlvdSB3YW50IHRvIGRlbGV0ZS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlEZWxldGVDb3BpZWRCYWNrdXBzVmlldyNSZWdpb25OYW1lXG4gICAqL1xuICByZWFkb25seSByZWdpb25OYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcmVwbGljYXRpb24gb2JqZWN0IGZvciBhIHpvbmUgaW4gYSBjbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3I1JlcGxpY2F0aW9uU3BlY0lkXG4gICAqL1xuICByZWFkb25seSByZXBsaWNhdGlvblNwZWNJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3KFxuICBvYmo6IEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2xvdWRQcm92aWRlcjogb2JqLmNsb3VkUHJvdmlkZXIsXG4gICAgUmVnaW9uTmFtZTogb2JqLnJlZ2lvbk5hbWUsXG4gICAgUmVwbGljYXRpb25TcGVjSWQ6IG9iai5yZXBsaWNhdGlvblNwZWNJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBcGlQb2xpY3lWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpUG9saWN5VmlldyB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIEFwaVBvbGljeVZpZXcjSURcbiAgICovXG4gIHJlYWRvbmx5IGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIEFwaVBvbGljeVZpZXcjUG9saWN5SXRlbXNcbiAgICovXG4gIHJlYWRvbmx5IHBvbGljeUl0ZW1zPzogQXBpUG9saWN5SXRlbVZpZXdbXTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpUG9saWN5VmlldycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXBpUG9saWN5VmlldyhcbiAgb2JqOiBBcGlQb2xpY3lWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgSUQ6IG9iai5pZCxcbiAgICBQb2xpY3lJdGVtczogb2JqLnBvbGljeUl0ZW1zPy5tYXAoKHkpID0+IHRvSnNvbl9BcGlQb2xpY3lJdGVtVmlldyh5KSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgTGlua1xuICovXG5leHBvcnQgaW50ZXJmYWNlIExpbmsge1xuICAvKipcbiAgICogVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHRoYXQgcG9pbnRzIGFub3RoZXIgQVBJIHJlc291cmNlIHRvIHdoaWNoIHRoaXMgcmVzcG9uc2UgaGFzIHNvbWUgcmVsYXRpb25zaGlwLiBUaGlzIFVSTCBvZnRlbiBiZWdpbnMgd2l0aCBgaHR0cHM6Ly9tbXMubW9uZ29kYi5jb21gLlxuICAgKlxuICAgKiBAc2NoZW1hIExpbmsjSHJlZlxuICAgKi9cbiAgcmVhZG9ubHkgaHJlZj86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9yIChVUkwpIHRoYXQgZGVmaW5lcyB0aGUgc2VtYW50aWMgcmVsYXRpb25zaGlwIGJldHdlZW4gdGhpcyByZXNvdXJjZSBhbmQgYW5vdGhlciBBUEkgcmVzb3VyY2UuIFRoaXMgVVJMIG9mdGVuIGJlZ2lucyB3aXRoIGBodHRwczovL21tcy5tb25nb2RiLmNvbWAuXG4gICAqXG4gICAqIEBzY2hlbWEgTGluayNSZWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnTGluaycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fTGluayhcbiAgb2JqOiBMaW5rIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgSHJlZjogb2JqLmhyZWYsXG4gICAgUmVsOiBvYmoucmVsLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIEFwaVBvbGljeUl0ZW1WaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpUG9saWN5SXRlbVZpZXcge1xuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGJhY2t1cCBwb2xpY3kgaXRlbS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lJdGVtVmlldyNJRFxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZyZXF1ZW5jeSBhc3NvY2lhdGVkIHdpdGggdGhlIGJhY2t1cCBwb2xpY3kgaXRlbS4gT25lIG9mIHRoZSBmb2xsb3dpbmcgdmFsdWVzOiBob3VybHksIGRhaWx5LCB3ZWVrbHkgb3IgbW9udGhseS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lJdGVtVmlldyNGcmVxdWVuY3lUeXBlXG4gICAqL1xuICByZWFkb25seSBmcmVxdWVuY3lUeXBlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXNpcmVkIGZyZXF1ZW5jeSBvZiB0aGUgbmV3IGJhY2t1cCBwb2xpY3kgaXRlbSBzcGVjaWZpZWQgYnkgZnJlcXVlbmN5VHlwZS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lJdGVtVmlldyNGcmVxdWVuY3lJbnRlcnZhbFxuICAgKi9cbiAgcmVhZG9ubHkgZnJlcXVlbmN5SW50ZXJ2YWw/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIER1cmF0aW9uIGZvciB3aGljaCB0aGUgYmFja3VwIGlzIGtlcHQuIEFzc29jaWF0ZWQgd2l0aCByZXRlbnRpb25Vbml0LlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaVBvbGljeUl0ZW1WaWV3I1JldGVudGlvblZhbHVlXG4gICAqL1xuICByZWFkb25seSByZXRlbnRpb25WYWx1ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogTWV0cmljIG9mIGR1cmF0aW9uIG9mIHRoZSBiYWNrdXAgcG9saWN5IGl0ZW06IGRheXMsIHdlZWtzLCBvciBtb250aHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpUG9saWN5SXRlbVZpZXcjUmV0ZW50aW9uVW5pdFxuICAgKi9cbiAgcmVhZG9ubHkgcmV0ZW50aW9uVW5pdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpUG9saWN5SXRlbVZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaVBvbGljeUl0ZW1WaWV3KFxuICBvYmo6IEFwaVBvbGljeUl0ZW1WaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgSUQ6IG9iai5pZCxcbiAgICBGcmVxdWVuY3lUeXBlOiBvYmouZnJlcXVlbmN5VHlwZSxcbiAgICBGcmVxdWVuY3lJbnRlcnZhbDogb2JqLmZyZXF1ZW5jeUludGVydmFsLFxuICAgIFJldGVudGlvblZhbHVlOiBvYmoucmV0ZW50aW9uVmFsdWUsXG4gICAgUmV0ZW50aW9uVW5pdDogb2JqLnJldGVudGlvblVuaXQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2t1cFNjaGVkdWxlYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2t1cFNjaGVkdWxlXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja3VwU2NoZWR1bGVcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrdXBTY2hlZHVsZS5DbHVzdGVySWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckNsdXN0ZXJJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrdXBTY2hlZHVsZS5OZXh0U25hcHNob3RgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ck5leHRTbmFwc2hvdDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2t1cFNjaGVkdWxlYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkNsb3VkQmFja3VwU2NoZWR1bGUuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0ckNsdXN0ZXJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkNsdXN0ZXJJZFwiKSk7XG4gICAgdGhpcy5hdHRyTmV4dFNuYXBzaG90ID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiTmV4dFNuYXBzaG90XCIpKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2Nsb3VkLWJhY2t1cC1zY2hlZHVsZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFtSG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtDQUFrQyxDQUNoRCxHQUE0QztJQUU1QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7UUFDNUIsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1FBQ1YsaUJBQWlCLEVBQUUsR0FBRyxDQUFDLGlCQUFpQjtRQUN4QyxpQ0FBaUMsRUFBRSxHQUFHLENBQUMsaUNBQWlDO1FBQ3hFLE1BQU0sRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVksRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUN4Qyx3Q0FBd0MsQ0FBQyxDQUFDLENBQUMsQ0FDNUM7UUFDRCxtQkFBbUIsRUFBRSxHQUFHLENBQUMsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDdEQsaUNBQWlDLENBQUMsQ0FBQyxDQUFDLENBQ3JDO1FBQ0QsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUMzRCxrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCO1FBQzFDLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7UUFDaEQsaUJBQWlCLEVBQUUs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QUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWxCRCw0REFrQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBcUJ6RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFrQztRQUVsQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxzQkFBc0IsQ0FBQyxzQkFBc0I7WUFDbkQsVUFBVSxFQUFFLGtDQUFrQyxDQUFDLEtBQUssQ0FBRTtTQUN2RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7O0FBMUNILHdEQTJDQzs7O0FBMUNDOztHQUVHO0FBQ29CLDZDQUFzQixHQUMzQyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQW4gZXhhbXBsZSByZXNvdXJjZSBzY2hlbWEgZGVtb25zdHJhdGluZyBzb21lIGJhc2ljIGNvbnN0cnVjdHMgYW5kIHZhbGlkYXRpb24gcnVsZXMuXG4gKlxuICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMge1xuICAvKipcbiAgICogVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBwcm9qZWN0IGZvciB0aGUgQXRsYXMgY2x1c3Rlci5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBBdGxhcyBjbHVzdGVyIHRoYXQgY29udGFpbnMgdGhlIHNuYXBzaG90cyB5b3Ugd2FudCB0byByZXRyaWV2ZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjQ2x1c3Rlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGNsdXN0ZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgaWRlbnRpZmllciBvZiB0aGUgc25hcHNob3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI0lkXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIGF1dG9tYXRpYyBleHBvcnQgb2YgY2xvdWQgYmFja3VwIHNuYXBzaG90cyB0byB0aGUgQVdTIGJ1Y2tldCBpcyBlbmFibGVkLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNBdXRvRXhwb3J0RW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b0V4cG9ydEVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFNwZWNpZnkgdHJ1ZSB0byB1c2Ugb3JnYW5pemF0aW9uIGFuZCBwcm9qZWN0IG5hbWVzIGluc3RlYWQgb2Ygb3JnYW5pemF0aW9uIGFuZCBwcm9qZWN0IFVVSURzIGluIHRoZSBwYXRoIGZvciB0aGUgbWV0YWRhdGEgZmlsZXMgdGhhdCBBdGxhcyB1cGxvYWRzIHRvIHlvdXIgUzMgYnVja2V0IGFmdGVyIGl0IGZpbmlzaGVzIGV4cG9ydGluZyB0aGUgc25hcHNob3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNVc2VPcmdBbmRHcm91cE5hbWVzSW5FeHBvcnRQcmVmaXhcbiAgICovXG4gIHJlYWRvbmx5IHVzZU9yZ0FuZEdyb3VwTmFtZXNJbkV4cG9ydFByZWZpeD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFBvbGljeSBmb3IgYXV0b21hdGljYWxseSBleHBvcnRpbmcgY2xvdWQgYmFja3VwIHNuYXBzaG90cy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjRXhwb3J0XG4gICAqL1xuICByZWFkb25seSBleHBvcnQ/OiBFeHBvcnQ7XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyBhIGRvY3VtZW50IGZvciBlYWNoIGNvcHkgc2V0dGluZyBpdGVtIGluIHRoZSBkZXNpcmVkIGJhY2t1cCBwb2xpY3kuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI0NvcHlTZXR0aW5nc1xuICAgKi9cbiAgcmVhZG9ubHkgY29weVNldHRpbmdzPzogQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3W107XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyBhIGRvY3VtZW50IGZvciBlYWNoIGRlbGV0ZWQgY29weSBzZXR0aW5nIHdob3NlIGJhY2t1cCBjb3BpZXMgeW91IHdhbnQgdG8gZGVsZXRlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNEZWxldGVDb3BpZWRCYWNrdXBzXG4gICAqL1xuICByZWFkb25seSBkZWxldGVDb3BpZWRCYWNrdXBzPzogQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXdbXTtcblxuICAvKipcbiAgICogUnVsZXMgc2V0IGZvciB0aGlzIGJhY2t1cCBzY2hlZHVsZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjUG9saWNpZXNcbiAgICovXG4gIHJlYWRvbmx5IHBvbGljaWVzPzogQXBpUG9saWN5Vmlld1tdO1xuXG4gIC8qKlxuICAgKiBVVEMgSG91ciBvZiBkYXkgYmV0d2VlbiAwIGFuZCAyMyByZXByZXNlbnRpbmcgd2hpY2ggaG91ciBvZiB0aGUgZGF5IHRoYXQgQXRsYXMgdGFrZXMgYSBzbmFwc2hvdFxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNSZWZlcmVuY2VIb3VyT2ZEYXlcbiAgICovXG4gIHJlYWRvbmx5IHJlZmVyZW5jZUhvdXJPZkRheT86IG51bWJlcjtcblxuICAvKipcbiAgICogVVRDIE1pbnV0ZSBvZiBkYXkgYmV0d2VlbiAwIGFuZCA1OSByZXByZXNlbnRpbmcgd2hpY2ggbWludXRlIG9mIHRoZSByZWZlcmVuY2VIb3VyT2ZEYXkgdGhhdCBBdGxhcyB0YWtlcyB0aGUgc25hcHNob3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI1JlZmVyZW5jZU1pbnV0ZU9mSG91clxuICAgKi9cbiAgcmVhZG9ubHkgcmVmZXJlbmNlTWludXRlT2ZIb3VyPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZGF5cyBiYWNrIGluIHRpbWUgeW91IGNhbiByZXN0b3JlIHRvIHdpdGggQ29udGludW91cyBDbG91ZCBCYWNrdXAgYWNjdXJhY3kuIE11c3QgYmUgYSBwb3NpdGl2ZSwgbm9uLXplcm8gaW50ZWdlci5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjUmVzdG9yZVdpbmRvd0RheXNcbiAgICovXG4gIHJlYWRvbmx5IHJlc3RvcmVXaW5kb3dEYXlzPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGbGFnIGluZGljYXRpbmcgaWYgdXBkYXRlcyB0byByZXRlbnRpb24gaW4gdGhlIGJhY2t1cCBwb2xpY3kgd2VyZSBhcHBsaWVkIHRvIHNuYXBzaG90cyB0aGF0IEF0bGFzIHRvb2sgZWFybGllci5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMjVXBkYXRlU25hcHNob3RzXG4gICAqL1xuICByZWFkb25seSB1cGRhdGVTbmFwc2hvdHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2Ygb25lIG9yIG1vcmUgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9ycyAoVVJMcykgdGhhdCBwb2ludCB0byBBUEkgc3ViLXJlc291cmNlcywgcmVsYXRlZCBBUEkgcmVzb3VyY2VzLCBvciBib3RoLiBSRkMgNTk4OCBvdXRsaW5lcyB0aGVzZSByZWxhdGlvbnNoaXBzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyNMaW5rc1xuICAgKi9cbiAgcmVhZG9ubHkgbGlua3M/OiBMaW5rW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuQ2xvdWRCYWNrdXBTY2hlZHVsZVByb3BzKFxuICBvYmo6IENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBDbHVzdGVyTmFtZTogb2JqLmNsdXN0ZXJOYW1lLFxuICAgIElkOiBvYmouaWQsXG4gICAgQXV0b0V4cG9ydEVuYWJsZWQ6IG9iai5hdXRvRXhwb3J0RW5hYmxlZCxcbiAgICBVc2VPcmdBbmRHcm91cE5hbWVzSW5FeHBvcnRQcmVmaXg6IG9iai51c2VPcmdBbmRHcm91cE5hbWVzSW5FeHBvcnRQcmVmaXgsXG4gICAgRXhwb3J0OiB0b0pzb25fRXhwb3J0KG9iai5leHBvcnQpLFxuICAgIENvcHlTZXR0aW5nczogb2JqLmNvcHlTZXR0aW5ncz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX0FwaUF0bGFzRGlza0JhY2t1cENvcHlTZXR0aW5nVmlldyh5KVxuICAgICksXG4gICAgRGVsZXRlQ29waWVkQmFja3Vwczogb2JqLmRlbGV0ZUNvcGllZEJhY2t1cHM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9BcGlEZWxldGVDb3BpZWRCYWNrdXBzVmlldyh5KVxuICAgICksXG4gICAgUG9saWNpZXM6IG9iai5wb2xpY2llcz8ubWFwKCh5KSA9PiB0b0pzb25fQXBpUG9saWN5Vmlldyh5KSksXG4gICAgUmVmZXJlbmNlSG91ck9mRGF5OiBvYmoucmVmZXJlbmNlSG91ck9mRGF5LFxuICAgIFJlZmVyZW5jZU1pbnV0ZU9mSG91cjogb2JqLnJlZmVyZW5jZU1pbnV0ZU9mSG91cixcbiAgICBSZXN0b3JlV2luZG93RGF5czogb2JqLnJlc3RvcmVXaW5kb3dEYXlzLFxuICAgIFVwZGF0ZVNuYXBzaG90czogb2JqLnVwZGF0ZVNuYXBzaG90cyxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBMaW5rczogb2JqLmxpbmtzPy5tYXAoKHkpID0+IHRvSnNvbl9MaW5rKHkpKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBFeHBvcnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFeHBvcnQge1xuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIEFXUyBidWNrZXQgdG8gZXhwb3J0IHRoZSBjbG91ZCBiYWNrdXAgc25hcHNob3QgdG9cbiAgICpcbiAgICogQHNjaGVtYSBFeHBvcnQjRXhwb3J0QnVja2V0SWRcbiAgICovXG4gIHJlYWRvbmx5IGV4cG9ydEJ1Y2tldElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGcmVxdWVuY3kgYXNzb2NpYXRlZCB3aXRoIHRoZSBleHBvcnQgcG9saWN5LiBWYWx1ZSBjYW4gYmUgZGFpbHksIHdlZWtseSwgbW9udGhseSBvciB5ZWFybHkuXG4gICAqXG4gICAqIEBzY2hlbWEgRXhwb3J0I0ZyZXF1ZW5jeVR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGZyZXF1ZW5jeVR5cGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0V4cG9ydCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fRXhwb3J0KFxuICBvYmo6IEV4cG9ydCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEV4cG9ydEJ1Y2tldElkOiBvYmouZXhwb3J0QnVja2V0SWQsXG4gICAgRnJlcXVlbmN5VHlwZTogb2JqLmZyZXF1ZW5jeVR5cGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3IHtcbiAgLyoqXG4gICAqIEEgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjbG91ZCBwcm92aWRlciB0aGF0IHN0b3JlcyB0aGUgc25hcHNob3QgY29weS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcjQ2xvdWRQcm92aWRlclxuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRQcm92aWRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogVGFyZ2V0IHJlZ2lvbiB0byBjb3B5IHNuYXBzaG90cyBiZWxvbmdpbmcgdG8gcmVwbGljYXRpb25TcGVjSWQgdG8uXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3I1JlZ2lvbk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSByZXBsaWNhdGlvbiBvYmplY3QgZm9yIGEgem9uZSBpbiBhIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3I1JlcGxpY2F0aW9uU3BlY0lkXG4gICAqL1xuICByZWFkb25seSByZXBsaWNhdGlvblNwZWNJZD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRvIGNvcHkgdGhlIG9wbG9ncyB0byB0aGUgdGFyZ2V0IHJlZ2lvbi5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcjU2hvdWxkQ29weU9wbG9nc1xuICAgKi9cbiAgcmVhZG9ubHkgc2hvdWxkQ29weU9wbG9ncz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBkZXNjcmliZXMgd2hpY2ggdHlwZXMgb2Ygc25hcHNob3RzIHRvIGNvcHkuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNEaXNrQmFja3VwQ29weVNldHRpbmdWaWV3I0ZyZXF1ZW5jaWVzXG4gICAqL1xuICByZWFkb25seSBmcmVxdWVuY2llcz86IHN0cmluZ1tdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaUF0bGFzRGlza0JhY2t1cENvcHlTZXR0aW5nVmlldyhcbiAgb2JqOiBBcGlBdGxhc0Rpc2tCYWNrdXBDb3B5U2V0dGluZ1ZpZXcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDbG91ZFByb3ZpZGVyOiBvYmouY2xvdWRQcm92aWRlcixcbiAgICBSZWdpb25OYW1lOiBvYmoucmVnaW9uTmFtZSxcbiAgICBSZXBsaWNhdGlvblNwZWNJZDogb2JqLnJlcGxpY2F0aW9uU3BlY0lkLFxuICAgIFNob3VsZENvcHlPcGxvZ3M6IG9iai5zaG91bGRDb3B5T3Bsb2dzLFxuICAgIEZyZXF1ZW5jaWVzOiBvYmouZnJlcXVlbmNpZXM/Lm1hcCgoeSkgPT4geSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlEZWxldGVDb3BpZWRCYWNrdXBzVmlldyB7XG4gIC8qKlxuICAgKiBBIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY2xvdWQgcHJvdmlkZXIgZm9yIHRoZSBkZWxldGVkIGNvcHkgc2V0dGluZyB3aG9zZSBiYWNrdXAgY29waWVzIHlvdSB3YW50IHRvIGRlbGV0ZVxuICAgKlxuICAgKiBAc2NoZW1hIEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3I0Nsb3VkUHJvdmlkZXJcbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkUHJvdmlkZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRhcmdldCByZWdpb24gZm9yIHRoZSBkZWxldGVkIGNvcHkgc2V0dGluZyB3aG9zZSBiYWNrdXAgY29waWVzIHlvdSB3YW50IHRvIGRlbGV0ZS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlEZWxldGVDb3BpZWRCYWNrdXBzVmlldyNSZWdpb25OYW1lXG4gICAqL1xuICByZWFkb25seSByZWdpb25OYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcmVwbGljYXRpb24gb2JqZWN0IGZvciBhIHpvbmUgaW4gYSBjbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3I1JlcGxpY2F0aW9uU3BlY0lkXG4gICAqL1xuICByZWFkb25seSByZXBsaWNhdGlvblNwZWNJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpRGVsZXRlQ29waWVkQmFja3Vwc1ZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3KFxuICBvYmo6IEFwaURlbGV0ZUNvcGllZEJhY2t1cHNWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2xvdWRQcm92aWRlcjogb2JqLmNsb3VkUHJvdmlkZXIsXG4gICAgUmVnaW9uTmFtZTogb2JqLnJlZ2lvbk5hbWUsXG4gICAgUmVwbGljYXRpb25TcGVjSWQ6IG9iai5yZXBsaWNhdGlvblNwZWNJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBcGlQb2xpY3lWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpUG9saWN5VmlldyB7XG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGlzIGJhY2t1cCBwb2xpY3kuIFRoZSBwb2xpY3kgaWQgY2FuIGJlIHJldHJpZXZlZCBieSBydW5uaW5nOiBhdGxhcyBiYWNrdXBzIHNjaGVkdWxlIGRlc2NyaWJlIFwiJHtjbHVzdGVyTmFtZX1cIiAtLXByb2plY3RJZCBcIiR7cHJvamVjdElkfVwiIHwganEgLXIgJy5wb2xpY2llc1swXS5pZCdcbiAgICpcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lWaWV3I0lEXG4gICAqL1xuICByZWFkb25seSBpZD86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lWaWV3I1BvbGljeUl0ZW1zXG4gICAqL1xuICByZWFkb25seSBwb2xpY3lJdGVtcz86IEFwaVBvbGljeUl0ZW1WaWV3W107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0FwaVBvbGljeVZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaVBvbGljeVZpZXcoXG4gIG9iajogQXBpUG9saWN5VmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIElEOiBvYmouaWQsXG4gICAgUG9saWN5SXRlbXM6IG9iai5wb2xpY3lJdGVtcz8ubWFwKCh5KSA9PiB0b0pzb25fQXBpUG9saWN5SXRlbVZpZXcoeSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIExpbmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaW5rIHtcbiAgLyoqXG4gICAqIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvciAoVVJMKSB0aGF0IHBvaW50cyBhbm90aGVyIEFQSSByZXNvdXJjZSB0byB3aGljaCB0aGlzIHJlc3BvbnNlIGhhcyBzb21lIHJlbGF0aW9uc2hpcC4gVGhpcyBVUkwgb2Z0ZW4gYmVnaW5zIHdpdGggYGh0dHBzOi8vbW1zLm1vbmdvZGIuY29tYC5cbiAgICpcbiAgICogQHNjaGVtYSBMaW5rI0hyZWZcbiAgICovXG4gIHJlYWRvbmx5IGhyZWY/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvciAoVVJMKSB0aGF0IGRlZmluZXMgdGhlIHNlbWFudGljIHJlbGF0aW9uc2hpcCBiZXR3ZWVuIHRoaXMgcmVzb3VyY2UgYW5kIGFub3RoZXIgQVBJIHJlc291cmNlLiBUaGlzIFVSTCBvZnRlbiBiZWdpbnMgd2l0aCBgaHR0cHM6Ly9tbXMubW9uZ29kYi5jb21gLlxuICAgKlxuICAgKiBAc2NoZW1hIExpbmsjUmVsXG4gICAqL1xuICByZWFkb25seSByZWw/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0xpbmsnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0xpbmsoXG4gIG9iajogTGluayB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEhyZWY6IG9iai5ocmVmLFxuICAgIFJlbDogb2JqLnJlbCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBcGlQb2xpY3lJdGVtVmlld1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwaVBvbGljeUl0ZW1WaWV3IHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBiYWNrdXAgcG9saWN5IGl0ZW0uXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpUG9saWN5SXRlbVZpZXcjSURcbiAgICovXG4gIHJlYWRvbmx5IGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGcmVxdWVuY3kgYXNzb2NpYXRlZCB3aXRoIHRoZSBiYWNrdXAgcG9saWN5IGl0ZW0uIE9uZSBvZiB0aGUgZm9sbG93aW5nIHZhbHVlczogaG91cmx5LCBkYWlseSwgd2Vla2x5LCBtb250aGx5IG9yIHllYXJseS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lJdGVtVmlldyNGcmVxdWVuY3lUeXBlXG4gICAqL1xuICByZWFkb25seSBmcmVxdWVuY3lUeXBlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXNpcmVkIGZyZXF1ZW5jeSBvZiB0aGUgbmV3IGJhY2t1cCBwb2xpY3kgaXRlbSBzcGVjaWZpZWQgYnkgZnJlcXVlbmN5VHlwZS5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlQb2xpY3lJdGVtVmlldyNGcmVxdWVuY3lJbnRlcnZhbFxuICAgKi9cbiAgcmVhZG9ubHkgZnJlcXVlbmN5SW50ZXJ2YWw/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIER1cmF0aW9uIGZvciB3aGljaCB0aGUgYmFja3VwIGlzIGtlcHQuIEFzc29jaWF0ZWQgd2l0aCByZXRlbnRpb25Vbml0LlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaVBvbGljeUl0ZW1WaWV3I1JldGVudGlvblZhbHVlXG4gICAqL1xuICByZWFkb25seSByZXRlbnRpb25WYWx1ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogTWV0cmljIG9mIGR1cmF0aW9uIG9mIHRoZSBiYWNrdXAgcG9saWN5IGl0ZW06IGRheXMsIHdlZWtzLCBtb250aHMgb3IgeWVhcnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpUG9saWN5SXRlbVZpZXcjUmV0ZW50aW9uVW5pdFxuICAgKi9cbiAgcmVhZG9ubHkgcmV0ZW50aW9uVW5pdD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpUG9saWN5SXRlbVZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaVBvbGljeUl0ZW1WaWV3KFxuICBvYmo6IEFwaVBvbGljeUl0ZW1WaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgSUQ6IG9iai5pZCxcbiAgICBGcmVxdWVuY3lUeXBlOiBvYmouZnJlcXVlbmN5VHlwZSxcbiAgICBGcmVxdWVuY3lJbnRlcnZhbDogb2JqLmZyZXF1ZW5jeUludGVydmFsLFxuICAgIFJldGVudGlvblZhbHVlOiBvYmoucmV0ZW50aW9uVmFsdWUsXG4gICAgUmV0ZW50aW9uVW5pdDogb2JqLnJldGVudGlvblVuaXQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2t1cFNjaGVkdWxlYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2t1cFNjaGVkdWxlXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5DbG91ZEJhY2t1cFNjaGVkdWxlIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkNsb3VkQmFja3VwU2NoZWR1bGVcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrdXBTY2hlZHVsZS5DbHVzdGVySWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckNsdXN0ZXJJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6Q2xvdWRCYWNrdXBTY2hlZHVsZS5OZXh0U25hcHNob3RgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ck5leHRTbmFwc2hvdDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpDbG91ZEJhY2t1cFNjaGVkdWxlYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmbkNsb3VkQmFja3VwU2NoZWR1bGVQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkNsb3VkQmFja3VwU2NoZWR1bGUuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5DbG91ZEJhY2t1cFNjaGVkdWxlUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0ckNsdXN0ZXJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkNsdXN0ZXJJZFwiKSk7XG4gICAgdGhpcy5hdHRyTmV4dFNuYXBzaG90ID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiTmV4dFNuYXBzaG90XCIpKTtcbiAgfVxufVxuIl19

@@ -52,3 +52,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnCloudBackupSnapshotExportBucket[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackupSnapshotExportBucket", version: "3.7.2" };
CfnCloudBackupSnapshotExportBucket[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackupSnapshotExportBucket", version: "3.8.0" };
/**

@@ -55,0 +55,0 @@ * The CloudFormation resource type name for this resource class.

@@ -230,3 +230,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnCloudBackupSnapshot[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackupSnapshot", version: "3.7.2" };
CfnCloudBackupSnapshot[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCloudBackupSnapshot", version: "3.8.0" };
/**

@@ -233,0 +233,0 @@ * The CloudFormation resource type name for this resource class.

@@ -83,3 +83,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnClusterOutageSimulation[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnClusterOutageSimulation", version: "3.7.2" };
CfnClusterOutageSimulation[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnClusterOutageSimulation", version: "3.8.0" };
/**

@@ -86,0 +86,0 @@ * The CloudFormation resource type name for this resource class.

@@ -101,3 +101,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnCustomDbRole[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCustomDbRole", version: "3.7.2" };
CfnCustomDbRole[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCustomDbRole", version: "3.8.0" };
/**

@@ -104,0 +104,0 @@ * The CloudFormation resource type name for this resource class.

@@ -50,3 +50,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnCustomDnsConfigurationClusterAws[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCustomDnsConfigurationClusterAws", version: "3.7.2" };
CfnCustomDnsConfigurationClusterAws[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnCustomDnsConfigurationClusterAws", version: "3.8.0" };
/**

@@ -53,0 +53,0 @@ * The CloudFormation resource type name for this resource class.

@@ -149,3 +149,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnDataLakePipeline[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnDataLakePipeline", version: "3.7.2" };
CfnDataLakePipeline[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnDataLakePipeline", version: "3.8.0" };
/**

@@ -152,0 +152,0 @@ * The CloudFormation resource type name for this resource class.

@@ -87,3 +87,3 @@ import * as cdk from "aws-cdk-lib";

/**
* Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role.
* Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role. Default value is `NONE`.
*

@@ -90,0 +90,0 @@ * @schema CfnDatabaseUserPropsAwsiamType

@@ -36,3 +36,3 @@ "use strict";

/**
* Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role.
* Human-readable label that indicates whether the new database user authenticates with the Amazon Web Services (AWS) Identity and Access Management (IAM) credentials associated with the user or the user's role. Default value is `NONE`.
*

@@ -164,3 +164,3 @@ * @schema CfnDatabaseUserPropsAwsiamType

_a = JSII_RTTI_SYMBOL_1;
CfnDatabaseUser[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnDatabaseUser", version: "3.7.2" };
CfnDatabaseUser[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnDatabaseUser", version: "3.8.0" };
/**

@@ -170,2 +170,2 @@ * The CloudFormation resource type name for this resource class.

CfnDatabaseUser.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::DatabaseUser";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2RhdGFiYXNlLXVzZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBOEZuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQiwyQkFBMkIsQ0FDekMsR0FBcUM7SUFFckMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWU7UUFDcEMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1FBQzFCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pELFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztLQUNyQixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9B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LEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxlQUFlLENBQUMsc0JBQXNCO1lBQzVDLFVBQVUsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUU7U0FDaEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUM3QyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQ2pDLENBQUM7SUFDSixDQUFDOztBQXZDSCwwQ0F3Q0M7OztBQXZDQzs7R0FFRztBQUNvQixzQ0FBc0IsR0FDM0MsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGVkaXRzLCBhbmQgcmVtb3ZlcyBkYXRhYmFzZSB1c2Vycy5cbiAqXG4gKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMge1xuICAvKipcbiAgICogRGF0ZSBhbmQgdGltZSB3aGVuIE1vbmdvREIgQ2xvdWQgZGVsZXRlcyB0aGUgdXNlci4gVGhpcyBwYXJhbWV0ZXIgZXhwcmVzc2VzIGl0cyB2YWx1ZSBpbiB0aGUgSVNPIDg2MDEgdGltZXN0YW1wIGZvcm1hdCBpbiBVVEMgYW5kIGNhbiBpbmNsdWRlIHRoZSB0aW1lIHpvbmUgZGVzaWduYXRpb24uIFlvdSBtdXN0IHNwZWNpZnkgYSBmdXR1cmUgZGF0ZSB0aGF0IGZhbGxzIHdpdGhpbiBvbmUgd2VlayBvZiBtYWtpbmcgdGhlIEFwcGxpY2F0aW9uIFByb2dyYW1taW5nIEludGVyZmFjZSAoQVBJKSByZXF1ZXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI0RlbGV0ZUFmdGVyRGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQWZ0ZXJEYXRlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSBuZXcgZGF0YWJhc2UgdXNlciBhdXRoZW50aWNhdGVzIHdpdGggdGhlIEFtYXpvbiBXZWIgU2VydmljZXMgKEFXUykgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50IChJQU0pIGNyZWRlbnRpYWxzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdXNlciBvciB0aGUgdXNlcidzIHJvbGUuIERlZmF1bHQgdmFsdWUgaXMgYE5PTkVgLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI0FXU0lBTVR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGF3c2lhbVR5cGU/OiBDZm5EYXRhYmFzZVVzZXJQcm9wc0F3c2lhbVR5cGU7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgZGF0YWJhc2UgYWdhaW5zdCB3aGljaCB0aGUgTW9uZ29EQiBkYXRhYmFzZSB1c2VyIGF1dGhlbnRpY2F0ZXMuIE1vbmdvREIgZGF0YWJhc2UgdXNlcnMgbXVzdCBwcm92aWRlIGJvdGggYSB1c2VybmFtZSBhbmQgYXV0aGVudGljYXRpb24gZGF0YWJhc2UgdG8gbG9nIGludG8gTW9uZ29EQi4gIERlZmF1bHQgdmFsdWUgaXMgYGFkbWluYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNEYXRhYmFzZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIGtleS12YWx1ZSBwYWlycyBmb3IgdGFnZ2luZyBhbmQgY2F0ZWdvcml6aW5nIHRoZSBNb25nb0RCIGRhdGFiYXNlIHVzZXIuIFRoZSBsYWJlbHMgdGhhdCB5b3UgZGVmaW5lIGRvIG5vdCBhcHBlYXIgaW4gdGhlIGNvbnNvbGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMjTGFiZWxzXG4gICAqL1xuICByZWFkb25seSBsYWJlbHM/OiBMYWJlbERlZmluaXRpb25bXTtcblxuICAvKipcbiAgICogTWV0aG9kIGJ5IHdoaWNoIHRoZSBwcm92aWRlZCB1c2VybmFtZSBpcyBhdXRoZW50aWNhdGVkLiBEZWZhdWx0IHZhbHVlIGlzIGBOT05FYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNMZGFwQXV0aFR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGxkYXBBdXRoVHlwZT86IENmbkRhdGFiYXNlVXNlclByb3BzTGRhcEF1dGhUeXBlO1xuXG4gIC8qKlxuICAgKiBNZXRob2QgdGhhdCBicmllZnMgd2hvIG93bnMgdGhlIGNlcnRpZmljYXRlIHByb3ZpZGVkLiBEZWZhdWx0IHZhbHVlIGlzIGBOT05FYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNYNTA5VHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgeDUwOVR5cGU/OiBDZm5EYXRhYmFzZVVzZXJQcm9wc1g1MDlUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlcuKAmXMgcGFzc3dvcmQuIFRoaXMgZmllbGQgaXMgbm90IGluY2x1ZGVkIGluIHRoZSBlbnRpdHkgcmV0dXJuZWQgZnJvbSB0aGUgc2VydmVyLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI1Bhc3N3b3JkXG4gICAqL1xuICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBBdGxhcyBQcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBwcm92aWRlcyB0aGUgcGFpcmluZ3Mgb2Ygb25lIHJvbGUgd2l0aCBvbmUgYXBwbGljYWJsZSBkYXRhYmFzZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM6IFJvbGVEZWZpbml0aW9uW107XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyBjbHVzdGVycyBhbmQgTW9uZ29EQiBBdGxhcyBEYXRhIExha2VzIHRoYXQgdGhpcyBkYXRhYmFzZSB1c2VyIGNhbiBhY2Nlc3MuIElmIG9taXR0ZWQsIE1vbmdvREIgQ2xvdWQgZ3JhbnRzIHRoZSBkYXRhYmFzZSB1c2VyIGFjY2VzcyB0byBhbGwgdGhlIGNsdXN0ZXJzIGFuZCBNb25nb0RCIEF0bGFzIERhdGEgTGFrZXMgaW4gdGhlIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMjU2NvcGVzXG4gICAqL1xuICByZWFkb25seSBzY29wZXM/OiBTY29wZURlZmluaXRpb25bXTtcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCByZXByZXNlbnRzIHRoZSB1c2VyIHRoYXQgYXV0aGVudGljYXRlcyB0byBNb25nb0RCLiBUaGUgZm9ybWF0IG9mIHRoaXMgbGFiZWwgZGVwZW5kcyBvbiB0aGUgbWV0aG9kIG9mIGF1dGhlbnRpY2F0aW9uLiBUaGlzIHdpbGwgYmUgVVNFUl9BUk4gb3IgUk9MRV9BUk4gaWYgQVdTSUFNVHlwZSBpcyBVU0VSIG9yIFJPTEUuIFJlZmVyIGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvYXRsYXMvcmVmZXJlbmNlL2FwaS1yZXNvdXJjZXMtc3BlYy8jdGFnL0RhdGFiYXNlLVVzZXJzL29wZXJhdGlvbi9jcmVhdGVEYXRhYmFzZVVzZXIgZm9yIGRldGFpbHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMjVXNlcm5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHVzZXJuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFByb2ZpbGUgdXNlZCB0byBwcm92aWRlIGNyZWRlbnRpYWxzIGluZm9ybWF0aW9uLCAoYSBzZWNyZXQgd2l0aCB0aGUgY2ZuL2F0bGFzL3Byb2ZpbGUve1Byb2ZpbGV9LCBpcyByZXF1aXJlZCksIGlmIG5vdCBwcm92aWRlZCBgZGVmYXVsdGAgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkRhdGFiYXNlVXNlclByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5EYXRhYmFzZVVzZXJQcm9wcyhcbiAgb2JqOiBDZm5EYXRhYmFzZVVzZXJQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIERlbGV0ZUFmdGVyRGF0ZTogb2JqLmRlbGV0ZUFmdGVyRGF0ZSxcbiAgICBBV1NJQU1UeXBlOiBvYmouYXdzaWFtVHlwZSxcbiAgICBEYXRhYmFzZU5hbWU6IG9iai5kYXRhYmFzZU5hbWUsXG4gICAgTGFiZWxzOiBvYmoubGFiZWxzPy5tYXAoKHkpID0+IHRvSnNvbl9MYWJlbERlZmluaXRpb24oeSkpLFxuICAgIExkYXBBdXRoVHlwZTogb2JqLmxkYXBBdXRoVHlwZSxcbiAgICBYNTA5VHlwZTogb2JqLng1MDlUeXBlLFxuICAgIFBhc3N3b3JkOiBvYmoucGFzc3dvcmQsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX1JvbGVEZWZpbml0aW9uKHkpKSxcbiAgICBTY29wZXM6IG9iai5zY29wZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX1Njb3BlRGVmaW5pdGlvbih5KSksXG4gICAgVXNlcm5hbWU6IG9iai51c2VybmFtZSxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgbmV3IGRhdGFiYXNlIHVzZXIgYXV0aGVudGljYXRlcyB3aXRoIHRoZSBBbWF6b24gV2ViIFNlcnZpY2VzIChBV1MpIElkZW50aXR5IGFuZCBBY2Nlc3MgTWFuYWdlbWVudCAoSUFNKSBjcmVkZW50aWFscyBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIgb3IgdGhlIHVzZXIncyByb2xlLlxuICpcbiAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHNBd3NpYW1UeXBlXG4gKi9cbmV4cG9ydCBlbnVtIENmbkRhdGFiYXNlVXNlclByb3BzQXdzaWFtVHlwZSB7XG4gIC8qKiBOT05FICovXG4gIE5PTkUgPSBcIk5PTkVcIixcbiAgLyoqIFVTRVIgKi9cbiAgVVNFUiA9IFwiVVNFUlwiLFxuICAvKiogUk9MRSAqL1xuICBST0xFID0gXCJST0xFXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBsYWJlbERlZmluaXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMYWJlbERlZmluaXRpb24ge1xuICAvKipcbiAgICogQHNjaGVtYSBsYWJlbERlZmluaXRpb24jS2V5XG4gICAqL1xuICByZWFkb25seSBrZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgbGFiZWxEZWZpbml0aW9uI1ZhbHVlXG4gICAqL1xuICByZWFkb25seSB2YWx1ZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnTGFiZWxEZWZpbml0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9MYWJlbERlZmluaXRpb24oXG4gIG9iajogTGFiZWxEZWZpbml0aW9uIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgS2V5OiBvYmoua2V5LFxuICAgIFZhbHVlOiBvYmoudmFsdWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIE1ldGhvZCBieSB3aGljaCB0aGUgcHJvdmlkZWQgdXNlcm5hbWUgaXMgYXV0aGVudGljYXRlZC4gRGVmYXVsdCB2YWx1ZSBpcyBgTk9ORWAuXG4gKlxuICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wc0xkYXBBdXRoVHlwZVxuICovXG5leHBvcnQgZW51bSBDZm5EYXRhYmFzZVVzZXJQcm9wc0xkYXBBdXRoVHlwZSB7XG4gIC8qKiBOT05FICovXG4gIE5PTkUgPSBcIk5PTkVcIixcbiAgLyoqIFVTRVIgKi9cbiAgVVNFUiA9IFwiVVNFUlwiLFxuICAvKiogR1JPVVAgKi9cbiAgR1JPVVAgPSBcIkdST1VQXCIsXG59XG5cbi8qKlxuICogTWV0aG9kIHRoYXQgYnJpZWZzIHdobyBvd25zIHRoZSBjZXJ0aWZpY2F0ZSBwcm92aWRlZC4gRGVmYXVsdCB2YWx1ZSBpcyBgTk9ORWAuXG4gKlxuICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wc1g1MDlUeXBlXG4gKi9cbmV4cG9ydCBlbnVtIENmbkRhdGFiYXNlVXNlclByb3BzWDUwOVR5cGUge1xuICAvKiogTk9ORSAqL1xuICBOT05FID0gXCJOT05FXCIsXG4gIC8qKiBNQU5BR0VEICovXG4gIE1BTkFHRUQgPSBcIk1BTkFHRURcIixcbiAgLyoqIENVU1RPTUVSICovXG4gIENVU1RPTUVSID0gXCJDVVNUT01FUlwiLFxufVxuXG4vKipcbiAqIEBzY2hlbWEgcm9sZURlZmluaXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSb2xlRGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIHJvbGVEZWZpbml0aW9uI0NvbGxlY3Rpb25OYW1lXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSByb2xlRGVmaW5pdGlvbiNEYXRhYmFzZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSByb2xlRGVmaW5pdGlvbiNSb2xlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZU5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1JvbGVEZWZpbml0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9Sb2xlRGVmaW5pdGlvbihcbiAgb2JqOiBSb2xlRGVmaW5pdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENvbGxlY3Rpb25OYW1lOiBvYmouY29sbGVjdGlvbk5hbWUsXG4gICAgRGF0YWJhc2VOYW1lOiBvYmouZGF0YWJhc2VOYW1lLFxuICAgIFJvbGVOYW1lOiBvYmoucm9sZU5hbWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgc2NvcGVEZWZpbml0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NvcGVEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgc2NvcGVEZWZpbml0aW9uI05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgc2NvcGVEZWZpbml0aW9uI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBTY29wZURlZmluaXRpb25UeXBlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTY29wZURlZmluaXRpb24nIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1Njb3BlRGVmaW5pdGlvbihcbiAgb2JqOiBTY29wZURlZmluaXRpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBTY29wZURlZmluaXRpb25UeXBlXG4gKi9cbmV4cG9ydCBlbnVtIFNjb3BlRGVmaW5pdGlvblR5cGUge1xuICAvKiogQ0xVU1RFUiAqL1xuICBDTFVTVEVSID0gXCJDTFVTVEVSXCIsXG4gIC8qKiBEQVRBX0xBS0UgKi9cbiAgREFUQV9MQUtFID0gXCJEQVRBX0xBS0VcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6RGF0YWJhc2VVc2VyYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpEYXRhYmFzZVVzZXJcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbkRhdGFiYXNlVXNlciBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpEYXRhYmFzZVVzZXJcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkRhdGFiYXNlVXNlclByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpEYXRhYmFzZVVzZXIuVXNlckNGTklkZW50aWZpZXJgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clVzZXJDRk5JZGVudGlmaWVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OkRhdGFiYXNlVXNlcmAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5EYXRhYmFzZVVzZXJQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkRhdGFiYXNlVXNlci5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmbkRhdGFiYXNlVXNlclByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJVc2VyQ0ZOSWRlbnRpZmllciA9IGNkay5Ub2tlbi5hc1N0cmluZyhcbiAgICAgIHRoaXMuZ2V0QXR0KFwiVXNlckNGTklkZW50aWZpZXJcIilcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2RhdGFiYXNlLXVzZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBOEZuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQiwyQkFBMkIsQ0FDekMsR0FBcUM7SUFFckMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWU7UUFDcEMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1FBQzFCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3pELFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RELE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDekQsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztLQUNyQixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUF6QkQsa0VBeUJDO0FBQ0Qsd0NBQXdDO0FBRXhDOzs7O0dBSUc7QUFDSCxJQUFZLDhCQU9YO0FBUEQsV0FBWSw4QkFBOEI7SUFDeEMsV0FBVztJQUNYLCtDQUFhLENBQUE7SUFDYixXQUFXO0lBQ1gsK0NBQWEsQ0FBQTtJQUNiLFdBQVc7SUFDWCwrQ0FBYSxDQUFBO0FBQ2YsQ0FBQyxFQVBXLDhCQUE4QixHQUE5QixzQ0FBOEIsS0FBOUIsc0NBQThCLFFBT3pDO0FBaUJEOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHNCQUFzQixDQUNwQyxHQUFnQztJQUVoQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRztRQUNaLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztLQUNqQixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCx3REFlQztBQUNELHdDQUF3QztBQUV4Qzs7OztHQUlHO0FBQ0gsSUFBWSxnQ0FPWDtBQVBELFdBQVksZ0NBQWdDO0lBQzFDLFdBQVc7SUFDWCxpREFBYSxDQUFBO0lBQ2IsV0FBVztJQUNYLGlEQUFhLENBQUE7SUFDYixZQUFZO0lBQ1osbURBQWUsQ0FBQTtBQUNqQixDQUFDLEVBUFcsZ0NBQWdDLEdBQWhDLHdDQUFnQyxLQUFoQyx3Q0FBZ0MsUUFPM0M7QUFFRDs7OztHQUlHO0FBQ0gsSUFBWSw0QkFPWDtBQVBELFdBQVksNEJBQTRCO0lBQ3RDLFdBQVc7SUFDWCw2Q0FBYSxDQUFBO0lBQ2IsY0FBYztJQUNkLG1EQUFtQixDQUFBO0lBQ25CLGVBQWU7SUFDZixxREFBcUIsQ0FBQTtBQUN2QixDQUFDLEVBUFcsNEJBQTRCLEdBQTVCLG9DQUE0QixLQUE1QixvQ0FBNEIsUUFPdkM7QUFzQkQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IscUJBQXFCLENBQ25DLEdBQStCO0lBRS9CLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsY0FBYyxFQUFFLEdBQUcsQ0FBQyxjQUFjO1FBQ2xDLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7S0FDdkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBaEJELHNEQWdCQztBQWtCRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixzQkFBc0IsQ0FDcEMsR0FBZ0M7SUFFaEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7S0FDZixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCx3REFlQztBQUNELHdDQUF3QztBQUV4Qzs7R0FFRztBQUNILElBQVksbUJBS1g7QUFMRCxXQUFZLG1CQUFtQjtJQUM3QixjQUFjO0lBQ2QsMENBQW1CLENBQUE7SUFDbkIsZ0JBQWdCO0lBQ2hCLDhDQUF1QixDQUFBO0FBQ3pCLENBQUMsRUFMVyxtQkFBbUIsR0FBbkIsMkJBQW1CLEtBQW5CLDJCQUFtQixRQUs5QjtBQUVEOzs7OztHQUtHO0FBQ0gsTUFBYSxlQUFnQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBaUJsRDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUEyQjtRQUUzQixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxlQUFlLENBQUMsc0JBQXNCO1lBQzVDLFVBQVUsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLLENBQUU7U0FDaEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUM3QyxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixDQUFDLENBQ2pDLENBQUM7SUFDSixDQUFDOztBQXZDSCwwQ0F3Q0M7OztBQXZDQzs7R0FFRztBQUNvQixzQ0FBc0IsR0FDM0MsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGVkaXRzLCBhbmQgcmVtb3ZlcyBkYXRhYmFzZSB1c2Vycy5cbiAqXG4gKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMge1xuICAvKipcbiAgICogRGF0ZSBhbmQgdGltZSB3aGVuIE1vbmdvREIgQ2xvdWQgZGVsZXRlcyB0aGUgdXNlci4gVGhpcyBwYXJhbWV0ZXIgZXhwcmVzc2VzIGl0cyB2YWx1ZSBpbiB0aGUgSVNPIDg2MDEgdGltZXN0YW1wIGZvcm1hdCBpbiBVVEMgYW5kIGNhbiBpbmNsdWRlIHRoZSB0aW1lIHpvbmUgZGVzaWduYXRpb24uIFlvdSBtdXN0IHNwZWNpZnkgYSBmdXR1cmUgZGF0ZSB0aGF0IGZhbGxzIHdpdGhpbiBvbmUgd2VlayBvZiBtYWtpbmcgdGhlIEFwcGxpY2F0aW9uIFByb2dyYW1taW5nIEludGVyZmFjZSAoQVBJKSByZXF1ZXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI0RlbGV0ZUFmdGVyRGF0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGVsZXRlQWZ0ZXJEYXRlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSBuZXcgZGF0YWJhc2UgdXNlciBhdXRoZW50aWNhdGVzIHdpdGggdGhlIEFtYXpvbiBXZWIgU2VydmljZXMgKEFXUykgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50IChJQU0pIGNyZWRlbnRpYWxzIGFzc29jaWF0ZWQgd2l0aCB0aGUgdXNlciBvciB0aGUgdXNlcidzIHJvbGUuIERlZmF1bHQgdmFsdWUgaXMgYE5PTkVgLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI0FXU0lBTVR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGF3c2lhbVR5cGU/OiBDZm5EYXRhYmFzZVVzZXJQcm9wc0F3c2lhbVR5cGU7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgZGF0YWJhc2UgYWdhaW5zdCB3aGljaCB0aGUgTW9uZ29EQiBkYXRhYmFzZSB1c2VyIGF1dGhlbnRpY2F0ZXMuIE1vbmdvREIgZGF0YWJhc2UgdXNlcnMgbXVzdCBwcm92aWRlIGJvdGggYSB1c2VybmFtZSBhbmQgYXV0aGVudGljYXRpb24gZGF0YWJhc2UgdG8gbG9nIGludG8gTW9uZ29EQi4gIERlZmF1bHQgdmFsdWUgaXMgYGFkbWluYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNEYXRhYmFzZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIGtleS12YWx1ZSBwYWlycyBmb3IgdGFnZ2luZyBhbmQgY2F0ZWdvcml6aW5nIHRoZSBNb25nb0RCIGRhdGFiYXNlIHVzZXIuIFRoZSBsYWJlbHMgdGhhdCB5b3UgZGVmaW5lIGRvIG5vdCBhcHBlYXIgaW4gdGhlIGNvbnNvbGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMjTGFiZWxzXG4gICAqL1xuICByZWFkb25seSBsYWJlbHM/OiBMYWJlbERlZmluaXRpb25bXTtcblxuICAvKipcbiAgICogTWV0aG9kIGJ5IHdoaWNoIHRoZSBwcm92aWRlZCB1c2VybmFtZSBpcyBhdXRoZW50aWNhdGVkLiBEZWZhdWx0IHZhbHVlIGlzIGBOT05FYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNMZGFwQXV0aFR5cGVcbiAgICovXG4gIHJlYWRvbmx5IGxkYXBBdXRoVHlwZT86IENmbkRhdGFiYXNlVXNlclByb3BzTGRhcEF1dGhUeXBlO1xuXG4gIC8qKlxuICAgKiBNZXRob2QgdGhhdCBicmllZnMgd2hvIG93bnMgdGhlIGNlcnRpZmljYXRlIHByb3ZpZGVkLiBEZWZhdWx0IHZhbHVlIGlzIGBOT05FYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNYNTA5VHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgeDUwOVR5cGU/OiBDZm5EYXRhYmFzZVVzZXJQcm9wc1g1MDlUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgdXNlcuKAmXMgcGFzc3dvcmQuIFRoaXMgZmllbGQgaXMgbm90IGluY2x1ZGVkIGluIHRoZSBlbnRpdHkgcmV0dXJuZWQgZnJvbSB0aGUgc2VydmVyLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI1Bhc3N3b3JkXG4gICAqL1xuICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBBdGxhcyBQcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBwcm92aWRlcyB0aGUgcGFpcmluZ3Mgb2Ygb25lIHJvbGUgd2l0aCBvbmUgYXBwbGljYWJsZSBkYXRhYmFzZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5EYXRhYmFzZVVzZXJQcm9wcyNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM6IFJvbGVEZWZpbml0aW9uW107XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyBjbHVzdGVycyBhbmQgTW9uZ29EQiBBdGxhcyBEYXRhIExha2VzIHRoYXQgdGhpcyBkYXRhYmFzZSB1c2VyIGNhbiBhY2Nlc3MuIElmIG9taXR0ZWQsIE1vbmdvREIgQ2xvdWQgZ3JhbnRzIHRoZSBkYXRhYmFzZSB1c2VyIGFjY2VzcyB0byBhbGwgdGhlIGNsdXN0ZXJzIGFuZCBNb25nb0RCIEF0bGFzIERhdGEgTGFrZXMgaW4gdGhlIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMjU2NvcGVzXG4gICAqL1xuICByZWFkb25seSBzY29wZXM/OiBTY29wZURlZmluaXRpb25bXTtcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCByZXByZXNlbnRzIHRoZSB1c2VyIHRoYXQgYXV0aGVudGljYXRlcyB0byBNb25nb0RCLiBUaGUgZm9ybWF0IG9mIHRoaXMgbGFiZWwgZGVwZW5kcyBvbiB0aGUgbWV0aG9kIG9mIGF1dGhlbnRpY2F0aW9uLiBUaGlzIHdpbGwgYmUgVVNFUl9BUk4gb3IgUk9MRV9BUk4gaWYgQVdTSUFNVHlwZSBpcyBVU0VSIG9yIFJPTEUuIFJlZmVyIGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvYXRsYXMvcmVmZXJlbmNlL2FwaS1yZXNvdXJjZXMtc3BlYy8jdGFnL0RhdGFiYXNlLVVzZXJzL29wZXJhdGlvbi9jcmVhdGVEYXRhYmFzZVVzZXIgZm9yIGRldGFpbHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHMjVXNlcm5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHVzZXJuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFByb2ZpbGUgdXNlZCB0byBwcm92aWRlIGNyZWRlbnRpYWxzIGluZm9ybWF0aW9uLCAoYSBzZWNyZXQgd2l0aCB0aGUgY2ZuL2F0bGFzL3Byb2ZpbGUve1Byb2ZpbGV9LCBpcyByZXF1aXJlZCksIGlmIG5vdCBwcm92aWRlZCBgZGVmYXVsdGAgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkRhdGFiYXNlVXNlclByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5EYXRhYmFzZVVzZXJQcm9wcyhcbiAgb2JqOiBDZm5EYXRhYmFzZVVzZXJQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIERlbGV0ZUFmdGVyRGF0ZTogb2JqLmRlbGV0ZUFmdGVyRGF0ZSxcbiAgICBBV1NJQU1UeXBlOiBvYmouYXdzaWFtVHlwZSxcbiAgICBEYXRhYmFzZU5hbWU6IG9iai5kYXRhYmFzZU5hbWUsXG4gICAgTGFiZWxzOiBvYmoubGFiZWxzPy5tYXAoKHkpID0+IHRvSnNvbl9MYWJlbERlZmluaXRpb24oeSkpLFxuICAgIExkYXBBdXRoVHlwZTogb2JqLmxkYXBBdXRoVHlwZSxcbiAgICBYNTA5VHlwZTogb2JqLng1MDlUeXBlLFxuICAgIFBhc3N3b3JkOiBvYmoucGFzc3dvcmQsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX1JvbGVEZWZpbml0aW9uKHkpKSxcbiAgICBTY29wZXM6IG9iai5zY29wZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX1Njb3BlRGVmaW5pdGlvbih5KSksXG4gICAgVXNlcm5hbWU6IG9iai51c2VybmFtZSxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgbmV3IGRhdGFiYXNlIHVzZXIgYXV0aGVudGljYXRlcyB3aXRoIHRoZSBBbWF6b24gV2ViIFNlcnZpY2VzIChBV1MpIElkZW50aXR5IGFuZCBBY2Nlc3MgTWFuYWdlbWVudCAoSUFNKSBjcmVkZW50aWFscyBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIgb3IgdGhlIHVzZXIncyByb2xlLiBEZWZhdWx0IHZhbHVlIGlzIGBOT05FYC5cbiAqXG4gKiBAc2NoZW1hIENmbkRhdGFiYXNlVXNlclByb3BzQXdzaWFtVHlwZVxuICovXG5leHBvcnQgZW51bSBDZm5EYXRhYmFzZVVzZXJQcm9wc0F3c2lhbVR5cGUge1xuICAvKiogTk9ORSAqL1xuICBOT05FID0gXCJOT05FXCIsXG4gIC8qKiBVU0VSICovXG4gIFVTRVIgPSBcIlVTRVJcIixcbiAgLyoqIFJPTEUgKi9cbiAgUk9MRSA9IFwiUk9MRVwiLFxufVxuXG4vKipcbiAqIEBzY2hlbWEgbGFiZWxEZWZpbml0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTGFiZWxEZWZpbml0aW9uIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgbGFiZWxEZWZpbml0aW9uI0tleVxuICAgKi9cbiAgcmVhZG9ubHkga2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIGxhYmVsRGVmaW5pdGlvbiNWYWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0xhYmVsRGVmaW5pdGlvbicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fTGFiZWxEZWZpbml0aW9uKFxuICBvYmo6IExhYmVsRGVmaW5pdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEtleTogb2JqLmtleSxcbiAgICBWYWx1ZTogb2JqLnZhbHVlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBNZXRob2QgYnkgd2hpY2ggdGhlIHByb3ZpZGVkIHVzZXJuYW1lIGlzIGF1dGhlbnRpY2F0ZWQuIERlZmF1bHQgdmFsdWUgaXMgYE5PTkVgLlxuICpcbiAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHNMZGFwQXV0aFR5cGVcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuRGF0YWJhc2VVc2VyUHJvcHNMZGFwQXV0aFR5cGUge1xuICAvKiogTk9ORSAqL1xuICBOT05FID0gXCJOT05FXCIsXG4gIC8qKiBVU0VSICovXG4gIFVTRVIgPSBcIlVTRVJcIixcbiAgLyoqIEdST1VQICovXG4gIEdST1VQID0gXCJHUk9VUFwiLFxufVxuXG4vKipcbiAqIE1ldGhvZCB0aGF0IGJyaWVmcyB3aG8gb3ducyB0aGUgY2VydGlmaWNhdGUgcHJvdmlkZWQuIERlZmF1bHQgdmFsdWUgaXMgYE5PTkVgLlxuICpcbiAqIEBzY2hlbWEgQ2ZuRGF0YWJhc2VVc2VyUHJvcHNYNTA5VHlwZVxuICovXG5leHBvcnQgZW51bSBDZm5EYXRhYmFzZVVzZXJQcm9wc1g1MDlUeXBlIHtcbiAgLyoqIE5PTkUgKi9cbiAgTk9ORSA9IFwiTk9ORVwiLFxuICAvKiogTUFOQUdFRCAqL1xuICBNQU5BR0VEID0gXCJNQU5BR0VEXCIsXG4gIC8qKiBDVVNUT01FUiAqL1xuICBDVVNUT01FUiA9IFwiQ1VTVE9NRVJcIixcbn1cblxuLyoqXG4gKiBAc2NoZW1hIHJvbGVEZWZpbml0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZURlZmluaXRpb24ge1xuICAvKipcbiAgICogQHNjaGVtYSByb2xlRGVmaW5pdGlvbiNDb2xsZWN0aW9uTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgcm9sZURlZmluaXRpb24jRGF0YWJhc2VOYW1lXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgcm9sZURlZmluaXRpb24jUm9sZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdSb2xlRGVmaW5pdGlvbicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fUm9sZURlZmluaXRpb24oXG4gIG9iajogUm9sZURlZmluaXRpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDb2xsZWN0aW9uTmFtZTogb2JqLmNvbGxlY3Rpb25OYW1lLFxuICAgIERhdGFiYXNlTmFtZTogb2JqLmRhdGFiYXNlTmFtZSxcbiAgICBSb2xlTmFtZTogb2JqLnJvbGVOYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIHNjb3BlRGVmaW5pdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjb3BlRGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIHNjb3BlRGVmaW5pdGlvbiNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIHNjb3BlRGVmaW5pdGlvbiNUeXBlXG4gICAqL1xuICByZWFkb25seSB0eXBlPzogU2NvcGVEZWZpbml0aW9uVHlwZTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU2NvcGVEZWZpbml0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TY29wZURlZmluaXRpb24oXG4gIG9iajogU2NvcGVEZWZpbml0aW9uIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgVHlwZTogb2JqLnR5cGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgU2NvcGVEZWZpbml0aW9uVHlwZVxuICovXG5leHBvcnQgZW51bSBTY29wZURlZmluaXRpb25UeXBlIHtcbiAgLyoqIENMVVNURVIgKi9cbiAgQ0xVU1RFUiA9IFwiQ0xVU1RFUlwiLFxuICAvKiogREFUQV9MQUtFICovXG4gIERBVEFfTEFLRSA9IFwiREFUQV9MQUtFXCIsXG59XG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OkRhdGFiYXNlVXNlcmBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6RGF0YWJhc2VVc2VyXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5EYXRhYmFzZVVzZXIgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6RGF0YWJhc2VVc2VyXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5EYXRhYmFzZVVzZXJQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RGF0YWJhc2VVc2VyLlVzZXJDRk5JZGVudGlmaWVyYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJVc2VyQ0ZOSWRlbnRpZmllcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpEYXRhYmFzZVVzZXJgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuRGF0YWJhc2VVc2VyUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5EYXRhYmFzZVVzZXIuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5EYXRhYmFzZVVzZXJQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRyVXNlckNGTklkZW50aWZpZXIgPSBjZGsuVG9rZW4uYXNTdHJpbmcoXG4gICAgICB0aGlzLmdldEF0dChcIlVzZXJDRk5JZGVudGlmaWVyXCIpXG4gICAgKTtcbiAgfVxufVxuIl19

@@ -288,3 +288,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnDataLakes[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnDataLakes", version: "3.7.2" };
CfnDataLakes[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnDataLakes", version: "3.8.0" };
/**

@@ -291,0 +291,0 @@ * The CloudFormation resource type name for this resource class.

@@ -10,5 +10,5 @@ import * as cdk from "aws-cdk-lib";

/**
* @schema CfnEncryptionAtRestProps#AwsKms
* @schema CfnEncryptionAtRestProps#AwsKmsConfig
*/
readonly awsKms: AwsKmsConfiguration;
readonly awsKmsConfig: AwsKmsConfig;
/**

@@ -34,9 +34,9 @@ * The profile is defined in AWS Secret manager. See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).

*
* @schema AwsKms
* @schema AwsKmsConfig
*/
export interface AwsKmsConfiguration {
export interface AwsKmsConfig {
/**
* ID of an AWS IAM role authorized to manage an AWS customer master key.
*
* @schema AwsKms#RoleID
* @schema AwsKmsConfig#RoleID
*/

@@ -47,3 +47,3 @@ readonly roleId?: string;

*
* @schema AwsKms#CustomerMasterKeyID
* @schema AwsKmsConfig#CustomerMasterKeyID
*/

@@ -54,3 +54,3 @@ readonly customerMasterKeyId?: string;

*
* @schema AwsKms#Enabled
* @schema AwsKmsConfig#Enabled
*/

@@ -61,3 +61,3 @@ readonly enabled?: boolean;

*
* @schema AwsKms#Region
* @schema AwsKmsConfig#Region
*/

@@ -67,5 +67,5 @@ readonly region?: string;

/**
* Converts an object of type 'AwsKms' to JSON representation.
* Converts an object of type 'AwsKmsConfig' to JSON representation.
*/
export declare function toJson_AwsKms(obj: AwsKmsConfiguration | undefined): Record<string, any> | undefined;
export declare function toJson_AwsKmsConfig(obj: AwsKmsConfig | undefined): Record<string, any> | undefined;
/**

@@ -72,0 +72,0 @@ * A CloudFormation `MongoDB::Atlas::EncryptionAtRest`

"use strict";
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CfnEncryptionAtRest = exports.toJson_AwsKms = exports.toJson_CfnEncryptionAtRestProps = void 0;
exports.CfnEncryptionAtRest = exports.toJson_AwsKmsConfig = exports.toJson_CfnEncryptionAtRestProps = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");

@@ -17,3 +17,3 @@ // Generated by cdk-import

const result = {
AwsKms: toJson_AwsKms(obj.awsKms),
AwsKmsConfig: toJson_AwsKmsConfig(obj.awsKmsConfig),
Profile: obj.profile,

@@ -27,6 +27,6 @@ ProjectId: obj.projectId,

/**
* Converts an object of type 'AwsKms' to JSON representation.
* Converts an object of type 'AwsKmsConfig' to JSON representation.
*/
/* eslint-disable max-len, quote-props */
function toJson_AwsKms(obj) {
function toJson_AwsKmsConfig(obj) {
if (obj === undefined) {

@@ -44,3 +44,3 @@ return undefined;

}
exports.toJson_AwsKms = toJson_AwsKms;
exports.toJson_AwsKmsConfig = toJson_AwsKmsConfig;
/* eslint-enable max-len, quote-props */

@@ -72,3 +72,3 @@ /**

_a = JSII_RTTI_SYMBOL_1;
CfnEncryptionAtRest[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnEncryptionAtRest", version: "3.7.2" };
CfnEncryptionAtRest[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnEncryptionAtRest", version: "3.8.0" };
/**

@@ -78,2 +78,2 @@ * The CloudFormation resource type name for this resource class.

CfnEncryptionAtRest.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::EncryptionAtRest";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUE2Qm5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLCtCQUErQixDQUM3QyxHQUF5QztJQUV6QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE1BQU0sRUFBRSxhQUFhLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWhCRCwwRUFnQkM7QUFzQ0Q7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsYUFBYSxDQUMzQixHQUFvQztJQUVwQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtRQUNsQixtQkFBbUIsRUFBRSxHQUFHLENBQUMsbUJBQW1CO1FBQzVDLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07S0FDbkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBakJELHNDQWlCQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFpQnREOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQStCO1FBRS9CLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLG1CQUFtQixDQUFDLHNCQUFzQjtZQUNoRCxVQUFVLEVBQUUsK0JBQStCLENBQUMsS0FBSyxDQUFFO1NBQ3BELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7O0FBckNILGtEQXNDQzs7O0FBckNDOztHQUVHO0FBQ29CLDBDQUFzQixHQUMzQyxrQ0FBa0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucyBhbmQgZWRpdHMgdGhlIEVuY3J5cHRpb24gYXQgUmVzdCB1c2luZyBDdXN0b21lciBLZXkgTWFuYWdlbWVudCBjb25maWd1cmF0aW9uLlxuICpcbiAqIEBzY2hlbWEgQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzI0F3c0ttc1xuICAgKi9cbiAgcmVhZG9ubHkgYXdzS21zOiBBd3NLbXNDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIEF0bGFzIHByb2plY3QgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMoXG4gIG9iajogQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQXdzS21zOiB0b0pzb25fQXdzS21zKG9iai5hd3NLbXMpLFxuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogU3BlY2lmaWVzIEFXUyBLTVMgY29uZmlndXJhdGlvbiBkZXRhaWxzIGFuZCB3aGV0aGVyIEVuY3J5cHRpb24gYXQgUmVzdCBpcyBlbmFibGVkIGZvciBhbiBBdGxhcyBwcm9qZWN0LlxuICpcbiAqIEBzY2hlbWEgQXdzS21zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXdzS21zQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBJRCBvZiBhbiBBV1MgSUFNIHJvbGUgYXV0aG9yaXplZCB0byBtYW5hZ2UgYW4gQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkuXG4gICAqXG4gICAqIEBzY2hlbWEgQXdzS21zI1JvbGVJRFxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZUlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkgdXNlZCB0byBlbmNyeXB0IGFuZCBkZWNyeXB0IHRoZSBNb25nb0RCIG1hc3RlciBrZXlzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNDdXN0b21lck1hc3RlcktleUlEXG4gICAqL1xuICByZWFkb25seSBjdXN0b21lck1hc3RlcktleUlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciBFbmNyeXB0aW9uIGF0IFJlc3QgaXMgZW5hYmxlZCBmb3IgYW4gQXRsYXMgcHJvamVjdC4gVG8gZGlzYWJsZSBFbmNyeXB0aW9uIGF0IFJlc3QsIHBhc3Mgb25seSB0aGlzIHBhcmFtZXRlciB3aXRoIGEgdmFsdWUgb2YgZmFsc2UuIFdoZW4geW91IGRpc2FibGUgRW5jcnlwdGlvbiBhdCBSZXN0LCBBdGxhcyBhbHNvIHJlbW92ZXMgdGhlIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5cbiAgICpcbiAgICogQHNjaGVtYSBBd3NLbXMjRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgcmVnaW9uIGluIHdoaWNoIHRoZSBBV1MgY3VzdG9tZXIgbWFzdGVyIGtleSBleGlzdHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXdzS21zI1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBd3NLbXMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0F3c0ttcyhcbiAgb2JqOiBBd3NLbXNDb25maWd1cmF0aW9uIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUm9sZUlEOiBvYmoucm9sZUlkLFxuICAgIEN1c3RvbWVyTWFzdGVyS2V5SUQ6IG9iai5jdXN0b21lck1hc3RlcktleUlkLFxuICAgIEVuYWJsZWQ6IG9iai5lbmFibGVkLFxuICAgIFJlZ2lvbjogb2JqLnJlZ2lvbixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OkVuY3J5cHRpb25BdFJlc3RgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OkVuY3J5cHRpb25BdFJlc3RcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbkVuY3J5cHRpb25BdFJlc3QgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6RW5jcnlwdGlvbkF0UmVzdFwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpFbmNyeXB0aW9uQXRSZXN0LklkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpFbmNyeXB0aW9uQXRSZXN0YC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmbkVuY3J5cHRpb25BdFJlc3RQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkVuY3J5cHRpb25BdFJlc3QuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUE2Qm5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLCtCQUErQixDQUM3QyxHQUF5QztJQUV6QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQ25ELE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7S0FDekIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBaEJELDBFQWdCQztBQXNDRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixtQkFBbUIsQ0FDakMsR0FBNkI7SUFFN0IsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07UUFDbEIsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLG1CQUFtQjtRQUM1QyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO0tBQ25CLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWpCRCxrREFpQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLG1CQUFvQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBaUJ0RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUErQjtRQUUvQixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxtQkFBbUIsQ0FBQyxzQkFBc0I7WUFDaEQsVUFBVSxFQUFFLCtCQUErQixDQUFDLEtBQUssQ0FBRTtTQUNwRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDOztBQXJDSCxrREFzQ0M7OztBQXJDQzs7R0FFRztBQUNvQiwwQ0FBc0IsR0FDM0Msa0NBQWtDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMgYW5kIGVkaXRzIHRoZSBFbmNyeXB0aW9uIGF0IFJlc3QgdXNpbmcgQ3VzdG9tZXIgS2V5IE1hbmFnZW1lbnQgY29uZmlndXJhdGlvbi5cbiAqXG4gKiBAc2NoZW1hIENmbkVuY3J5cHRpb25BdFJlc3RQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbkVuY3J5cHRpb25BdFJlc3RQcm9wcyB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIENmbkVuY3J5cHRpb25BdFJlc3RQcm9wcyNBd3NLbXNDb25maWdcbiAgICovXG4gIHJlYWRvbmx5IGF3c0ttc0NvbmZpZzogQXdzS21zQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIEF0bGFzIHByb2plY3QgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMoXG4gIG9iajogQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQXdzS21zQ29uZmlnOiB0b0pzb25fQXdzS21zQ29uZmlnKG9iai5hd3NLbXNDb25maWcpLFxuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogU3BlY2lmaWVzIEFXUyBLTVMgY29uZmlndXJhdGlvbiBkZXRhaWxzIGFuZCB3aGV0aGVyIEVuY3J5cHRpb24gYXQgUmVzdCBpcyBlbmFibGVkIGZvciBhbiBBdGxhcyBwcm9qZWN0LlxuICpcbiAqIEBzY2hlbWEgQXdzS21zQ29uZmlnXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXdzS21zQ29uZmlnIHtcbiAgLyoqXG4gICAqIElEIG9mIGFuIEFXUyBJQU0gcm9sZSBhdXRob3JpemVkIHRvIG1hbmFnZSBhbiBBV1MgY3VzdG9tZXIgbWFzdGVyIGtleS5cbiAgICpcbiAgICogQHNjaGVtYSBBd3NLbXNDb25maWcjUm9sZUlEXG4gICAqL1xuICByZWFkb25seSByb2xlSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgY3VzdG9tZXIgbWFzdGVyIGtleSB1c2VkIHRvIGVuY3J5cHQgYW5kIGRlY3J5cHQgdGhlIE1vbmdvREIgbWFzdGVyIGtleXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXdzS21zQ29uZmlnI0N1c3RvbWVyTWFzdGVyS2V5SURcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbWVyTWFzdGVyS2V5SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB3aGV0aGVyIEVuY3J5cHRpb24gYXQgUmVzdCBpcyBlbmFibGVkIGZvciBhbiBBdGxhcyBwcm9qZWN0LiBUbyBkaXNhYmxlIEVuY3J5cHRpb24gYXQgUmVzdCwgcGFzcyBvbmx5IHRoaXMgcGFyYW1ldGVyIHdpdGggYSB2YWx1ZSBvZiBmYWxzZS4gV2hlbiB5b3UgZGlzYWJsZSBFbmNyeXB0aW9uIGF0IFJlc3QsIEF0bGFzIGFsc28gcmVtb3ZlcyB0aGUgY29uZmlndXJhdGlvbiBkZXRhaWxzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttc0NvbmZpZyNFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVGhlIEFXUyByZWdpb24gaW4gd2hpY2ggdGhlIEFXUyBjdXN0b21lciBtYXN0ZXIga2V5IGV4aXN0cy5cbiAgICpcbiAgICogQHNjaGVtYSBBd3NLbXNDb25maWcjUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F3c0ttc0NvbmZpZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXdzS21zQ29uZmlnKFxuICBvYmo6IEF3c0ttc0NvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFJvbGVJRDogb2JqLnJvbGVJZCxcbiAgICBDdXN0b21lck1hc3RlcktleUlEOiBvYmouY3VzdG9tZXJNYXN0ZXJLZXlJZCxcbiAgICBFbmFibGVkOiBvYmouZW5hYmxlZCxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpFbmNyeXB0aW9uQXRSZXN0YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpFbmNyeXB0aW9uQXRSZXN0XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5FbmNyeXB0aW9uQXRSZXN0IGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkVuY3J5cHRpb25BdFJlc3RcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkVuY3J5cHRpb25BdFJlc3RQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RW5jcnlwdGlvbkF0UmVzdC5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6RW5jcnlwdGlvbkF0UmVzdGAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5FbmNyeXB0aW9uQXRSZXN0LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgfVxufVxuIl19

@@ -19,3 +19,3 @@ "use strict";

projectId: projectId,
awsKms: {
awsKmsConfig: {
roleId: roleID,

@@ -27,2 +27,2 @@ customerMasterKeyId: customerMasterKeyId,

});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuZGVmYXVsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sMS1yZXNvdXJjZXMvZW5jcnlwdGlvbi1hdC1yZXN0L2ludGVnLmRlZmF1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtQ0FBbUM7QUFDbkMsbUNBQThDO0FBRTlDLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBQzFCLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsMEJBQTBCLEVBQUU7SUFDM0QsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCO1FBQ3RDLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtLQUN6QztDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sU0FBUyxHQUNiLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDO0lBQzlDLE9BQU8sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUM7QUFDdkMsTUFBTSxtQkFBbUIsR0FDdkIsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsd0JBQXdCLENBQUM7SUFDbEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQztBQUNyQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztBQUUxRSxJQUFJLDJCQUFtQixDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBRTtJQUNqRCxTQUFTLEVBQUUsU0FBUztJQUNwQixNQUFNLEVBQUU7UUFDTixNQUFNLEVBQUUsTUFBTTtRQUNkLG1CQUFtQixFQUFFLG1CQUFtQjtRQUN4QyxPQUFPLEVBQUUsSUFBSTtRQUNiLE1BQU0sRUFBRSxnQkFBZ0I7S0FDekI7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDZm5FbmNyeXB0aW9uQXRSZXN0IH0gZnJvbSBcIi4vaW5kZXhcIjtcblxuY29uc3QgYXBwID0gbmV3IGNkay5BcHAoKTtcbmNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjayhhcHAsIFwiYXRsYXMtRW5jQXRSZXN0LWNkay10ZXN0XCIsIHtcbiAgZW52OiB7XG4gICAgcmVnaW9uOiBwcm9jZXNzLmVudi5DREtfREVGQVVMVF9SRUdJT04sXG4gICAgYWNjb3VudDogcHJvY2Vzcy5lbnYuQ0RLX0RFRkFVTFRfQUNDT1VOVCxcbiAgfSxcbn0pO1xuXG5jb25zdCBwcm9qZWN0SWQgPVxuICBzdGFjay5ub2RlLnRyeUdldENvbnRleHQoXCJNT05HT0RCX1BST0pFQ1RfSURcIikgfHxcbiAgcHJvY2Vzcy5lbnYuTU9OR09EQl9BVExBU19QUk9KRUNUX0lEO1xuY29uc3QgY3VzdG9tZXJNYXN0ZXJLZXlJZCA9XG4gIHN0YWNrLm5vZGUudHJ5R2V0Q29udGV4dChcIkNVU1RPTUVSX01BU1RFUl9LRVlfSURcIikgfHxcbiAgcHJvY2Vzcy5lbnYuQ1VTVE9NRVJfTUFTVEVSX0tFWV9JRDtcbmNvbnN0IHJvbGVJRCA9IHN0YWNrLm5vZGUudHJ5R2V0Q29udGV4dChcIlJPTEVfSURcIikgfHwgcHJvY2Vzcy5lbnYuUk9MRV9JRDtcblxubmV3IENmbkVuY3J5cHRpb25BdFJlc3Qoc3RhY2ssIFwiZW5jcnlwdGlvbkF0UmVzdFwiLCB7XG4gIHByb2plY3RJZDogcHJvamVjdElkLFxuICBhd3NLbXM6IHtcbiAgICByb2xlSWQ6IHJvbGVJRCxcbiAgICBjdXN0b21lck1hc3RlcktleUlkOiBjdXN0b21lck1hc3RlcktleUlkLFxuICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgcmVnaW9uOiBcIkFQX05PUlRIRUFTVF8yXCIsXG4gIH0sXG59KTtcbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWcuZGVmYXVsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sMS1yZXNvdXJjZXMvZW5jcnlwdGlvbi1hdC1yZXN0L2ludGVnLmRlZmF1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtQ0FBbUM7QUFDbkMsbUNBQThDO0FBRTlDLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDO0FBQzFCLE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsMEJBQTBCLEVBQUU7SUFDM0QsR0FBRyxFQUFFO1FBQ0gsTUFBTSxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsa0JBQWtCO1FBQ3RDLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtLQUN6QztDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sU0FBUyxHQUNiLEtBQUssQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLG9CQUFvQixDQUFDO0lBQzlDLE9BQU8sQ0FBQyxHQUFHLENBQUMsd0JBQXdCLENBQUM7QUFDdkMsTUFBTSxtQkFBbUIsR0FDdkIsS0FBSyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsd0JBQXdCLENBQUM7SUFDbEQsT0FBTyxDQUFDLEdBQUcsQ0FBQyxzQkFBc0IsQ0FBQztBQUNyQyxNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztBQUUxRSxJQUFJLDJCQUFtQixDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBRTtJQUNqRCxTQUFTLEVBQUUsU0FBUztJQUNwQixZQUFZLEVBQUU7UUFDWixNQUFNLEVBQUUsTUFBTTtRQUNkLG1CQUFtQixFQUFFLG1CQUFtQjtRQUN4QyxPQUFPLEVBQUUsSUFBSTtRQUNiLE1BQU0sRUFBRSxnQkFBZ0I7S0FDekI7Q0FDRixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgeyBDZm5FbmNyeXB0aW9uQXRSZXN0IH0gZnJvbSBcIi4vaW5kZXhcIjtcblxuY29uc3QgYXBwID0gbmV3IGNkay5BcHAoKTtcbmNvbnN0IHN0YWNrID0gbmV3IGNkay5TdGFjayhhcHAsIFwiYXRsYXMtRW5jQXRSZXN0LWNkay10ZXN0XCIsIHtcbiAgZW52OiB7XG4gICAgcmVnaW9uOiBwcm9jZXNzLmVudi5DREtfREVGQVVMVF9SRUdJT04sXG4gICAgYWNjb3VudDogcHJvY2Vzcy5lbnYuQ0RLX0RFRkFVTFRfQUNDT1VOVCxcbiAgfSxcbn0pO1xuXG5jb25zdCBwcm9qZWN0SWQgPVxuICBzdGFjay5ub2RlLnRyeUdldENvbnRleHQoXCJNT05HT0RCX1BST0pFQ1RfSURcIikgfHxcbiAgcHJvY2Vzcy5lbnYuTU9OR09EQl9BVExBU19QUk9KRUNUX0lEO1xuY29uc3QgY3VzdG9tZXJNYXN0ZXJLZXlJZCA9XG4gIHN0YWNrLm5vZGUudHJ5R2V0Q29udGV4dChcIkNVU1RPTUVSX01BU1RFUl9LRVlfSURcIikgfHxcbiAgcHJvY2Vzcy5lbnYuQ1VTVE9NRVJfTUFTVEVSX0tFWV9JRDtcbmNvbnN0IHJvbGVJRCA9IHN0YWNrLm5vZGUudHJ5R2V0Q29udGV4dChcIlJPTEVfSURcIikgfHwgcHJvY2Vzcy5lbnYuUk9MRV9JRDtcblxubmV3IENmbkVuY3J5cHRpb25BdFJlc3Qoc3RhY2ssIFwiZW5jcnlwdGlvbkF0UmVzdFwiLCB7XG4gIHByb2plY3RJZDogcHJvamVjdElkLFxuICBhd3NLbXNDb25maWc6IHtcbiAgICByb2xlSWQ6IHJvbGVJRCxcbiAgICBjdXN0b21lck1hc3RlcktleUlkOiBjdXN0b21lck1hc3RlcktleUlkLFxuICAgIGVuYWJsZWQ6IHRydWUsXG4gICAgcmVnaW9uOiBcIkFQX05PUlRIRUFTVF8yXCIsXG4gIH0sXG59KTtcbiJdfQ==

@@ -407,14 +407,2 @@ import * as cdk from "aws-cdk-lib";

/**
* Attribute `MongoDB::Atlas::FederatedDatabaseInstance.CloudProviderConfig.ExternalId`
*/
readonly attrExternalId: string;
/**
* Attribute `MongoDB::Atlas::FederatedDatabaseInstance.CloudProviderConfig.IamAssumedRoleARN`
*/
readonly attrIamAssumedRoleARNN: string;
/**
* Attribute `MongoDB::Atlas::FederatedDatabaseInstance.CloudProviderConfig.IamUserARN`
*/
readonly attrIamUserARN: string;
/**
* Create a new `MongoDB::Atlas::FederatedDatabaseInstance`.

@@ -421,0 +409,0 @@ *

@@ -230,5 +230,2 @@ "use strict";

this.attrState = cdk.Token.asString(this.getAtt("State"));
this.attrExternalId = cdk.Token.asString(this.getAtt("CloudProviderConfig.ExternalId"));
this.attrIamUserARN = cdk.Token.asString(this.getAtt("CloudProviderConfig.IamUserARN"));
this.attrIamAssumedRoleARNN = cdk.Token.asString(this.getAtt("CloudProviderConfig.IamAssumedRoleARN"));
}

@@ -238,3 +235,3 @@ }

_a = JSII_RTTI_SYMBOL_1;
CfnFederatedDatabaseInstance[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnFederatedDatabaseInstance", version: "3.7.2" };
CfnFederatedDatabaseInstance[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnFederatedDatabaseInstance", version: "3.8.0" };
/**

@@ -244,2 +241,2 @@ * The CloudFormation resource type name for this resource class.

CfnFederatedDatabaseInstance.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::FederatedDatabaseInstance";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2ZlZGVyYXRlZC1kYXRhYmFzZS1pbnN0YW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUEyRG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHdDQUF3QyxDQUN0RCxHQUFrRDtJQUVsRCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLG1CQUFtQixFQUFFLDBCQUEwQixDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQztRQUN4RSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUM7UUFDbEUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCO1FBQzFDLE9BQU8sRUFBRSxjQUFjLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUNwQyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87S0FDckIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBcEJELDRGQW9C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ZixJQUFJLEVBQUUsNEJBQTRCLENBQUMsc0JBQXNCO1lBQ3pELFVBQVUsRUFBRSx3Q0FBd0MsQ0FBQyxLQUFLLENBQUU7U0FDN0QsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDMUQsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUM5QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUM5QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUM5QyxJQUFJLENBQUMsTUFBTSxDQUFDLHVDQUF1QyxDQUFDLENBQ3JELENBQUM7SUFDSixDQUFDOztBQWxFSCxvRUFtRUM7OztBQWxFQzs7R0FFRztBQUNvQixtREFBc0IsR0FDM0MsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGVkaXRzLCBhbmQgcmVtb3ZlcyBGZWRlcmF0ZWQgRGF0YWJhc2UgSW5zdGFuY2VzLlxuICpcbiAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIENsb3VkIHByb3ZpZGVyIGxpbmtlZCB0byB0aGlzIGRhdGEgbGFrZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMjQ2xvdWRQcm92aWRlckNvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRQcm92aWRlckNvbmZpZz86IENsb3VkUHJvdmlkZXJDb25maWc7XG5cbiAgLyoqXG4gICAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSBjbG91ZCBwcm92aWRlciByZWdpb24gdG8gd2hpY2ggdGhlIGRhdGEgbGFrZSByb3V0ZXMgY2xpZW50IGNvbm5lY3Rpb25zLiBNb25nb0RCIENsb3VkIHN1cHBvcnRzIEFXUyBvbmx5LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcyNEYXRhUHJvY2Vzc1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVByb2Nlc3NSZWdpb24/OiBEYXRhUHJvY2Vzc1JlZ2lvbjtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGEgZmVkZXJhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMjVGVuYW50TmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdGVuYW50TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhpcyByZXF1ZXN0IHNob3VsZCBjaGVjayBpZiB0aGUgcmVxdWVzdGluZyBJQU0gcm9sZSBjYW4gcmVhZCBmcm9tIHRoZSBTMyBidWNrZXQuIEFXUyBjaGVja3MgaWYgdGhlIHJvbGUgY2FuIGxpc3QgdGhlIG9iamVjdHMgaW4gdGhlIGJ1Y2tldCBiZWZvcmUgd3JpdGluZyB0byBpdC4gU29tZSBJQU0gcm9sZXMgb25seSBuZWVkIHdyaXRlIHBlcm1pc3Npb25zLiBUaGlzIGZsYWcgYWxsb3dzIHlvdSB0byBza2lwIHRoYXQgY2hlY2suXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzI1NraXBSb2xlVmFsaWRhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgc2tpcFJvbGVWYWxpZGF0aW9uPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQ29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiBmb3IgZWFjaCBkYXRhIHN0b3JlIGFuZCBpdHMgbWFwcGluZyB0byBNb25nb0RCIENsb3VkIGRhdGFiYXNlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMjU3RvcmFnZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RvcmFnZT86IFN0b3JhZ2U7XG5cbiAgLyoqXG4gICAqIFRoZSBwcm9maWxlIGlzIGRlZmluZWQgaW4gQVdTIFNlY3JldCBtYW5hZ2VyLiBTZWUgW1NlY3JldCBNYW5hZ2VyIFByb2ZpbGUgc2V0dXBdKC4uLy4uLy4uL2V4YW1wbGVzL3Byb2ZpbGUtc2VjcmV0LnlhbWwpLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcyhcbiAgb2JqOiBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDbG91ZFByb3ZpZGVyQ29uZmlnOiB0b0pzb25fQ2xvdWRQcm92aWRlckNvbmZpZyhvYmouY2xvdWRQcm92aWRlckNvbmZpZyksXG4gICAgRGF0YVByb2Nlc3NSZWdpb246IHRvSnNvbl9EYXRhUHJvY2Vzc1JlZ2lvbihvYmouZGF0YVByb2Nlc3NSZWdpb24pLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBUZW5hbnROYW1lOiBvYmoudGVuYW50TmFtZSxcbiAgICBTa2lwUm9sZVZhbGlkYXRpb246IG9iai5za2lwUm9sZVZhbGlkYXRpb24sXG4gICAgU3RvcmFnZTogdG9Kc29uX1N0b3JhZ2Uob2JqLnN0b3JhZ2UpLFxuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBDbG91ZCBwcm92aWRlciBsaW5rZWQgdG8gdGhpcyBkYXRhIGxha2UuLlxuICpcbiAqIEBzY2hlbWEgQ2xvdWRQcm92aWRlckNvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENsb3VkUHJvdmlkZXJDb25maWcge1xuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHJvbGUgdGhhdCB0aGUgZGF0YSBsYWtlIGNhbiB1c2UgdG8gYWNjZXNzIHRoZSBkYXRhIHN0b3Jlcy5SZXF1aXJlZCBpZiBzcGVjaWZ5aW5nIGNsb3VkUHJvdmlkZXJDb25maWcuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2xvdWRQcm92aWRlckNvbmZpZyNFeHRlcm5hbElkXG4gICAqL1xuICByZWFkb25seSBleHRlcm5hbElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgSWRlbnRpdHkgYW5kIEFjY2VzcyBNYW5hZ2VtZW50IChJQU0pIHJvbGUgdGhhdCB0aGUgZGF0YSBsYWtlIGFzc3VtZXMgd2hlbiBhY2Nlc3NpbmcgZGF0YSBzdG9yZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2xvdWRQcm92aWRlckNvbmZpZyNJYW1Bc3N1bWVkUm9sZUFSTlxuICAgKi9cbiAgcmVhZG9ubHkgaWFtQXNzdW1lZFJvbGVBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFtYXpvbiBSZXNvdXJjZSBOYW1lIChBUk4pIG9mIHRoZSB1c2VyIHRoYXQgdGhlIGRhdGEgbGFrZSBhc3N1bWVzIHdoZW4gYWNjZXNzaW5nIGRhdGEgc3RvcmVzLlxuICAgKlxuICAgKiBAc2NoZW1hIENsb3VkUHJvdmlkZXJDb25maWcjSWFtVXNlckFSTlxuICAgKi9cbiAgcmVhZG9ubHkgaWFtVXNlckFybj86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIHJvbGUgdGhhdCB0aGUgZGF0YSBsYWtlIGNhbiB1c2UgdG8gYWNjZXNzIHRoZSBkYXRhIHN0b3Jlcy5SZXF1aXJlZCBpZiBzcGVjaWZ5aW5nIGNsb3VkUHJvdmlkZXJDb25maWcuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2xvdWRQcm92aWRlckNvbmZpZyNSb2xlSWRcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgUzMgZGF0YSBidWNrZXQgdGhhdCB0aGUgcHJvdmlkZWQgcm9sZSBJRCBpcyBhdXRob3JpemVkIHRvIGFjY2Vzcy5SZXF1aXJlZCBpZiBzcGVjaWZ5aW5nIGNsb3VkUHJvdmlkZXJDb25maWcuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2xvdWRQcm92aWRlckNvbmZpZyNUZXN0UzNCdWNrZXRcbiAgICovXG4gIHJlYWRvbmx5IHRlc3RTM0J1Y2tldD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2xvdWRQcm92aWRlckNvbmZpZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2xvdWRQcm92aWRlckNvbmZpZyhcbiAgb2JqOiBDbG91ZFByb3ZpZGVyQ29uZmlnIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRXh0ZXJuYWxJZDogb2JqLmV4dGVybmFsSWQsXG4gICAgSWFtQXNzdW1lZFJvbGVBUk46IG9iai5pYW1Bc3N1bWVkUm9sZUFybixcbiAgICBJYW1Vc2VyQVJOOiBvYmouaWFtVXNlckFybixcbiAgICBSb2xlSWQ6IG9iai5yb2xlSWQsXG4gICAgVGVzdFMzQnVja2V0OiBvYmoudGVzdFMzQnVja2V0LFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgY2xvdWQgcHJvdmlkZXIgcmVnaW9uIHRvIHdoaWNoIHRoZSBkYXRhIGxha2Ugcm91dGVzIGNsaWVudCBjb25uZWN0aW9ucy4gTW9uZ29EQiBDbG91ZCBzdXBwb3J0cyBBV1Mgb25seS5cbiAqXG4gKiBAc2NoZW1hIERhdGFQcm9jZXNzUmVnaW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVByb2Nlc3NSZWdpb24ge1xuICAvKipcbiAgICogTmFtZSBvZiB0aGUgY2xvdWQgc2VydmljZSB0aGF0IGhvc3RzIHRoZSBkYXRhIGxha2UncyBkYXRhIHN0b3Jlcy5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhUHJvY2Vzc1JlZ2lvbiNDbG91ZFByb3ZpZGVyXG4gICAqL1xuICByZWFkb25seSBjbG91ZFByb3ZpZGVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSByZWdpb24gdG8gd2hpY2ggdGhlIGRhdGEgbGFrZSByb3V0ZXMgY2xpZW50IGNvbm5lY3Rpb25zLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFQcm9jZXNzUmVnaW9uI1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0RhdGFQcm9jZXNzUmVnaW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9EYXRhUHJvY2Vzc1JlZ2lvbihcbiAgb2JqOiBEYXRhUHJvY2Vzc1JlZ2lvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENsb3VkUHJvdmlkZXI6IG9iai5jbG91ZFByb3ZpZGVyLFxuICAgIFJlZ2lvbjogb2JqLnJlZ2lvbixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQ29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiBmb3IgZWFjaCBkYXRhIHN0b3JlIGFuZCBpdHMgbWFwcGluZyB0byBNb25nb0RCIENsb3VkIGRhdGFiYXNlcy5cbiAqXG4gKiBAc2NoZW1hIFN0b3JhZ2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdG9yYWdlIHtcbiAgLyoqXG4gICAqIEFycmF5IHRoYXQgY29udGFpbnMgdGhlIHF1ZXJ5YWJsZSBkYXRhYmFzZXMgYW5kIGNvbGxlY3Rpb25zIGZvciB0aGlzIGRhdGEgbGFrZS5cbiAgICpcbiAgICogQHNjaGVtYSBTdG9yYWdlI0RhdGFiYXNlc1xuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2VzPzogRGF0YWJhc2VbXTtcblxuICAvKipcbiAgICogQXJyYXkgdGhhdCBjb250YWlucyB0aGUgZGF0YSBzdG9yZXMgZm9yIHRoZSBkYXRhIGxha2UuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RvcmFnZSNTdG9yZXNcbiAgICovXG4gIHJlYWRvbmx5IHN0b3Jlcz86IFN0b3JlW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N0b3JhZ2UnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1N0b3JhZ2UoXG4gIG9iajogU3RvcmFnZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIERhdGFiYXNlczogb2JqLmRhdGFiYXNlcz8ubWFwKCh5KSA9PiB0b0pzb25fRGF0YWJhc2UoeSkpLFxuICAgIFN0b3Jlczogb2JqLnN0b3Jlcz8ubWFwKCh5KSA9PiB0b0pzb25fU3RvcmUoeSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIERhdGFiYXNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YWJhc2Uge1xuICAvKipcbiAgICogQXJyYXkgb2YgY29sbGVjdGlvbnMgYW5kIGRhdGEgc291cmNlcyB0aGF0IG1hcCB0byBhIHN0b3JlcyBkYXRhIHN0b3JlLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlI0NvbGxlY3Rpb25zXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9ucz86IENvbGxlY3Rpb25bXTtcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2Ygd2lsZGNhcmQgY29sbGVjdGlvbnMgaW4gdGhlIGRhdGFiYXNlLiBUaGlzIG9ubHkgYXBwbGllcyB0byBTMyBkYXRhIHNvdXJjZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2UjTWF4V2lsZGNhcmRDb2xsZWN0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgbWF4V2lsZGNhcmRDb2xsZWN0aW9ucz86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBkYXRhYmFzZSB0byB3aGljaCB0aGUgZGF0YSBsYWtlIG1hcHMgZGF0YS5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZSNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBcnJheSBvZiBhZ2dyZWdhdGlvbiBwaXBlbGluZXMgdGhhdCBhcHBseSB0byB0aGUgY29sbGVjdGlvbi4gVGhpcyBvbmx5IGFwcGxpZXMgdG8gUzMgZGF0YSBzb3VyY2VzLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlI1ZpZXdzXG4gICAqL1xuICByZWFkb25seSB2aWV3cz86IFZpZXdbXTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRGF0YWJhc2UnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0RhdGFiYXNlKFxuICBvYmo6IERhdGFiYXNlIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ29sbGVjdGlvbnM6IG9iai5jb2xsZWN0aW9ucz8ubWFwKCh5KSA9PiB0b0pzb25fQ29sbGVjdGlvbih5KSksXG4gICAgTWF4V2lsZGNhcmRDb2xsZWN0aW9uczogb2JqLm1heFdpbGRjYXJkQ29sbGVjdGlvbnMsXG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgVmlld3M6IG9iai52aWV3cz8ubWFwKCh5KSA9PiB0b0pzb25fVmlldyh5KSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEFycmF5IHRoYXQgY29udGFpbnMgdGhlIGRhdGEgc3RvcmVzIGZvciB0aGUgZGF0YSBsYWtlLlxuICpcbiAqIEBzY2hlbWEgU3RvcmVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdG9yZSB7XG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGEgc3RvcmUuIFRoZSBkYXRhYmFzZXMuW25dLmNvbGxlY3Rpb25zLltuXS5kYXRhU291cmNlcy5bbl0uc3RvcmVOYW1lIGZpZWxkIHJlZmVyZW5jZXMgdGhpcyB2YWx1ZXMgYXMgcGFydCBvZiB0aGUgbWFwcGluZyBjb25maWd1cmF0aW9uLiBUbyB1c2UgTW9uZ29EQiBDbG91ZCBhcyBhIGRhdGEgc3RvcmUsIHRoZSBkYXRhIGxha2UgcmVxdWlyZXMgYSBzZXJ2ZXJsZXNzIGluc3RhbmNlIG9yIGFuIE0xMCBvciBoaWdoZXIgY2x1c3Rlci5cbiAgICpcbiAgICogQHNjaGVtYSBTdG9yZSNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbGxvd2VkIHZhbHVlcyBhdGxhcywgaHR0cCwgb25saW5lX2FyY2hpdmUsIHMzIGFuZCBEYXRhTGFrZUF6dXJlQmxvYlN0b3JlLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0b3JlI1Byb3ZpZGVyXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgb2YgdGhlIE1vbmdvREIgQ2xvdWQgY2x1c3RlciBvbiB3aGljaCB0aGUgc3RvcmUgaXMgYmFzZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RvcmUjQ2x1c3Rlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGNsdXN0ZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcHJvamVjdC5SZWdleCBeKFthLWYwLTldezI0fSkkIC5cbiAgICpcbiAgICogQHNjaGVtYSBTdG9yZSNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTW9uZ29EQiBDbG91ZCBjbHVzdGVyIHJlYWQgcHJlZmVyZW5jZSwgd2hpY2ggZGVzY3JpYmVzIGhvdyB0byByb3V0ZSByZWFkIHJlcXVlc3RzIHRvIHRoZSBjbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0b3JlI1JlYWRQcmVmZXJlbmNlXG4gICAqL1xuICByZWFkb25seSByZWFkUHJlZmVyZW5jZT86IFJlYWRQcmVmZXJlbmNlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTdG9yZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU3RvcmUoXG4gIG9iajogU3RvcmUgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBQcm92aWRlcjogb2JqLnByb3ZpZGVyLFxuICAgIENsdXN0ZXJOYW1lOiBvYmouY2x1c3Rlck5hbWUsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIFJlYWRQcmVmZXJlbmNlOiB0b0pzb25fUmVhZFByZWZlcmVuY2Uob2JqLnJlYWRQcmVmZXJlbmNlKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQXJyYXkgb2YgY29sbGVjdGlvbnMgYW5kIGRhdGEgc291cmNlcyB0aGF0IG1hcCB0byBhIHN0b3JlcyBkYXRhIHN0b3JlLlxuICpcbiAqIEBzY2hlbWEgQ29sbGVjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIENvbGxlY3Rpb24ge1xuICAvKipcbiAgICogQXJyYXkgdGhhdCBjb250YWlucyB0aGUgZGF0YSBzdG9yZXMgdGhhdCBtYXAgdG8gYSBjb2xsZWN0aW9uIGZvciB0aGlzIGRhdGEgbGFrZS5cbiAgICpcbiAgICogQHNjaGVtYSBDb2xsZWN0aW9uI0RhdGFTb3VyY2VzXG4gICAqL1xuICByZWFkb25seSBkYXRhU291cmNlcz86IERhdGFTb3VyY2VbXTtcblxuICAvKipcbiAgICogQHNjaGVtYSBDb2xsZWN0aW9uI05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NvbGxlY3Rpb24nIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NvbGxlY3Rpb24oXG4gIG9iajogQ29sbGVjdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIERhdGFTb3VyY2VzOiBvYmouZGF0YVNvdXJjZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX0RhdGFTb3VyY2UoeSkpLFxuICAgIE5hbWU6IG9iai5uYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBWaWV3IHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgdmlldywgd2hpY2ggY29ycmVzcG9uZHMgdG8gYW4gYWdncmVnYXRpb24gcGlwZWxpbmUgb24gYSBjb2xsZWN0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIFZpZXcjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQWdncmVnYXRpb24gcGlwZWxpbmUgc3RhZ2VzIHRvIGFwcGx5IHRvIHRoZSBzb3VyY2UgY29sbGVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBWaWV3I1BpcGVsaW5lXG4gICAqL1xuICByZWFkb25seSBwaXBlbGluZT86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBzb3VyY2UgY29sbGVjdGlvbiBmb3IgdGhlIHZpZXcuXG4gICAqXG4gICAqIEBzY2hlbWEgVmlldyNTb3VyY2VcbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnVmlldycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fVmlldyhcbiAgb2JqOiBWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgUGlwZWxpbmU6IG9iai5waXBlbGluZSxcbiAgICBTb3VyY2U6IG9iai5zb3VyY2UsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgUmVhZFByZWZlcmVuY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWFkUHJlZmVyZW5jZSB7XG4gIC8qKlxuICAgKiBcInByaW1hcnlcIiBcInByaW1hcnlQcmVmZXJyZWRcIiBcInNlY29uZGFyeVwiIFwic2Vjb25kYXJ5UHJlZmVycmVkXCIgXCJuZWFyZXN0XCJcbiAgICogUmVhZCBwcmVmZXJlbmNlIG1vZGUgdGhhdCBzcGVjaWZpZXMgdG8gd2hpY2ggcmVwbGljYSBzZXQgbWVtYmVyIHRvIHJvdXRlIHRoZSByZWFkIHJlcXVlc3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIFJlYWRQcmVmZXJlbmNlI01vZGVcbiAgICovXG4gIHJlYWRvbmx5IG1vZGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gcmVwbGljYXRpb24gbGFnLCBvciBzdGFsZW5lc3MsIGZvciByZWFkcyBmcm9tIHNlY29uZGFyaWVzLlxuICAgKlxuICAgKiBAc2NoZW1hIFJlYWRQcmVmZXJlbmNlI01heFN0YWxlbmVzc1NlY29uZHNcbiAgICovXG4gIHJlYWRvbmx5IG1heFN0YWxlbmVzc1NlY29uZHM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyB0YWcgc2V0cyBvciB0YWcgc3BlY2lmaWNhdGlvbiBkb2N1bWVudHMuIElmIHNwZWNpZmllZCwgQXRsYXMgRGF0YSBMYWtlIHJvdXRlcyByZWFkIHJlcXVlc3RzIHRvIHJlcGxpY2Egc2V0IG1lbWJlciBvciBtZW1iZXJzIHRoYXQgYXJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgc3BlY2lmaWVkIHRhZ3MuXG4gICAqXG4gICAqIEBzY2hlbWEgUmVhZFByZWZlcmVuY2UjVGFnU2V0c1xuICAgKi9cbiAgcmVhZG9ubHkgdGFnU2V0cz86IFRhZ1NldFtdW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1JlYWRQcmVmZXJlbmNlJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9SZWFkUHJlZmVyZW5jZShcbiAgb2JqOiBSZWFkUHJlZmVyZW5jZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE1vZGU6IG9iai5tb2RlLFxuICAgIE1heFN0YWxlbmVzc1NlY29uZHM6IG9iai5tYXhTdGFsZW5lc3NTZWNvbmRzLFxuICAgIFRhZ1NldHM6IG9iai50YWdTZXRzPy5tYXAoKHkpID0+IHk/Lm1hcCgoeCkgPT4gdG9Kc29uX1RhZ1NldCh4KSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIERhdGFTb3VyY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYXRhU291cmNlIHtcbiAgLyoqXG4gICAqIEZsYWcgdGhhdCB2YWxpZGF0ZXMgdGhlIHNjaGVtZSBpbiB0aGUgc3BlY2lmaWVkIFVSTHMuIElmIHRydWUsIGFsbG93cyBpbnNlY3VyZSBIVFRQIHNjaGVtZSwgZG9lc24ndCB2ZXJpZnkgdGhlIHNlcnZlcidzIGNlcnRpZmljYXRlIGNoYWluIGFuZCBob3N0bmFtZSwgYW5kIGFjY2VwdHMgYW55IGNlcnRpZmljYXRlIHdpdGggYW55IGhvc3RuYW1lIHByZXNlbnRlZCBieSB0aGUgc2VydmVyLiBJZiBmYWxzZSwgYWxsb3dzIHNlY3VyZSBIVFRQUyBzY2hlbWUgb25seS5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI0FsbG93SW5zZWN1cmVcbiAgICovXG4gIHJlYWRvbmx5IGFsbG93SW5zZWN1cmU/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNvbGxlY3Rpb24gaW4gdGhlIGRhdGFiYXNlLiBGb3IgY3JlYXRpbmcgYSB3aWxkY2FyZCAoKikgY29sbGVjdGlvbiwgeW91IG11c3Qgb21pdCB0aGlzIHBhcmFtZXRlci5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI0NvbGxlY3Rpb25cbiAgICovXG4gIHJlYWRvbmx5IGNvbGxlY3Rpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJlZ2V4IHBhdHRlcm4gdG8gdXNlIGZvciBjcmVhdGluZyB0aGUgd2lsZGNhcmQgKCopIGNvbGxlY3Rpb24uIFRvIGxlYXJuIG1vcmUgYWJvdXQgdGhlIHJlZ2V4IHN5bnRheCwgc2VlIEdvIHByb2dyYW1taW5nIGxhbmd1YWdlLiggaHR0cHM6Ly9wa2cuZ28uZGV2L3JlZ2V4cCApLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFTb3VyY2UjQ29sbGVjdGlvblJlZ2V4XG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uUmVnZXg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgZGF0YWJhc2UsIHdoaWNoIGNvbnRhaW5zIHRoZSBjb2xsZWN0aW9uIGluIHRoZSBjbHVzdGVyLiBZb3UgbXVzdCBvbWl0IHRoaXMgcGFyYW1ldGVyIHRvIGdlbmVyYXRlIHdpbGRjYXJkICgqKSBjb2xsZWN0aW9ucyBmb3IgZHluYW1pY2FsbHkgZ2VuZXJhdGVkIGRhdGFiYXNlcy5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI0RhdGFiYXNlXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZT86IHN0cmluZztcblxuICAvKipcbiAgICogUmVnZXggcGF0dGVybiB0byB1c2UgZm9yIGNyZWF0aW5nIHRoZSB3aWxkY2FyZCAoKikgY29sbGVjdGlvbi4gVG8gbGVhcm4gbW9yZSBhYm91dCB0aGUgcmVnZXggc3ludGF4LCBzZWUgR28gcHJvZ3JhbW1pbmcgbGFuZ3VhZ2UuKCBodHRwczovL3BrZy5nby5kZXYvcmVnZXhwICkuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNEYXRhYmFzZVJlZ2V4XG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZVJlZ2V4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaWxlIGZvcm1hdCB0aGF0IE1vbmdvREIgQ2xvdWQgdXNlcyBpZiBpdCBlbmNvdW50ZXJzIGEgZmlsZSB3aXRob3V0IGEgZmlsZSBleHRlbnNpb24gd2hpbGUgc2VhcmNoaW5nIHN0b3JlTmFtZS5FbnVtOiBcIi5hdnJvXCIgXCIuYXZyby5iejJcIiBcIi5hdnJvLmd6XCIgXCIuYnNvblwiIFwiLmJzb24uYnoyXCIgXCIuYnNvbi5nelwiIFwiLmJzb254XCIgXCIuY3N2XCIgXCIuY3N2LmJ6MlwiIFwiLmNzdi5nelwiIFwiLmpzb25cIiBcIi5qc29uLmJ6MlwiIFwiLmpzb24uZ3pcIiBcIi5vcmNcIiBcIi5wYXJxdWV0XCIgXCIudHN2XCIgXCIudHN2LmJ6MlwiIFwiLnRzdi5nelwiXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNEZWZhdWx0Rm9ybWF0XG4gICAqL1xuICByZWFkb25seSBkZWZhdWx0Rm9ybWF0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaWxlIHBhdGggdGhhdCBjb250cm9scyBob3cgTW9uZ29EQiBDbG91ZCBzZWFyY2hlcyBmb3IgYW5kIHBhcnNlcyBmaWxlcyBpbiB0aGUgc3RvcmVOYW1lIGJlZm9yZSBtYXBwaW5nIHRoZW0gdG8gYSBjb2xsZWN0aW9uLlNwZWNpZnkgLyB0byBjYXB0dXJlIGFsbCBmaWxlcyBhbmQgZm9sZGVycyBmcm9tIHRoZSBwcmVmaXggcGF0aC5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI1BhdGhcbiAgICovXG4gIHJlYWRvbmx5IHBhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgZm9yIHRoZSBmaWVsZCB0aGF0IGluY2x1ZGVzIHRoZSBwcm92ZW5hbmNlIG9mIHRoZSBkb2N1bWVudHMgaW4gdGhlIHJlc3VsdHMuIE1vbmdvREIgQ2xvdWQgcmV0dXJucyBkaWZmZXJlbnQgZmllbGRzIGluIHRoZSByZXN1bHRzIGZvciBlYWNoIHN1cHBvcnRlZCBwcm92aWRlci5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI1Byb3ZlbmFuY2VGaWVsZE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHByb3ZlbmFuY2VGaWVsZE5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgZGF0YSBzdG9yZSB0aGF0IE1vbmdvREIgQ2xvdWQgbWFwcyB0byB0aGUgY29sbGVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI1N0b3JlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RvcmVOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVUkxzIG9mIHRoZSBwdWJsaWNseSBhY2Nlc3NpYmxlIGRhdGEgZmlsZXMuIFlvdSBjYW4ndCBzcGVjaWZ5IFVSTHMgdGhhdCByZXF1aXJlIGF1dGhlbnRpY2F0aW9uLiBBdGxhcyBEYXRhIExha2UgY3JlYXRlcyBhIHBhcnRpdGlvbiBmb3IgZWFjaCBVUkwuIElmIGVtcHR5IG9yIG9taXR0ZWQsIERhdGEgTGFrZSB1c2VzIHRoZSBVUkxzIGZyb20gdGhlIHN0b3JlIHNwZWNpZmllZCBpbiB0aGUgZGF0YVNvdXJjZXMuc3RvcmVOYW1lIHBhcmFtZXRlci5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI1VybHNcbiAgICovXG4gIHJlYWRvbmx5IHVybHM/OiBzdHJpbmdbXTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRGF0YVNvdXJjZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fRGF0YVNvdXJjZShcbiAgb2JqOiBEYXRhU291cmNlIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQWxsb3dJbnNlY3VyZTogb2JqLmFsbG93SW5zZWN1cmUsXG4gICAgQ29sbGVjdGlvbjogb2JqLmNvbGxlY3Rpb24sXG4gICAgQ29sbGVjdGlvblJlZ2V4OiBvYmouY29sbGVjdGlvblJlZ2V4LFxuICAgIERhdGFiYXNlOiBvYmouZGF0YWJhc2UsXG4gICAgRGF0YWJhc2VSZWdleDogb2JqLmRhdGFiYXNlUmVnZXgsXG4gICAgRGVmYXVsdEZvcm1hdDogb2JqLmRlZmF1bHRGb3JtYXQsXG4gICAgUGF0aDogb2JqLnBhdGgsXG4gICAgUHJvdmVuYW5jZUZpZWxkTmFtZTogb2JqLnByb3ZlbmFuY2VGaWVsZE5hbWUsXG4gICAgU3RvcmVOYW1lOiBvYmouc3RvcmVOYW1lLFxuICAgIFVybHM6IG9iai51cmxzPy5tYXAoKHkpID0+IHkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFRhZ1NldFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhZ1NldCB7XG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCBvZiB0aGUgdGFnLlxuICAgKlxuICAgKiBAc2NoZW1hIFRhZ1NldCNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCBvZiB0aGUgdGFnLlxuICAgKlxuICAgKiBAc2NoZW1hIFRhZ1NldCNWYWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1RhZ1NldCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fVGFnU2V0KFxuICBvYmo6IFRhZ1NldCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIFZhbHVlOiBvYmoudmFsdWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZS5Ib3N0TmFtZXNgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckhvc3ROYW1lczogc3RyaW5nW107XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlLlN0YXRlYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJTdGF0ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlLkNsb3VkUHJvdmlkZXJDb25maWcuRXh0ZXJuYWxJZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRXh0ZXJuYWxJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlLkNsb3VkUHJvdmlkZXJDb25maWcuSWFtQXNzdW1lZFJvbGVBUk5gXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklhbUFzc3VtZWRSb2xlQVJOTjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlLkNsb3VkUHJvdmlkZXJDb25maWcuSWFtVXNlckFSTmBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWFtVXNlckFSTjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2UuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0ckhvc3ROYW1lcyA9IGNkay5Ub2tlbi5hc0xpc3QodGhpcy5nZXRBdHQoXCJIb3N0TmFtZXNcIikpO1xuICAgIHRoaXMuYXR0clN0YXRlID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdGVcIikpO1xuICAgIHRoaXMuYXR0ckV4dGVybmFsSWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcoXG4gICAgICB0aGlzLmdldEF0dChcIkNsb3VkUHJvdmlkZXJDb25maWcuRXh0ZXJuYWxJZFwiKVxuICAgICk7XG4gICAgdGhpcy5hdHRySWFtVXNlckFSTiA9IGNkay5Ub2tlbi5hc1N0cmluZyhcbiAgICAgIHRoaXMuZ2V0QXR0KFwiQ2xvdWRQcm92aWRlckNvbmZpZy5JYW1Vc2VyQVJOXCIpXG4gICAgKTtcbiAgICB0aGlzLmF0dHJJYW1Bc3N1bWVkUm9sZUFSTk4gPSBjZGsuVG9rZW4uYXNTdHJpbmcoXG4gICAgICB0aGlzLmdldEF0dChcIkNsb3VkUHJvdmlkZXJDb25maWcuSWFtQXNzdW1lZFJvbGVBUk5cIilcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2ZlZGVyYXRlZC1kYXRhYmFzZS1pbnN0YW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUEyRG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHdDQUF3QyxDQUN0RCxHQUFrRDtJQUVsRCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLG1CQUFtQixFQUFFLDBCQUEwQixDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQztRQUN4RSxpQkFBaUIsRUFBRSx3QkFBd0IsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLENBQUM7UUFDbEUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCO1FBQzFDLE9BQU8sRUFBRSxjQUFjLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQztRQUNwQyxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87S0FDckIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBcEJELDRGQW9C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ZixJQUFJLEVBQUUsNEJBQTRCLENBQUMsc0JBQXNCO1lBQ3pELFVBQVUsRUFBRSx3Q0FBd0MsQ0FBQyxLQUFLLENBQUU7U0FDN0QsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7UUFDaEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDNUQsQ0FBQzs7QUExQ0gsb0VBMkNDOzs7QUExQ0M7O0dBRUc7QUFDb0IsbURBQXNCLEdBQzNDLDJDQUEyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgRmVkZXJhdGVkIERhdGFiYXNlIEluc3RhbmNlcy5cbiAqXG4gKiBAc2NoZW1hIENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBDbG91ZCBwcm92aWRlciBsaW5rZWQgdG8gdGhpcyBkYXRhIGxha2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzI0Nsb3VkUHJvdmlkZXJDb25maWdcbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkUHJvdmlkZXJDb25maWc/OiBDbG91ZFByb3ZpZGVyQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBJbmZvcm1hdGlvbiBhYm91dCB0aGUgY2xvdWQgcHJvdmlkZXIgcmVnaW9uIHRvIHdoaWNoIHRoZSBkYXRhIGxha2Ugcm91dGVzIGNsaWVudCBjb25uZWN0aW9ucy4gTW9uZ29EQiBDbG91ZCBzdXBwb3J0cyBBV1Mgb25seS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMjRGF0YVByb2Nlc3NSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IGRhdGFQcm9jZXNzUmVnaW9uPzogRGF0YVByb2Nlc3NSZWdpb247XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBkYXRhIGZlZGVyYXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzI1RlbmFudE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHRlbmFudE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoaXMgcmVxdWVzdCBzaG91bGQgY2hlY2sgaWYgdGhlIHJlcXVlc3RpbmcgSUFNIHJvbGUgY2FuIHJlYWQgZnJvbSB0aGUgUzMgYnVja2V0LiBBV1MgY2hlY2tzIGlmIHRoZSByb2xlIGNhbiBsaXN0IHRoZSBvYmplY3RzIGluIHRoZSBidWNrZXQgYmVmb3JlIHdyaXRpbmcgdG8gaXQuIFNvbWUgSUFNIHJvbGVzIG9ubHkgbmVlZCB3cml0ZSBwZXJtaXNzaW9ucy4gVGhpcyBmbGFnIGFsbG93cyB5b3UgdG8gc2tpcCB0aGF0IGNoZWNrLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2VQcm9wcyNTa2lwUm9sZVZhbGlkYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHNraXBSb2xlVmFsaWRhdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIENvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gZm9yIGVhY2ggZGF0YSBzdG9yZSBhbmQgaXRzIG1hcHBpbmcgdG8gTW9uZ29EQiBDbG91ZCBkYXRhYmFzZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzI1N0b3JhZ2VcbiAgICovXG4gIHJlYWRvbmx5IHN0b3JhZ2U/OiBTdG9yYWdlO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHMoXG4gIG9iajogQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2xvdWRQcm92aWRlckNvbmZpZzogdG9Kc29uX0Nsb3VkUHJvdmlkZXJDb25maWcob2JqLmNsb3VkUHJvdmlkZXJDb25maWcpLFxuICAgIERhdGFQcm9jZXNzUmVnaW9uOiB0b0pzb25fRGF0YVByb2Nlc3NSZWdpb24ob2JqLmRhdGFQcm9jZXNzUmVnaW9uKSxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gICAgVGVuYW50TmFtZTogb2JqLnRlbmFudE5hbWUsXG4gICAgU2tpcFJvbGVWYWxpZGF0aW9uOiBvYmouc2tpcFJvbGVWYWxpZGF0aW9uLFxuICAgIFN0b3JhZ2U6IHRvSnNvbl9TdG9yYWdlKG9iai5zdG9yYWdlKSxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQ2xvdWQgcHJvdmlkZXIgbGlua2VkIHRvIHRoaXMgZGF0YSBsYWtlLi5cbiAqXG4gKiBAc2NoZW1hIENsb3VkUHJvdmlkZXJDb25maWdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbG91ZFByb3ZpZGVyQ29uZmlnIHtcbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSByb2xlIHRoYXQgdGhlIGRhdGEgbGFrZSBjYW4gdXNlIHRvIGFjY2VzcyB0aGUgZGF0YSBzdG9yZXMuUmVxdWlyZWQgaWYgc3BlY2lmeWluZyBjbG91ZFByb3ZpZGVyQ29uZmlnLlxuICAgKlxuICAgKiBAc2NoZW1hIENsb3VkUHJvdmlkZXJDb25maWcjRXh0ZXJuYWxJZFxuICAgKi9cbiAgcmVhZG9ubHkgZXh0ZXJuYWxJZD86IHN0cmluZztcblxuICAvKipcbiAgICogQW1hem9uIFJlc291cmNlIE5hbWUgKEFSTikgb2YgdGhlIElkZW50aXR5IGFuZCBBY2Nlc3MgTWFuYWdlbWVudCAoSUFNKSByb2xlIHRoYXQgdGhlIGRhdGEgbGFrZSBhc3N1bWVzIHdoZW4gYWNjZXNzaW5nIGRhdGEgc3RvcmVzLlxuICAgKlxuICAgKiBAc2NoZW1hIENsb3VkUHJvdmlkZXJDb25maWcjSWFtQXNzdW1lZFJvbGVBUk5cbiAgICovXG4gIHJlYWRvbmx5IGlhbUFzc3VtZWRSb2xlQXJuPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBbWF6b24gUmVzb3VyY2UgTmFtZSAoQVJOKSBvZiB0aGUgdXNlciB0aGF0IHRoZSBkYXRhIGxha2UgYXNzdW1lcyB3aGVuIGFjY2Vzc2luZyBkYXRhIHN0b3Jlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDbG91ZFByb3ZpZGVyQ29uZmlnI0lhbVVzZXJBUk5cbiAgICovXG4gIHJlYWRvbmx5IGlhbVVzZXJBcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSByb2xlIHRoYXQgdGhlIGRhdGEgbGFrZSBjYW4gdXNlIHRvIGFjY2VzcyB0aGUgZGF0YSBzdG9yZXMuUmVxdWlyZWQgaWYgc3BlY2lmeWluZyBjbG91ZFByb3ZpZGVyQ29uZmlnLlxuICAgKlxuICAgKiBAc2NoZW1hIENsb3VkUHJvdmlkZXJDb25maWcjUm9sZUlkXG4gICAqL1xuICByZWFkb25seSByb2xlSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIFMzIGRhdGEgYnVja2V0IHRoYXQgdGhlIHByb3ZpZGVkIHJvbGUgSUQgaXMgYXV0aG9yaXplZCB0byBhY2Nlc3MuUmVxdWlyZWQgaWYgc3BlY2lmeWluZyBjbG91ZFByb3ZpZGVyQ29uZmlnLlxuICAgKlxuICAgKiBAc2NoZW1hIENsb3VkUHJvdmlkZXJDb25maWcjVGVzdFMzQnVja2V0XG4gICAqL1xuICByZWFkb25seSB0ZXN0UzNCdWNrZXQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0Nsb3VkUHJvdmlkZXJDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0Nsb3VkUHJvdmlkZXJDb25maWcoXG4gIG9iajogQ2xvdWRQcm92aWRlckNvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEV4dGVybmFsSWQ6IG9iai5leHRlcm5hbElkLFxuICAgIElhbUFzc3VtZWRSb2xlQVJOOiBvYmouaWFtQXNzdW1lZFJvbGVBcm4sXG4gICAgSWFtVXNlckFSTjogb2JqLmlhbVVzZXJBcm4sXG4gICAgUm9sZUlkOiBvYmoucm9sZUlkLFxuICAgIFRlc3RTM0J1Y2tldDogb2JqLnRlc3RTM0J1Y2tldCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogSW5mb3JtYXRpb24gYWJvdXQgdGhlIGNsb3VkIHByb3ZpZGVyIHJlZ2lvbiB0byB3aGljaCB0aGUgZGF0YSBsYWtlIHJvdXRlcyBjbGllbnQgY29ubmVjdGlvbnMuIE1vbmdvREIgQ2xvdWQgc3VwcG9ydHMgQVdTIG9ubHkuXG4gKlxuICogQHNjaGVtYSBEYXRhUHJvY2Vzc1JlZ2lvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFQcm9jZXNzUmVnaW9uIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGNsb3VkIHNlcnZpY2UgdGhhdCBob3N0cyB0aGUgZGF0YSBsYWtlJ3MgZGF0YSBzdG9yZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVByb2Nlc3NSZWdpb24jQ2xvdWRQcm92aWRlclxuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRQcm92aWRlcj86IHN0cmluZztcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgcmVnaW9uIHRvIHdoaWNoIHRoZSBkYXRhIGxha2Ugcm91dGVzIGNsaWVudCBjb25uZWN0aW9ucy5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhUHJvY2Vzc1JlZ2lvbiNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdEYXRhUHJvY2Vzc1JlZ2lvbicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fRGF0YVByb2Nlc3NSZWdpb24oXG4gIG9iajogRGF0YVByb2Nlc3NSZWdpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDbG91ZFByb3ZpZGVyOiBvYmouY2xvdWRQcm92aWRlcixcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIENvbmZpZ3VyYXRpb24gaW5mb3JtYXRpb24gZm9yIGVhY2ggZGF0YSBzdG9yZSBhbmQgaXRzIG1hcHBpbmcgdG8gTW9uZ29EQiBDbG91ZCBkYXRhYmFzZXMuXG4gKlxuICogQHNjaGVtYSBTdG9yYWdlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RvcmFnZSB7XG4gIC8qKlxuICAgKiBBcnJheSB0aGF0IGNvbnRhaW5zIHRoZSBxdWVyeWFibGUgZGF0YWJhc2VzIGFuZCBjb2xsZWN0aW9ucyBmb3IgdGhpcyBkYXRhIGxha2UuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RvcmFnZSNEYXRhYmFzZXNcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlcz86IERhdGFiYXNlW107XG5cbiAgLyoqXG4gICAqIEFycmF5IHRoYXQgY29udGFpbnMgdGhlIGRhdGEgc3RvcmVzIGZvciB0aGUgZGF0YSBsYWtlLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0b3JhZ2UjU3RvcmVzXG4gICAqL1xuICByZWFkb25seSBzdG9yZXM/OiBTdG9yZVtdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTdG9yYWdlJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdG9yYWdlKFxuICBvYmo6IFN0b3JhZ2UgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBEYXRhYmFzZXM6IG9iai5kYXRhYmFzZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX0RhdGFiYXNlKHkpKSxcbiAgICBTdG9yZXM6IG9iai5zdG9yZXM/Lm1hcCgoeSkgPT4gdG9Kc29uX1N0b3JlKHkpKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBEYXRhYmFzZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFiYXNlIHtcbiAgLyoqXG4gICAqIEFycmF5IG9mIGNvbGxlY3Rpb25zIGFuZCBkYXRhIHNvdXJjZXMgdGhhdCBtYXAgdG8gYSBzdG9yZXMgZGF0YSBzdG9yZS5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZSNDb2xsZWN0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbnM/OiBDb2xsZWN0aW9uW107XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIHdpbGRjYXJkIGNvbGxlY3Rpb25zIGluIHRoZSBkYXRhYmFzZS4gVGhpcyBvbmx5IGFwcGxpZXMgdG8gUzMgZGF0YSBzb3VyY2VzLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlI01heFdpbGRjYXJkQ29sbGVjdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IG1heFdpbGRjYXJkQ29sbGVjdGlvbnM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgZGF0YWJhc2UgdG8gd2hpY2ggdGhlIGRhdGEgbGFrZSBtYXBzIGRhdGEuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2UjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQXJyYXkgb2YgYWdncmVnYXRpb24gcGlwZWxpbmVzIHRoYXQgYXBwbHkgdG8gdGhlIGNvbGxlY3Rpb24uIFRoaXMgb25seSBhcHBsaWVzIHRvIFMzIGRhdGEgc291cmNlcy5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZSNWaWV3c1xuICAgKi9cbiAgcmVhZG9ubHkgdmlld3M/OiBWaWV3W107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0RhdGFiYXNlJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9EYXRhYmFzZShcbiAgb2JqOiBEYXRhYmFzZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENvbGxlY3Rpb25zOiBvYmouY29sbGVjdGlvbnM/Lm1hcCgoeSkgPT4gdG9Kc29uX0NvbGxlY3Rpb24oeSkpLFxuICAgIE1heFdpbGRjYXJkQ29sbGVjdGlvbnM6IG9iai5tYXhXaWxkY2FyZENvbGxlY3Rpb25zLFxuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIFZpZXdzOiBvYmoudmlld3M/Lm1hcCgoeSkgPT4gdG9Kc29uX1ZpZXcoeSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBcnJheSB0aGF0IGNvbnRhaW5zIHRoZSBkYXRhIHN0b3JlcyBmb3IgdGhlIGRhdGEgbGFrZS5cbiAqXG4gKiBAc2NoZW1hIFN0b3JlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RvcmUge1xuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBkYXRhIHN0b3JlLiBUaGUgZGF0YWJhc2VzLltuXS5jb2xsZWN0aW9ucy5bbl0uZGF0YVNvdXJjZXMuW25dLnN0b3JlTmFtZSBmaWVsZCByZWZlcmVuY2VzIHRoaXMgdmFsdWVzIGFzIHBhcnQgb2YgdGhlIG1hcHBpbmcgY29uZmlndXJhdGlvbi4gVG8gdXNlIE1vbmdvREIgQ2xvdWQgYXMgYSBkYXRhIHN0b3JlLCB0aGUgZGF0YSBsYWtlIHJlcXVpcmVzIGEgc2VydmVybGVzcyBpbnN0YW5jZSBvciBhbiBNMTAgb3IgaGlnaGVyIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RvcmUjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQWxsb3dlZCB2YWx1ZXMgYXRsYXMsIGh0dHAsIG9ubGluZV9hcmNoaXZlLCBzMyBhbmQgRGF0YUxha2VBenVyZUJsb2JTdG9yZS5cbiAgICpcbiAgICogQHNjaGVtYSBTdG9yZSNQcm92aWRlclxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIG9mIHRoZSBNb25nb0RCIENsb3VkIGNsdXN0ZXIgb24gd2hpY2ggdGhlIHN0b3JlIGlzIGJhc2VkLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0b3JlI0NsdXN0ZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIHByb2plY3QuUmVnZXggXihbYS1mMC05XXsyNH0pJCAuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RvcmUjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgQ2xvdWQgY2x1c3RlciByZWFkIHByZWZlcmVuY2UsIHdoaWNoIGRlc2NyaWJlcyBob3cgdG8gcm91dGUgcmVhZCByZXF1ZXN0cyB0byB0aGUgY2x1c3Rlci5cbiAgICpcbiAgICogQHNjaGVtYSBTdG9yZSNSZWFkUHJlZmVyZW5jZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVhZFByZWZlcmVuY2U/OiBSZWFkUHJlZmVyZW5jZTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU3RvcmUnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1N0b3JlKFxuICBvYmo6IFN0b3JlIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgUHJvdmlkZXI6IG9iai5wcm92aWRlcixcbiAgICBDbHVzdGVyTmFtZTogb2JqLmNsdXN0ZXJOYW1lLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBSZWFkUHJlZmVyZW5jZTogdG9Kc29uX1JlYWRQcmVmZXJlbmNlKG9iai5yZWFkUHJlZmVyZW5jZSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEFycmF5IG9mIGNvbGxlY3Rpb25zIGFuZCBkYXRhIHNvdXJjZXMgdGhhdCBtYXAgdG8gYSBzdG9yZXMgZGF0YSBzdG9yZS5cbiAqXG4gKiBAc2NoZW1hIENvbGxlY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDb2xsZWN0aW9uIHtcbiAgLyoqXG4gICAqIEFycmF5IHRoYXQgY29udGFpbnMgdGhlIGRhdGEgc3RvcmVzIHRoYXQgbWFwIHRvIGEgY29sbGVjdGlvbiBmb3IgdGhpcyBkYXRhIGxha2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ29sbGVjdGlvbiNEYXRhU291cmNlc1xuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVNvdXJjZXM/OiBEYXRhU291cmNlW107XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgQ29sbGVjdGlvbiNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDb2xsZWN0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9Db2xsZWN0aW9uKFxuICBvYmo6IENvbGxlY3Rpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBEYXRhU291cmNlczogb2JqLmRhdGFTb3VyY2VzPy5tYXAoKHkpID0+IHRvSnNvbl9EYXRhU291cmNlKHkpKSxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVmlldyB7XG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIHZpZXcsIHdoaWNoIGNvcnJlc3BvbmRzIHRvIGFuIGFnZ3JlZ2F0aW9uIHBpcGVsaW5lIG9uIGEgY29sbGVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBWaWV3I05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFnZ3JlZ2F0aW9uIHBpcGVsaW5lIHN0YWdlcyB0byBhcHBseSB0byB0aGUgc291cmNlIGNvbGxlY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgVmlldyNQaXBlbGluZVxuICAgKi9cbiAgcmVhZG9ubHkgcGlwZWxpbmU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc291cmNlIGNvbGxlY3Rpb24gZm9yIHRoZSB2aWV3LlxuICAgKlxuICAgKiBAc2NoZW1hIFZpZXcjU291cmNlXG4gICAqL1xuICByZWFkb25seSBzb3VyY2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1ZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1ZpZXcoXG4gIG9iajogVmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIFBpcGVsaW5lOiBvYmoucGlwZWxpbmUsXG4gICAgU291cmNlOiBvYmouc291cmNlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFJlYWRQcmVmZXJlbmNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVhZFByZWZlcmVuY2Uge1xuICAvKipcbiAgICogXCJwcmltYXJ5XCIgXCJwcmltYXJ5UHJlZmVycmVkXCIgXCJzZWNvbmRhcnlcIiBcInNlY29uZGFyeVByZWZlcnJlZFwiIFwibmVhcmVzdFwiXG4gICAqIFJlYWQgcHJlZmVyZW5jZSBtb2RlIHRoYXQgc3BlY2lmaWVzIHRvIHdoaWNoIHJlcGxpY2Egc2V0IG1lbWJlciB0byByb3V0ZSB0aGUgcmVhZCByZXF1ZXN0cy5cbiAgICpcbiAgICogQHNjaGVtYSBSZWFkUHJlZmVyZW5jZSNNb2RlXG4gICAqL1xuICByZWFkb25seSBtb2RlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBNYXhpbXVtIHJlcGxpY2F0aW9uIGxhZywgb3Igc3RhbGVuZXNzLCBmb3IgcmVhZHMgZnJvbSBzZWNvbmRhcmllcy5cbiAgICpcbiAgICogQHNjaGVtYSBSZWFkUHJlZmVyZW5jZSNNYXhTdGFsZW5lc3NTZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBtYXhTdGFsZW5lc3NTZWNvbmRzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGFnIHNldHMgb3IgdGFnIHNwZWNpZmljYXRpb24gZG9jdW1lbnRzLiBJZiBzcGVjaWZpZWQsIEF0bGFzIERhdGEgTGFrZSByb3V0ZXMgcmVhZCByZXF1ZXN0cyB0byByZXBsaWNhIHNldCBtZW1iZXIgb3IgbWVtYmVycyB0aGF0IGFyZSBhc3NvY2lhdGVkIHdpdGggdGhlIHNwZWNpZmllZCB0YWdzLlxuICAgKlxuICAgKiBAc2NoZW1hIFJlYWRQcmVmZXJlbmNlI1RhZ1NldHNcbiAgICovXG4gIHJlYWRvbmx5IHRhZ1NldHM/OiBUYWdTZXRbXVtdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdSZWFkUHJlZmVyZW5jZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fUmVhZFByZWZlcmVuY2UoXG4gIG9iajogUmVhZFByZWZlcmVuY2UgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBNb2RlOiBvYmoubW9kZSxcbiAgICBNYXhTdGFsZW5lc3NTZWNvbmRzOiBvYmoubWF4U3RhbGVuZXNzU2Vjb25kcyxcbiAgICBUYWdTZXRzOiBvYmoudGFnU2V0cz8ubWFwKCh5KSA9PiB5Py5tYXAoKHgpID0+IHRvSnNvbl9UYWdTZXQoeCkpKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBEYXRhU291cmNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YVNvdXJjZSB7XG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgdmFsaWRhdGVzIHRoZSBzY2hlbWUgaW4gdGhlIHNwZWNpZmllZCBVUkxzLiBJZiB0cnVlLCBhbGxvd3MgaW5zZWN1cmUgSFRUUCBzY2hlbWUsIGRvZXNuJ3QgdmVyaWZ5IHRoZSBzZXJ2ZXIncyBjZXJ0aWZpY2F0ZSBjaGFpbiBhbmQgaG9zdG5hbWUsIGFuZCBhY2NlcHRzIGFueSBjZXJ0aWZpY2F0ZSB3aXRoIGFueSBob3N0bmFtZSBwcmVzZW50ZWQgYnkgdGhlIHNlcnZlci4gSWYgZmFsc2UsIGFsbG93cyBzZWN1cmUgSFRUUFMgc2NoZW1lIG9ubHkuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNBbGxvd0luc2VjdXJlXG4gICAqL1xuICByZWFkb25seSBhbGxvd0luc2VjdXJlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjb2xsZWN0aW9uIGluIHRoZSBkYXRhYmFzZS4gRm9yIGNyZWF0aW5nIGEgd2lsZGNhcmQgKCopIGNvbGxlY3Rpb24sIHlvdSBtdXN0IG9taXQgdGhpcyBwYXJhbWV0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNDb2xsZWN0aW9uXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZWdleCBwYXR0ZXJuIHRvIHVzZSBmb3IgY3JlYXRpbmcgdGhlIHdpbGRjYXJkICgqKSBjb2xsZWN0aW9uLiBUbyBsZWFybiBtb3JlIGFib3V0IHRoZSByZWdleCBzeW50YXgsIHNlZSBHbyBwcm9ncmFtbWluZyBsYW5ndWFnZS4oIGh0dHBzOi8vcGtnLmdvLmRldi9yZWdleHAgKS5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhU291cmNlI0NvbGxlY3Rpb25SZWdleFxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvblJlZ2V4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGFiYXNlLCB3aGljaCBjb250YWlucyB0aGUgY29sbGVjdGlvbiBpbiB0aGUgY2x1c3Rlci4gWW91IG11c3Qgb21pdCB0aGlzIHBhcmFtZXRlciB0byBnZW5lcmF0ZSB3aWxkY2FyZCAoKikgY29sbGVjdGlvbnMgZm9yIGR5bmFtaWNhbGx5IGdlbmVyYXRlZCBkYXRhYmFzZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNEYXRhYmFzZVxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJlZ2V4IHBhdHRlcm4gdG8gdXNlIGZvciBjcmVhdGluZyB0aGUgd2lsZGNhcmQgKCopIGNvbGxlY3Rpb24uIFRvIGxlYXJuIG1vcmUgYWJvdXQgdGhlIHJlZ2V4IHN5bnRheCwgc2VlIEdvIHByb2dyYW1taW5nIGxhbmd1YWdlLiggaHR0cHM6Ly9wa2cuZ28uZGV2L3JlZ2V4cCApLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFTb3VyY2UjRGF0YWJhc2VSZWdleFxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YWJhc2VSZWdleD86IHN0cmluZztcblxuICAvKipcbiAgICogRmlsZSBmb3JtYXQgdGhhdCBNb25nb0RCIENsb3VkIHVzZXMgaWYgaXQgZW5jb3VudGVycyBhIGZpbGUgd2l0aG91dCBhIGZpbGUgZXh0ZW5zaW9uIHdoaWxlIHNlYXJjaGluZyBzdG9yZU5hbWUuRW51bTogXCIuYXZyb1wiIFwiLmF2cm8uYnoyXCIgXCIuYXZyby5nelwiIFwiLmJzb25cIiBcIi5ic29uLmJ6MlwiIFwiLmJzb24uZ3pcIiBcIi5ic29ueFwiIFwiLmNzdlwiIFwiLmNzdi5iejJcIiBcIi5jc3YuZ3pcIiBcIi5qc29uXCIgXCIuanNvbi5iejJcIiBcIi5qc29uLmd6XCIgXCIub3JjXCIgXCIucGFycXVldFwiIFwiLnRzdlwiIFwiLnRzdi5iejJcIiBcIi50c3YuZ3pcIlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFTb3VyY2UjRGVmYXVsdEZvcm1hdFxuICAgKi9cbiAgcmVhZG9ubHkgZGVmYXVsdEZvcm1hdD86IHN0cmluZztcblxuICAvKipcbiAgICogRmlsZSBwYXRoIHRoYXQgY29udHJvbHMgaG93IE1vbmdvREIgQ2xvdWQgc2VhcmNoZXMgZm9yIGFuZCBwYXJzZXMgZmlsZXMgaW4gdGhlIHN0b3JlTmFtZSBiZWZvcmUgbWFwcGluZyB0aGVtIHRvIGEgY29sbGVjdGlvbi5TcGVjaWZ5IC8gdG8gY2FwdHVyZSBhbGwgZmlsZXMgYW5kIGZvbGRlcnMgZnJvbSB0aGUgcHJlZml4IHBhdGguXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNQYXRoXG4gICAqL1xuICByZWFkb25seSBwYXRoPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIGZvciB0aGUgZmllbGQgdGhhdCBpbmNsdWRlcyB0aGUgcHJvdmVuYW5jZSBvZiB0aGUgZG9jdW1lbnRzIGluIHRoZSByZXN1bHRzLiBNb25nb0RCIENsb3VkIHJldHVybnMgZGlmZmVyZW50IGZpZWxkcyBpbiB0aGUgcmVzdWx0cyBmb3IgZWFjaCBzdXBwb3J0ZWQgcHJvdmlkZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNQcm92ZW5hbmNlRmllbGROYW1lXG4gICAqL1xuICByZWFkb25seSBwcm92ZW5hbmNlRmllbGROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGEgc3RvcmUgdGhhdCBNb25nb0RCIENsb3VkIG1hcHMgdG8gdGhlIGNvbGxlY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNTdG9yZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHN0b3JlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVVJMcyBvZiB0aGUgcHVibGljbHkgYWNjZXNzaWJsZSBkYXRhIGZpbGVzLiBZb3UgY2FuJ3Qgc3BlY2lmeSBVUkxzIHRoYXQgcmVxdWlyZSBhdXRoZW50aWNhdGlvbi4gQXRsYXMgRGF0YSBMYWtlIGNyZWF0ZXMgYSBwYXJ0aXRpb24gZm9yIGVhY2ggVVJMLiBJZiBlbXB0eSBvciBvbWl0dGVkLCBEYXRhIExha2UgdXNlcyB0aGUgVVJMcyBmcm9tIHRoZSBzdG9yZSBzcGVjaWZpZWQgaW4gdGhlIGRhdGFTb3VyY2VzLnN0b3JlTmFtZSBwYXJhbWV0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YVNvdXJjZSNVcmxzXG4gICAqL1xuICByZWFkb25seSB1cmxzPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0RhdGFTb3VyY2UnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0RhdGFTb3VyY2UoXG4gIG9iajogRGF0YVNvdXJjZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEFsbG93SW5zZWN1cmU6IG9iai5hbGxvd0luc2VjdXJlLFxuICAgIENvbGxlY3Rpb246IG9iai5jb2xsZWN0aW9uLFxuICAgIENvbGxlY3Rpb25SZWdleDogb2JqLmNvbGxlY3Rpb25SZWdleCxcbiAgICBEYXRhYmFzZTogb2JqLmRhdGFiYXNlLFxuICAgIERhdGFiYXNlUmVnZXg6IG9iai5kYXRhYmFzZVJlZ2V4LFxuICAgIERlZmF1bHRGb3JtYXQ6IG9iai5kZWZhdWx0Rm9ybWF0LFxuICAgIFBhdGg6IG9iai5wYXRoLFxuICAgIFByb3ZlbmFuY2VGaWVsZE5hbWU6IG9iai5wcm92ZW5hbmNlRmllbGROYW1lLFxuICAgIFN0b3JlTmFtZTogb2JqLnN0b3JlTmFtZSxcbiAgICBVcmxzOiBvYmoudXJscz8ubWFwKCh5KSA9PiB5KSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBUYWdTZXRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBUYWdTZXQge1xuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgb2YgdGhlIHRhZy5cbiAgICpcbiAgICogQHNjaGVtYSBUYWdTZXQjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgb2YgdGhlIHRhZy5cbiAgICpcbiAgICogQHNjaGVtYSBUYWdTZXQjVmFsdWVcbiAgICovXG4gIHJlYWRvbmx5IHZhbHVlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdUYWdTZXQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1RhZ1NldChcbiAgb2JqOiBUYWdTZXQgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBWYWx1ZTogb2JqLnZhbHVlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZSBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZERhdGFiYXNlSW5zdGFuY2UuSG9zdE5hbWVzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJIb3N0TmFtZXM6IHN0cmluZ1tdO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZS5TdGF0ZWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyU3RhdGU6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZWAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5GZWRlcmF0ZWREYXRhYmFzZUluc3RhbmNlLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuRmVkZXJhdGVkRGF0YWJhc2VJbnN0YW5jZVByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJIb3N0TmFtZXMgPSBjZGsuVG9rZW4uYXNMaXN0KHRoaXMuZ2V0QXR0KFwiSG9zdE5hbWVzXCIpKTtcbiAgICB0aGlzLmF0dHJTdGF0ZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIlN0YXRlXCIpKTtcbiAgfVxufVxuIl19

@@ -85,6 +85,2 @@ import * as cdk from "aws-cdk-lib";

/**
* Attribute `MongoDB::Atlas::FederatedQueryLimit.DefaultLimit`
*/
readonly attrDefaultLimit: string;
/**
* Attribute `MongoDB::Atlas::FederatedQueryLimit.LastModifiedDate`

@@ -98,2 +94,6 @@ */

/**
* Attribute `MongoDB::Atlas::FederatedQueryLimit.DefaultLimit`
*/
readonly attrDefaultLimit: string;
/**
* Create a new `MongoDB::Atlas::FederatedQueryLimit`.

@@ -100,0 +100,0 @@ *

@@ -66,3 +66,2 @@ "use strict";

this.attrCurrentUsage = cdk.Token.asString(this.getAtt("CurrentUsage"));
this.attrDefaultLimit = cdk.Token.asString(this.getAtt("DefaultLimit"));
this.attrLastModifiedDate = cdk.Token.asString(this.getAtt("LastModifiedDate"));

@@ -75,3 +74,3 @@ this.attrMaximumLimit = cdk.Token.asString(this.getAtt("MaximumLimit"));

_a = JSII_RTTI_SYMBOL_1;
CfnFederatedQueryLimit[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnFederatedQueryLimit", version: "3.7.2" };
CfnFederatedQueryLimit[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnFederatedQueryLimit", version: "3.8.0" };
/**

@@ -81,2 +80,2 @@ * The CloudFormation resource type name for this resource class.

CfnFederatedQueryLimit.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::FederatedQueryLimit";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2ZlZGVyYXRlZC1xdWVyeS1saW1pdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFvRG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtDQUFrQyxDQUNoRCxHQUE0QztJQUU1QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7UUFDMUIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtRQUNoQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO0tBQ3JCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQW5CRCxnRkFtQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7R0FJRztBQUNILElBQVksb0NBU1g7QUFURCxXQUFZLG9DQUFvQztJQUM5QywyQkFBMkI7SUFDM0Isc0ZBQThDLENBQUE7SUFDOUMsMkJBQTJCO0lBQzNCLHNGQUE4QyxDQUFBO0lBQzlDLDRCQUE0QjtJQUM1Qix3RkFBZ0QsQ0FBQTtJQUNoRCw2QkFBNkI7SUFDN0IsMEZBQWtELENBQUE7QUFDcEQsQ0FBQyxFQVRXLG9DQUFvQyxHQUFwQyw0Q0FBb0MsS0FBcEMsNENBQW9DLFFBUy9DO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBNkJ6RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFrQztRQUVsQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxzQkFBc0IsQ0FBQyxzQkFBc0I7WUFDbkQsVUFBVSxFQUFFLGtDQUFrQyxDQUFDLEtBQUssQ0FBRTtTQUN2RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLG9CQUFvQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQ2hDLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7SUFDMUUsQ0FBQzs7QUF2REgsd0RBd0RDOzs7QUF2REM7O0dBRUc7QUFDb0IsNkNBQXNCLEdBQzNDLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBRdWVyeSBsaW1pdCBmb3Igb25lIGZlZGVyYXRlZCBkYXRhYmFzZSBpbnN0YW5jZS5cbiAqXG4gKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyB7XG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgZGF0YSBmZWRlcmF0ZWQgZGF0YWJhc2UgaW5zdGFuY2UgdG8gd2hpY2ggdGhlIHF1ZXJ5IGxpbWl0IGFwcGxpZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzI1RlbmFudE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHRlbmFudE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoaXMgZGF0YSBmZWRlcmF0aW9uIGluc3RhbmNlIGxpbWl0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyNMaW1pdE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGxpbWl0TmFtZTogQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzTGltaXROYW1lO1xuXG4gIC8qKlxuICAgKiBPbmx5IHVzZWQgZm9yIERhdGEgRmVkZXJhdGlvbiBsaW1pdHMuIEFjdGlvbiB0byB0YWtlIHdoZW4gdGhlIHVzYWdlIGxpbWl0IGlzIGV4Y2VlZGVkLiBJZiBsaW1pdCBzcGFuIGlzIHNldCB0byBRVUVSWSwgdGhpcyBpcyBpZ25vcmVkIGJlY2F1c2UgTW9uZ29EQiBDbG91ZCBzdG9wcyB0aGUgcXVlcnkgd2hlbiBpdCBleGNlZWRzIHRoZSB1c2FnZSBsaW1pdC4gXCJlbnVtXCIgOiBbIFwiQkxPQ0tcIiwgXCJCTE9DS19BTkRfS0lMTFwiIF1cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHMjT3ZlcnJ1blBvbGljeVxuICAgKi9cbiAgcmVhZG9ubHkgb3ZlcnJ1blBvbGljeT86IHN0cmluZztcblxuICAvKipcbiAgICogQW1vdW50IHRvIHNldCB0aGUgbGltaXQgdG8uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzI1ZhbHVlXG4gICAqL1xuICByZWFkb25seSB2YWx1ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzKFxuICBvYmo6IENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBUZW5hbnROYW1lOiBvYmoudGVuYW50TmFtZSxcbiAgICBMaW1pdE5hbWU6IG9iai5saW1pdE5hbWUsXG4gICAgT3ZlcnJ1blBvbGljeTogb2JqLm92ZXJydW5Qb2xpY3ksXG4gICAgVmFsdWU6IG9iai52YWx1ZSxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoaXMgZGF0YSBmZWRlcmF0aW9uIGluc3RhbmNlIGxpbWl0LlxuICpcbiAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzTGltaXROYW1lXG4gKi9cbmV4cG9ydCBlbnVtIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wc0xpbWl0TmFtZSB7XG4gIC8qKiBieXRlc1Byb2Nlc3NlZC5xdWVyeSAqL1xuICBCWVRFU19QUk9DRVNTRURfUVVFUlkgPSBcImJ5dGVzUHJvY2Vzc2VkLnF1ZXJ5XCIsXG4gIC8qKiBieXRlc1Byb2Nlc3NlZC5kYWlseSAqL1xuICBCWVRFU19QUk9DRVNTRURfREFJTFkgPSBcImJ5dGVzUHJvY2Vzc2VkLmRhaWx5XCIsXG4gIC8qKiBieXRlc1Byb2Nlc3NlZC53ZWVrbHkgKi9cbiAgQllURVNfUFJPQ0VTU0VEX1dFRUtMWSA9IFwiYnl0ZXNQcm9jZXNzZWQud2Vla2x5XCIsXG4gIC8qKiBieXRlc1Byb2Nlc3NlZC5tb250aGx5ICovXG4gIEJZVEVTX1BST0NFU1NFRF9NT05USExZID0gXCJieXRlc1Byb2Nlc3NlZC5tb250aGx5XCIsXG59XG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFF1ZXJ5TGltaXRgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFF1ZXJ5TGltaXRcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXQgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkUXVlcnlMaW1pdFwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0LkN1cnJlbnRVc2FnZWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQ3VycmVudFVzYWdlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0LkRlZmF1bHRMaW1pdGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRGVmYXVsdExpbWl0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0Lkxhc3RNb2RpZmllZERhdGVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckxhc3RNb2RpZmllZERhdGU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFF1ZXJ5TGltaXQuTWF4aW11bUxpbWl0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJNYXhpbXVtTGltaXQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkUXVlcnlMaW1pdGAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJDdXJyZW50VXNhZ2UgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJDdXJyZW50VXNhZ2VcIikpO1xuICAgIHRoaXMuYXR0ckRlZmF1bHRMaW1pdCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkRlZmF1bHRMaW1pdFwiKSk7XG4gICAgdGhpcy5hdHRyTGFzdE1vZGlmaWVkRGF0ZSA9IGNkay5Ub2tlbi5hc1N0cmluZyhcbiAgICAgIHRoaXMuZ2V0QXR0KFwiTGFzdE1vZGlmaWVkRGF0ZVwiKVxuICAgICk7XG4gICAgdGhpcy5hdHRyTWF4aW11bUxpbWl0ID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiTWF4aW11bUxpbWl0XCIpKTtcbiAgICB0aGlzLmF0dHJEZWZhdWx0TGltaXQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJEZWZhdWx0TGltaXRcIikpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2ZlZGVyYXRlZC1xdWVyeS1saW1pdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFvRG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtDQUFrQyxDQUNoRCxHQUE0QztJQUU1QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7UUFDMUIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtRQUNoQyxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO0tBQ3JCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQW5CRCxnRkFtQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7R0FJRztBQUNILElBQVksb0NBU1g7QUFURCxXQUFZLG9DQUFvQztJQUM5QywyQkFBMkI7SUFDM0Isc0ZBQThDLENBQUE7SUFDOUMsMkJBQTJCO0lBQzNCLHNGQUE4QyxDQUFBO0lBQzlDLDRCQUE0QjtJQUM1Qix3RkFBZ0QsQ0FBQTtJQUNoRCw2QkFBNkI7SUFDN0IsMEZBQWtELENBQUE7QUFDcEQsQ0FBQyxFQVRXLG9DQUFvQyxHQUFwQyw0Q0FBb0MsS0FBcEMsNENBQW9DLFFBUy9DO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLHNCQUF1QixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBNkJ6RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFrQztRQUVsQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxzQkFBc0IsQ0FBQyxzQkFBc0I7WUFDbkQsVUFBVSxFQUFFLGtDQUFrQyxDQUFDLEtBQUssQ0FBRTtTQUN2RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUNoQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7O0FBdERILHdEQXVEQzs7O0FBdERDOztHQUVHO0FBQ29CLDZDQUFzQixHQUMzQyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUXVlcnkgbGltaXQgZm9yIG9uZSBmZWRlcmF0ZWQgZGF0YWJhc2UgaW5zdGFuY2UuXG4gKlxuICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHMge1xuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGEgZmVkZXJhdGVkIGRhdGFiYXNlIGluc3RhbmNlIHRvIHdoaWNoIHRoZSBxdWVyeSBsaW1pdCBhcHBsaWVzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyNUZW5hbnROYW1lXG4gICAqL1xuICByZWFkb25seSB0ZW5hbnROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGlzIGRhdGEgZmVkZXJhdGlvbiBpbnN0YW5jZSBsaW1pdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHMjTGltaXROYW1lXG4gICAqL1xuICByZWFkb25seSBsaW1pdE5hbWU6IENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wc0xpbWl0TmFtZTtcblxuICAvKipcbiAgICogT25seSB1c2VkIGZvciBEYXRhIEZlZGVyYXRpb24gbGltaXRzLiBBY3Rpb24gdG8gdGFrZSB3aGVuIHRoZSB1c2FnZSBsaW1pdCBpcyBleGNlZWRlZC4gSWYgbGltaXQgc3BhbiBpcyBzZXQgdG8gUVVFUlksIHRoaXMgaXMgaWdub3JlZCBiZWNhdXNlIE1vbmdvREIgQ2xvdWQgc3RvcHMgdGhlIHF1ZXJ5IHdoZW4gaXQgZXhjZWVkcyB0aGUgdXNhZ2UgbGltaXQuIFwiZW51bVwiIDogWyBcIkJMT0NLXCIsIFwiQkxPQ0tfQU5EX0tJTExcIiBdXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzI092ZXJydW5Qb2xpY3lcbiAgICovXG4gIHJlYWRvbmx5IG92ZXJydW5Qb2xpY3k/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFtb3VudCB0byBzZXQgdGhlIGxpbWl0IHRvLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyNWYWx1ZVxuICAgKi9cbiAgcmVhZG9ubHkgdmFsdWU6IHN0cmluZztcblxuICAvKipcbiAgICogUHJvZmlsZSB1c2VkIHRvIHByb3ZpZGUgY3JlZGVudGlhbHMgaW5mb3JtYXRpb24sIChhIHNlY3JldCB3aXRoIHRoZSBjZm4vYXRsYXMvcHJvZmlsZS97UHJvZmlsZX0sIGlzIHJlcXVpcmVkKSwgaWYgbm90IHByb3ZpZGVkIGRlZmF1bHQgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyhcbiAgb2JqOiBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gICAgVGVuYW50TmFtZTogb2JqLnRlbmFudE5hbWUsXG4gICAgTGltaXROYW1lOiBvYmoubGltaXROYW1lLFxuICAgIE92ZXJydW5Qb2xpY3k6IG9iai5vdmVycnVuUG9saWN5LFxuICAgIFZhbHVlOiBvYmoudmFsdWUsXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGlzIGRhdGEgZmVkZXJhdGlvbiBpbnN0YW5jZSBsaW1pdC5cbiAqXG4gKiBAc2NoZW1hIENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wc0xpbWl0TmFtZVxuICovXG5leHBvcnQgZW51bSBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0UHJvcHNMaW1pdE5hbWUge1xuICAvKiogYnl0ZXNQcm9jZXNzZWQucXVlcnkgKi9cbiAgQllURVNfUFJPQ0VTU0VEX1FVRVJZID0gXCJieXRlc1Byb2Nlc3NlZC5xdWVyeVwiLFxuICAvKiogYnl0ZXNQcm9jZXNzZWQuZGFpbHkgKi9cbiAgQllURVNfUFJPQ0VTU0VEX0RBSUxZID0gXCJieXRlc1Byb2Nlc3NlZC5kYWlseVwiLFxuICAvKiogYnl0ZXNQcm9jZXNzZWQud2Vla2x5ICovXG4gIEJZVEVTX1BST0NFU1NFRF9XRUVLTFkgPSBcImJ5dGVzUHJvY2Vzc2VkLndlZWtseVwiLFxuICAvKiogYnl0ZXNQcm9jZXNzZWQubW9udGhseSAqL1xuICBCWVRFU19QUk9DRVNTRURfTU9OVEhMWSA9IFwiYnl0ZXNQcm9jZXNzZWQubW9udGhseVwiLFxufVxuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5GZWRlcmF0ZWRRdWVyeUxpbWl0IGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFF1ZXJ5TGltaXRcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkUXVlcnlMaW1pdC5DdXJyZW50VXNhZ2VgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckN1cnJlbnRVc2FnZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkUXVlcnlMaW1pdC5MYXN0TW9kaWZpZWREYXRlYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJMYXN0TW9kaWZpZWREYXRlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0Lk1heGltdW1MaW1pdGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyTWF4aW11bUxpbWl0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRRdWVyeUxpbWl0LkRlZmF1bHRMaW1pdGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRGVmYXVsdExpbWl0OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFF1ZXJ5TGltaXRgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdFByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuRmVkZXJhdGVkUXVlcnlMaW1pdC5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmbkZlZGVyYXRlZFF1ZXJ5TGltaXRQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRyQ3VycmVudFVzYWdlID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiQ3VycmVudFVzYWdlXCIpKTtcbiAgICB0aGlzLmF0dHJMYXN0TW9kaWZpZWREYXRlID0gY2RrLlRva2VuLmFzU3RyaW5nKFxuICAgICAgdGhpcy5nZXRBdHQoXCJMYXN0TW9kaWZpZWREYXRlXCIpXG4gICAgKTtcbiAgICB0aGlzLmF0dHJNYXhpbXVtTGltaXQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJNYXhpbXVtTGltaXRcIikpO1xuICAgIHRoaXMuYXR0ckRlZmF1bHRMaW1pdCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkRlZmF1bHRMaW1pdFwiKSk7XG4gIH1cbn1cbiJdfQ==

@@ -38,3 +38,3 @@ import * as cdk from "aws-cdk-lib";

*/
readonly roleAssignments: RoleAssignment[];
readonly roleAssignments?: RoleAssignment[];
}

@@ -41,0 +41,0 @@ /**

@@ -70,3 +70,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnFederatedSettingsOrgRoleMapping[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnFederatedSettingsOrgRoleMapping", version: "3.7.2" };
CfnFederatedSettingsOrgRoleMapping[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnFederatedSettingsOrgRoleMapping", version: "3.8.0" };
/**

@@ -76,2 +76,2 @@ * The CloudFormation resource type name for this resource class.

CfnFederatedSettingsOrgRoleMapping.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::FederatedSettingsOrgRoleMapping";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2ZlZGVyYXRlZC1zZXR0aW5ncy1vcmctcm9sZS1tYXBwaW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTZDbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsOENBQThDLENBQzVELEdBQXdEO0lBRXhELElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUI7UUFDeEMsb0JBQW9CLEVBQUUsR0FBRyxDQUFDLG9CQUFvQjtRQUM5QyxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMzRSxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFsQkQsd0dBa0JDO0FBK0JEOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHFCQUFxQixDQUNuQyxHQUErQjtJQUUvQixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO0tBQ2YsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBaEJELHNEQWdCQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsa0NBQW1DLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFpQnJFOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQThDO1FBRTlDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGtDQUFrQyxDQUFDLHNCQUFzQjtZQUMvRCxVQUFVLEVBQUUsOENBQThDLENBQUMsS0FBSyxDQUFFO1NBQ25FLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7O0FBckNILGdGQXNDQzs7O0FBckNDOztHQUVHO0FBQ29CLHlEQUFzQixHQUMzQyxpREFBaUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucywgYWRkcywgZWRpdHMsIGFuZCByZW1vdmVzIGZlZGVyYXRpb24tcmVsYXRlZCBmZWF0dXJlcyBzdWNoIGFzIHJvbGUgbWFwcGluZ3MgYW5kIGNvbm5lY3RlZCBvcmdhbml6YXRpb24gY29uZmlndXJhdGlvbnMuXG4gKlxuICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBodW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGlkZW50aXR5IHByb3ZpZGVyIGdyb3VwIHRvIHdoaWNodGhpcyByb2xlIG1hcHBpbmcgYXBwbGllcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMjRXh0ZXJuYWxHcm91cE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGV4dGVybmFsR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgZmVkZXJhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMjRmVkZXJhdGlvblNldHRpbmdzSWRcbiAgICovXG4gIHJlYWRvbmx5IGZlZGVyYXRpb25TZXR0aW5nc0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBvcmdhbml6YXRpb24gdGhhdCBjb250YWlucyB5b3VyIHByb2plY3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyNPcmdJZFxuICAgKi9cbiAgcmVhZG9ubHkgb3JnSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQXRsYXMgcm9sZXMgYW5kIHRoZSB1bmlxdWUgaWRlbnRpZmllcnMgb2YgdGhlIGdyb3VwcyBhbmQgb3JnYW5pemF0aW9ucyBhc3NvY2lhdGVkIHdpdGggZWFjaCByb2xlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyNSb2xlQXNzaWdubWVudHNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVBc3NpZ25tZW50czogUm9sZUFzc2lnbm1lbnRbXTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMoXG4gIG9iajogQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgRXh0ZXJuYWxHcm91cE5hbWU6IG9iai5leHRlcm5hbEdyb3VwTmFtZSxcbiAgICBGZWRlcmF0aW9uU2V0dGluZ3NJZDogb2JqLmZlZGVyYXRpb25TZXR0aW5nc0lkLFxuICAgIE9yZ0lkOiBvYmoub3JnSWQsXG4gICAgUm9sZUFzc2lnbm1lbnRzOiBvYmoucm9sZUFzc2lnbm1lbnRzPy5tYXAoKHkpID0+IHRvSnNvbl9Sb2xlQXNzaWdubWVudCh5KSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgUm9sZUFzc2lnbm1lbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSb2xlQXNzaWdubWVudCB7XG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgY29tbWEtc2VwYXJhdGVkIGtleSB2YWx1ZSBwYWlycyB0byBtYXAgem9uZXMgdG8gZ2VvZ3JhcGhpYyByZWdpb25zLiBUaGVzZSBwYWlycyBtYXAgYW4gSVNPIDMxNjYtMWEyIGxvY2F0aW9uIGNvZGUsIHdpdGggYW4gSVNPIDMxNjYtMiBzdWJkaXZpc2lvbiBjb2RlIHdoZW4gcG9zc2libGUsIHRvIGEgdW5pcXVlIDI0LWhleGFkZWNpbWFsIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIGN1c3RvbSB6b25lLlxuICAgKlxuICAgKiBUaGlzIHBhcmFtZXRlciByZXR1cm5zIGFuIGVtcHR5IG9iamVjdCBpZiBubyBjdXN0b20gem9uZXMgZXhpc3QuXG4gICAqXG4gICAqIEBzY2hlbWEgUm9sZUFzc2lnbm1lbnQjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyBjb21tYS1zZXBhcmF0ZWQga2V5IHZhbHVlIHBhaXJzIHRvIG1hcCB6b25lcyB0byBnZW9ncmFwaGljIHJlZ2lvbnMuIFRoZXNlIHBhaXJzIG1hcCBhbiBJU08gMzE2Ni0xYTIgbG9jYXRpb24gY29kZSwgd2l0aCBhbiBJU08gMzE2Ni0yIHN1YmRpdmlzaW9uIGNvZGUgd2hlbiBwb3NzaWJsZSwgdG8gYSB1bmlxdWUgMjQtaGV4YWRlY2ltYWwgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgY3VzdG9tIHpvbmUuXG4gICAqXG4gICAqIFRoaXMgcGFyYW1ldGVyIHJldHVybnMgYW4gZW1wdHkgb2JqZWN0IGlmIG5vIGN1c3RvbSB6b25lcyBleGlzdC5cbiAgICpcbiAgICogQHNjaGVtYSBSb2xlQXNzaWdubWVudCNPcmdJZFxuICAgKi9cbiAgcmVhZG9ubHkgb3JnSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgUm9sZUFzc2lnbm1lbnQjUm9sZVxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnUm9sZUFzc2lnbm1lbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1JvbGVBc3NpZ25tZW50KFxuICBvYmo6IFJvbGVBc3NpZ25tZW50IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIE9yZ0lkOiBvYmoub3JnSWQsXG4gICAgUm9sZTogb2JqLnJvbGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZy5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ2AuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2ZlZGVyYXRlZC1zZXR0aW5ncy1vcmctcm9sZS1tYXBwaW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTZDbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsOENBQThDLENBQzVELEdBQXdEO0lBRXhELElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUI7UUFDeEMsb0JBQW9CLEVBQUUsR0FBRyxDQUFDLG9CQUFvQjtRQUM5QyxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMzRSxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFsQkQsd0dBa0JDO0FBK0JEOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHFCQUFxQixDQUNuQyxHQUErQjtJQUUvQixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7UUFDaEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO0tBQ2YsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBaEJELHNEQWdCQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsa0NBQW1DLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFpQnJFOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQThDO1FBRTlDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGtDQUFrQyxDQUFDLHNCQUFzQjtZQUMvRCxVQUFVLEVBQUUsOENBQThDLENBQUMsS0FBSyxDQUFFO1NBQ25FLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7O0FBckNILGdGQXNDQzs7O0FBckNDOztHQUVHO0FBQ29CLHlEQUFzQixHQUMzQyxpREFBaUQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucywgYWRkcywgZWRpdHMsIGFuZCByZW1vdmVzIGZlZGVyYXRpb24tcmVsYXRlZCBmZWF0dXJlcyBzdWNoIGFzIHJvbGUgbWFwcGluZ3MgYW5kIGNvbm5lY3RlZCBvcmdhbml6YXRpb24gY29uZmlndXJhdGlvbnMuXG4gKlxuICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBodW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGlkZW50aXR5IHByb3ZpZGVyIGdyb3VwIHRvIHdoaWNodGhpcyByb2xlIG1hcHBpbmcgYXBwbGllcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMjRXh0ZXJuYWxHcm91cE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGV4dGVybmFsR3JvdXBOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgZmVkZXJhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHMjRmVkZXJhdGlvblNldHRpbmdzSWRcbiAgICovXG4gIHJlYWRvbmx5IGZlZGVyYXRpb25TZXR0aW5nc0lkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBvcmdhbml6YXRpb24gdGhhdCBjb250YWlucyB5b3VyIHByb2plY3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyNPcmdJZFxuICAgKi9cbiAgcmVhZG9ubHkgb3JnSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQXRsYXMgcm9sZXMgYW5kIHRoZSB1bmlxdWUgaWRlbnRpZmllcnMgb2YgdGhlIGdyb3VwcyBhbmQgb3JnYW5pemF0aW9ucyBhc3NvY2lhdGVkIHdpdGggZWFjaCByb2xlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyNSb2xlQXNzaWdubWVudHNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVBc3NpZ25tZW50cz86IFJvbGVBc3NpZ25tZW50W107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzKFxuICBvYmo6IENmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIEV4dGVybmFsR3JvdXBOYW1lOiBvYmouZXh0ZXJuYWxHcm91cE5hbWUsXG4gICAgRmVkZXJhdGlvblNldHRpbmdzSWQ6IG9iai5mZWRlcmF0aW9uU2V0dGluZ3NJZCxcbiAgICBPcmdJZDogb2JqLm9yZ0lkLFxuICAgIFJvbGVBc3NpZ25tZW50czogb2JqLnJvbGVBc3NpZ25tZW50cz8ubWFwKCh5KSA9PiB0b0pzb25fUm9sZUFzc2lnbm1lbnQoeSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFJvbGVBc3NpZ25tZW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUm9sZUFzc2lnbm1lbnQge1xuICAvKipcbiAgICogTGlzdCB0aGF0IGNvbnRhaW5zIGNvbW1hLXNlcGFyYXRlZCBrZXkgdmFsdWUgcGFpcnMgdG8gbWFwIHpvbmVzIHRvIGdlb2dyYXBoaWMgcmVnaW9ucy4gVGhlc2UgcGFpcnMgbWFwIGFuIElTTyAzMTY2LTFhMiBsb2NhdGlvbiBjb2RlLCB3aXRoIGFuIElTTyAzMTY2LTIgc3ViZGl2aXNpb24gY29kZSB3aGVuIHBvc3NpYmxlLCB0byBhIHVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBjdXN0b20gem9uZS5cbiAgICpcbiAgICogVGhpcyBwYXJhbWV0ZXIgcmV0dXJucyBhbiBlbXB0eSBvYmplY3QgaWYgbm8gY3VzdG9tIHpvbmVzIGV4aXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIFJvbGVBc3NpZ25tZW50I1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgY29tbWEtc2VwYXJhdGVkIGtleSB2YWx1ZSBwYWlycyB0byBtYXAgem9uZXMgdG8gZ2VvZ3JhcGhpYyByZWdpb25zLiBUaGVzZSBwYWlycyBtYXAgYW4gSVNPIDMxNjYtMWEyIGxvY2F0aW9uIGNvZGUsIHdpdGggYW4gSVNPIDMxNjYtMiBzdWJkaXZpc2lvbiBjb2RlIHdoZW4gcG9zc2libGUsIHRvIGEgdW5pcXVlIDI0LWhleGFkZWNpbWFsIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIGN1c3RvbSB6b25lLlxuICAgKlxuICAgKiBUaGlzIHBhcmFtZXRlciByZXR1cm5zIGFuIGVtcHR5IG9iamVjdCBpZiBubyBjdXN0b20gem9uZXMgZXhpc3QuXG4gICAqXG4gICAqIEBzY2hlbWEgUm9sZUFzc2lnbm1lbnQjT3JnSWRcbiAgICovXG4gIHJlYWRvbmx5IG9yZ0lkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIFJvbGVBc3NpZ25tZW50I1JvbGVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1JvbGVBc3NpZ25tZW50JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9Sb2xlQXNzaWdubWVudChcbiAgb2JqOiBSb2xlQXNzaWdubWVudCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBPcmdJZDogb2JqLm9yZ0lkLFxuICAgIFJvbGU6IG9iai5yb2xlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ2BcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6RmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1xuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZyBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpGZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5GZWRlcmF0ZWRTZXR0aW5nc09yZ1JvbGVNYXBwaW5nUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmcuSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZ1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuRmVkZXJhdGVkU2V0dGluZ3NPcmdSb2xlTWFwcGluZy5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmbkZlZGVyYXRlZFNldHRpbmdzT3JnUm9sZU1hcHBpbmdQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRySWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJZFwiKSk7XG4gIH1cbn1cbiJdfQ==

@@ -20,3 +20,3 @@ import * as cdk from "aws-cdk-lib";

*/
readonly projectId: string;
readonly projectId?: string;
/**

@@ -27,3 +27,3 @@ * The name of the Atlas cluster that contains the snapshots you want to retrieve.

*/
readonly clusterName: string;
readonly clusterName?: string;
/**

@@ -38,8 +38,2 @@ * List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to the human-readable label for the desired custom zone. MongoDB Cloud maps the ISO 3166-1a2 code to the nearest geographical zone by default. Include this parameter to override the default mappings.

/**
* Flag that indicates whether all custom zone mapping to be deleted during delete.
*
* @schema CfnGlobalClusterConfigProps#RemoveAllZoneMapping
*/
readonly removeAllZoneMapping?: boolean;
/**
* List that contains comma-separated key value pairs to map zones to geographic regions. These pairs map an ISO 3166-1a2 location code, with an ISO 3166-2 subdivision code when possible, to the human-readable label for the desired custom zone. MongoDB Cloud maps the ISO 3166-1a2 code to the nearest geographical zone by default. Include this parameter to override the default mappings.

@@ -133,2 +127,6 @@ *

/**
* Attribute `MongoDB::Atlas::GlobalClusterConfig.RemoveAllZoneMapping`
*/
readonly attrRemoveAllZoneMapping: cdk.IResolvable;
/**
* Create a new `MongoDB::Atlas::GlobalClusterConfig`.

@@ -135,0 +133,0 @@ *

@@ -21,3 +21,2 @@ "use strict";

ManagedNamespaces: obj.managedNamespaces?.map((y) => toJson_ManagedNamespace(y)),
RemoveAllZoneMapping: obj.removeAllZoneMapping,
CustomZoneMappings: obj.customZoneMappings?.map((y) => toJson_ZoneMapping(y)),

@@ -85,2 +84,3 @@ };

this.props = props;
this.attrRemoveAllZoneMapping = this.getAtt("RemoveAllZoneMapping");
}

@@ -90,3 +90,3 @@ }

_a = JSII_RTTI_SYMBOL_1;
CfnGlobalClusterConfig[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnGlobalClusterConfig", version: "3.7.2" };
CfnGlobalClusterConfig[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnGlobalClusterConfig", version: "3.8.0" };
/**

@@ -96,2 +96,2 @@ * The CloudFormation resource type name for this resource class.

CfnGlobalClusterConfig.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::GlobalClusterConfig";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2dsb2JhbC1jbHVzdGVyLWNvbmZpZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUF3RG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtDQUFrQyxDQUNoRCxHQUE0QztJQUU1QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1FBQzVCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNsRCx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FDM0I7UUFDRCxvQkFBb0IsRUFBRSxHQUFHLENBQUMsb0JBQW9CO1FBQzlDLGtCQUFrQixFQUFFLEdBQUcsQ0FBQyxrQkFBa0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNwRCxrQkFBa0IsQ0FBQyxDQUFDLENBQUMsQ0FDdEI7S0FDRixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUF2QkQsZ0ZBdUJDO0FBMkNEOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHVCQUF1QixDQUNyQyxHQUFpQztJQUVqQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixjQUFjLEVBQUUsR0FBRyxDQUFDLGNBQWM7UUFDbEMsRUFBRSxFQUFFLEdBQUcsQ0FBQyxFQUFFO1FBQ1Ysc0JBQXNCLEVBQUUsR0FBRyxDQUFDLHNCQUFzQjtRQUNsRCxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO0tBQ3ZDLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWxCRCwwREFrQkM7QUFzQkQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isa0JBQWtCLENBQ2hDLEdBQTRCO0lBRTVCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtLQUNmLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWZELGdEQWVDO0FBQ0Qsd0NBQXdDO0FBRXhDOzs7OztHQUtHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxHQUFHLENBQUMsV0FBVztJQVl6RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFrQztRQUVsQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxzQkFBc0IsQ0FBQyxzQkFBc0I7WUFDbkQsVUFBVSxFQUFFLGtDQUFrQyxDQUFDLEtBQUssQ0FBRTtTQUN2RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDOztBQTlCSCx3REErQkM7OztBQTlCQzs7R0FFRztBQUNvQiw2Q0FBc0IsR0FDM0MscUNBQXFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGFuZCByZW1vdmVzIEdsb2JhbCBDbHVzdGVyIG1hbmFnZWQgbmFtZXNwYWNlcyBhbmQgY3VzdG9tIHpvbmUgbWFwcGluZ3MuIFRoaXMgcmVzb3VyY2UgY2FuIG9ubHkgYmUgdXNlZCB3aXRoIEF0bGFzLW1hbmFnZWQgY2x1c3RlcnMsIHNlZSBkb2MgZm9yIGBHbG9iYWxDbHVzdGVyU2VsZk1hbmFnZWRTaGFyZGluZ2AgYXR0cmlidXRlIGluIGBNb25nb2RiOjpBdGxhczo6Q2x1c3RlcmAgcmVzb3VyY2UgZm9yIG1vcmUgaW5mby5cbiAqXG4gKiBAc2NoZW1hIENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHVuaXF1ZSBpZGVudGlmaWVyIG9mIHRoZSBwcm9qZWN0IGZvciB0aGUgQXRsYXMgY2x1c3Rlci5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEF0bGFzIGNsdXN0ZXIgdGhhdCBjb250YWlucyB0aGUgc25hcHNob3RzIHlvdSB3YW50IHRvIHJldHJpZXZlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyNDbHVzdGVyTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgY2x1c3Rlck5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCB0aGF0IGNvbnRhaW5zIGNvbW1hLXNlcGFyYXRlZCBrZXkgdmFsdWUgcGFpcnMgdG8gbWFwIHpvbmVzIHRvIGdlb2dyYXBoaWMgcmVnaW9ucy4gVGhlc2UgcGFpcnMgbWFwIGFuIElTTyAzMTY2LTFhMiBsb2NhdGlvbiBjb2RlLCB3aXRoIGFuIElTTyAzMTY2LTIgc3ViZGl2aXNpb24gY29kZSB3aGVuIHBvc3NpYmxlLCB0byB0aGUgaHVtYW4tcmVhZGFibGUgbGFiZWwgZm9yIHRoZSBkZXNpcmVkIGN1c3RvbSB6b25lLiBNb25nb0RCIENsb3VkIG1hcHMgdGhlIElTTyAzMTY2LTFhMiBjb2RlIHRvIHRoZSBuZWFyZXN0IGdlb2dyYXBoaWNhbCB6b25lIGJ5IGRlZmF1bHQuIEluY2x1ZGUgdGhpcyBwYXJhbWV0ZXIgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgbWFwcGluZ3MuXG4gICAqXG4gICAqIFRoaXMgcGFyYW1ldGVyIHJldHVybnMgYW4gZW1wdHkgb2JqZWN0IGlmIG5vIGN1c3RvbSB6b25lcyBleGlzdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMjTWFuYWdlZE5hbWVzcGFjZXNcbiAgICovXG4gIHJlYWRvbmx5IG1hbmFnZWROYW1lc3BhY2VzPzogTWFuYWdlZE5hbWVzcGFjZVtdO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgYWxsIGN1c3RvbSB6b25lIG1hcHBpbmcgdG8gYmUgZGVsZXRlZCBkdXJpbmcgZGVsZXRlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyNSZW1vdmVBbGxab25lTWFwcGluZ1xuICAgKi9cbiAgcmVhZG9ubHkgcmVtb3ZlQWxsWm9uZU1hcHBpbmc/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgY29tbWEtc2VwYXJhdGVkIGtleSB2YWx1ZSBwYWlycyB0byBtYXAgem9uZXMgdG8gZ2VvZ3JhcGhpYyByZWdpb25zLiBUaGVzZSBwYWlycyBtYXAgYW4gSVNPIDMxNjYtMWEyIGxvY2F0aW9uIGNvZGUsIHdpdGggYW4gSVNPIDMxNjYtMiBzdWJkaXZpc2lvbiBjb2RlIHdoZW4gcG9zc2libGUsIHRvIHRoZSBodW1hbi1yZWFkYWJsZSBsYWJlbCBmb3IgdGhlIGRlc2lyZWQgY3VzdG9tIHpvbmUuIE1vbmdvREIgQ2xvdWQgbWFwcyB0aGUgSVNPIDMxNjYtMWEyIGNvZGUgdG8gdGhlIG5lYXJlc3QgZ2VvZ3JhcGhpY2FsIHpvbmUgYnkgZGVmYXVsdC4gSW5jbHVkZSB0aGlzIHBhcmFtZXRlciB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBtYXBwaW5ncy5cbiAgICpcbiAgICogVGhpcyBwYXJhbWV0ZXIgcmV0dXJucyBhbiBlbXB0eSBvYmplY3QgaWYgbm8gY3VzdG9tIHpvbmVzIGV4aXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyNDdXN0b21ab25lTWFwcGluZ3NcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbVpvbmVNYXBwaW5ncz86IFpvbmVNYXBwaW5nW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0Nmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzKFxuICBvYmo6IENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBDbHVzdGVyTmFtZTogb2JqLmNsdXN0ZXJOYW1lLFxuICAgIE1hbmFnZWROYW1lc3BhY2VzOiBvYmoubWFuYWdlZE5hbWVzcGFjZXM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9NYW5hZ2VkTmFtZXNwYWNlKHkpXG4gICAgKSxcbiAgICBSZW1vdmVBbGxab25lTWFwcGluZzogb2JqLnJlbW92ZUFsbFpvbmVNYXBwaW5nLFxuICAgIEN1c3RvbVpvbmVNYXBwaW5nczogb2JqLmN1c3RvbVpvbmVNYXBwaW5ncz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX1pvbmVNYXBwaW5nKHkpXG4gICAgKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBtYW5hZ2VkTmFtZXNwYWNlXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgTWFuYWdlZE5hbWVzcGFjZSB7XG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCBvZiB0aGUgY29sbGVjdGlvbiB0byBtYW5hZ2UgZm9yIHRoaXMgR2xvYmFsIENsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgbWFuYWdlZE5hbWVzcGFjZSNDb2xsZWN0aW9uXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRhYmFzZSBwYXJhbWV0ZXIgdXNlZCB0byBkaXZpZGUgdGhlICpjb2xsZWN0aW9uKiBpbnRvIHNoYXJkcy4gR2xvYmFsIGNsdXN0ZXJzIHJlcXVpcmUgYSBjb21wb3VuZCBzaGFyZCBrZXkuIFRoaXMgY29tcG91bmQgc2hhcmQga2V5IGNvbWJpbmVzIHRoZSBsb2NhdGlvbiBwYXJhbWV0ZXIgYW5kIHRoZSB1c2VyLXNlbGVjdGVkIGN1c3RvbSBrZXkuXG4gICAqXG4gICAqIEBzY2hlbWEgbWFuYWdlZE5hbWVzcGFjZSNDdXN0b21TaGFyZEtleVxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tU2hhcmRLZXk/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIG9mIHRoZSBkYXRhYmFzZSB0byBtYW5hZ2UgZm9yIHRoaXMgR2xvYmFsIENsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgbWFuYWdlZE5hbWVzcGFjZSNEYlxuICAgKi9cbiAgcmVhZG9ubHkgZGI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciBzb21lb25lIGhhc2hlZCB0aGUgY3VzdG9tIHNoYXJkIGtleSBmb3IgdGhlIHNwZWNpZmllZCBjb2xsZWN0aW9uLiBJZiB5b3Ugc2V0IHRoaXMgdmFsdWUgdG8gYGZhbHNlYCwgTW9uZ29EQiBDbG91ZCB1c2VzIHJhbmdlZCBzaGFyZGluZy5cbiAgICpcbiAgICogQHNjaGVtYSBtYW5hZ2VkTmFtZXNwYWNlI0lzQ3VzdG9tU2hhcmRLZXlIYXNoZWRcbiAgICovXG4gIHJlYWRvbmx5IGlzQ3VzdG9tU2hhcmRLZXlIYXNoZWQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgc29tZW9uZSBbaGFzaGVkXShodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL21hbnVhbC9yZWZlcmVuY2UvbWV0aG9kL3NoLnNoYXJkQ29sbGVjdGlvbi8jaGFzaGVkLXNoYXJkLWtleXMpIHRoZSBjdXN0b20gc2hhcmQga2V5LiBJZiB0aGlzIHBhcmFtZXRlciByZXR1cm5zIGBmYWxzZWAsIHRoaXMgY2x1c3RlciB1c2VzIFtyYW5nZWQgc2hhcmRpbmddKGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvbWFudWFsL2NvcmUvcmFuZ2VkLXNoYXJkaW5nLykuXG4gICAqXG4gICAqIEBzY2hlbWEgbWFuYWdlZE5hbWVzcGFjZSNJc1NoYXJkS2V5VW5pcXVlXG4gICAqL1xuICByZWFkb25seSBpc1NoYXJkS2V5VW5pcXVlPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnTWFuYWdlZE5hbWVzcGFjZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fTWFuYWdlZE5hbWVzcGFjZShcbiAgb2JqOiBNYW5hZ2VkTmFtZXNwYWNlIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ29sbGVjdGlvbjogb2JqLmNvbGxlY3Rpb24sXG4gICAgQ3VzdG9tU2hhcmRLZXk6IG9iai5jdXN0b21TaGFyZEtleSxcbiAgICBEYjogb2JqLmRiLFxuICAgIElzQ3VzdG9tU2hhcmRLZXlIYXNoZWQ6IG9iai5pc0N1c3RvbVNoYXJkS2V5SGFzaGVkLFxuICAgIElzU2hhcmRLZXlVbmlxdWU6IG9iai5pc1NoYXJkS2V5VW5pcXVlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIHpvbmVNYXBwaW5nXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgWm9uZU1hcHBpbmcge1xuICAvKipcbiAgICogQ29kZSB0aGF0IHJlcHJlc2VudHMgYSBsb2NhdGlvbiB0aGF0IG1hcHMgdG8gYSB6b25lIGluIHlvdXIgZ2xvYmFsIGNsdXN0ZXIuIE1vbmdvREIgQ2xvdWQgcmVwcmVzZW50cyB0aGlzIGxvY2F0aW9uIHdpdGggYSBJU08gMzE2Ni0yIGxvY2F0aW9uIGFuZCBzdWJkaXZpc2lvbiBjb2RlcyB3aGVuIHBvc3NpYmxlLlxuICAgKlxuICAgKiBAc2NoZW1hIHpvbmVNYXBwaW5nI0xvY2F0aW9uXG4gICAqL1xuICByZWFkb25seSBsb2NhdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSB6b25lIGluIHlvdXIgZ2xvYmFsIGNsdXN0ZXIuIFRoaXMgem9uZSBtYXBzIHRvIGEgbG9jYXRpb24gY29kZS5cbiAgICpcbiAgICogQHNjaGVtYSB6b25lTWFwcGluZyNab25lXG4gICAqL1xuICByZWFkb25seSB6b25lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdab25lTWFwcGluZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fWm9uZU1hcHBpbmcoXG4gIG9iajogWm9uZU1hcHBpbmcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBMb2NhdGlvbjogb2JqLmxvY2F0aW9uLFxuICAgIFpvbmU6IG9iai56b25lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6R2xvYmFsQ2x1c3RlckNvbmZpZ2BcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6R2xvYmFsQ2x1c3RlckNvbmZpZ1xuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZyBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpHbG9iYWxDbHVzdGVyQ29uZmlnXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHM7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6Okdsb2JhbENsdXN0ZXJDb25maWdgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZy5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0Nmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL2dsb2JhbC1jbHVzdGVyLWNvbmZpZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFpRG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtDQUFrQyxDQUNoRCxHQUE0QztJQUU1QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1FBQzVCLGlCQUFpQixFQUFFLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNsRCx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsQ0FDM0I7UUFDRCxrQkFBa0IsRUFBRSxHQUFHLENBQUMsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDcEQsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLENBQ3RCO0tBQ0YsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBdEJELGdGQXNCQztBQTJDRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQix1QkFBdUIsQ0FDckMsR0FBaUM7SUFFakMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7UUFDMUIsY0FBYyxFQUFFLEdBQUcsQ0FBQyxjQUFjO1FBQ2xDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNWLHNCQUFzQixFQUFFLEdBQUcsQ0FBQyxzQkFBc0I7UUFDbEQsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQjtLQUN2QyxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFsQkQsMERBa0JDO0FBc0JEOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLGtCQUFrQixDQUNoQyxHQUE0QjtJQUU1QixJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtRQUN0QixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7S0FDZixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCxnREFlQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsc0JBQXVCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFpQnpEOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQWtDO1FBRWxDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLHNCQUFzQixDQUFDLHNCQUFzQjtZQUNuRCxVQUFVLEVBQUUsa0NBQWtDLENBQUMsS0FBSyxDQUFFO1NBQ3ZELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLHNCQUFzQixDQUFDLENBQUM7SUFDdEUsQ0FBQzs7QUFyQ0gsd0RBc0NDOzs7QUFyQ0M7O0dBRUc7QUFDb0IsNkNBQXNCLEdBQzNDLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBhbmQgcmVtb3ZlcyBHbG9iYWwgQ2x1c3RlciBtYW5hZ2VkIG5hbWVzcGFjZXMgYW5kIGN1c3RvbSB6b25lIG1hcHBpbmdzLiBUaGlzIHJlc291cmNlIGNhbiBvbmx5IGJlIHVzZWQgd2l0aCBBdGxhcy1tYW5hZ2VkIGNsdXN0ZXJzLCBzZWUgZG9jIGZvciBgR2xvYmFsQ2x1c3RlclNlbGZNYW5hZ2VkU2hhcmRpbmdgIGF0dHJpYnV0ZSBpbiBgTW9uZ29kYjo6QXRsYXM6OkNsdXN0ZXJgIHJlc291cmNlIGZvciBtb3JlIGluZm8uXG4gKlxuICogQHNjaGVtYSBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgcHJvamVjdCBmb3IgdGhlIEF0bGFzIGNsdXN0ZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgQXRsYXMgY2x1c3RlciB0aGF0IGNvbnRhaW5zIHRoZSBzbmFwc2hvdHMgeW91IHdhbnQgdG8gcmV0cmlldmUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzI0NsdXN0ZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCB0aGF0IGNvbnRhaW5zIGNvbW1hLXNlcGFyYXRlZCBrZXkgdmFsdWUgcGFpcnMgdG8gbWFwIHpvbmVzIHRvIGdlb2dyYXBoaWMgcmVnaW9ucy4gVGhlc2UgcGFpcnMgbWFwIGFuIElTTyAzMTY2LTFhMiBsb2NhdGlvbiBjb2RlLCB3aXRoIGFuIElTTyAzMTY2LTIgc3ViZGl2aXNpb24gY29kZSB3aGVuIHBvc3NpYmxlLCB0byB0aGUgaHVtYW4tcmVhZGFibGUgbGFiZWwgZm9yIHRoZSBkZXNpcmVkIGN1c3RvbSB6b25lLiBNb25nb0RCIENsb3VkIG1hcHMgdGhlIElTTyAzMTY2LTFhMiBjb2RlIHRvIHRoZSBuZWFyZXN0IGdlb2dyYXBoaWNhbCB6b25lIGJ5IGRlZmF1bHQuIEluY2x1ZGUgdGhpcyBwYXJhbWV0ZXIgdG8gb3ZlcnJpZGUgdGhlIGRlZmF1bHQgbWFwcGluZ3MuXG4gICAqXG4gICAqIFRoaXMgcGFyYW1ldGVyIHJldHVybnMgYW4gZW1wdHkgb2JqZWN0IGlmIG5vIGN1c3RvbSB6b25lcyBleGlzdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMjTWFuYWdlZE5hbWVzcGFjZXNcbiAgICovXG4gIHJlYWRvbmx5IG1hbmFnZWROYW1lc3BhY2VzPzogTWFuYWdlZE5hbWVzcGFjZVtdO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgY29tbWEtc2VwYXJhdGVkIGtleSB2YWx1ZSBwYWlycyB0byBtYXAgem9uZXMgdG8gZ2VvZ3JhcGhpYyByZWdpb25zLiBUaGVzZSBwYWlycyBtYXAgYW4gSVNPIDMxNjYtMWEyIGxvY2F0aW9uIGNvZGUsIHdpdGggYW4gSVNPIDMxNjYtMiBzdWJkaXZpc2lvbiBjb2RlIHdoZW4gcG9zc2libGUsIHRvIHRoZSBodW1hbi1yZWFkYWJsZSBsYWJlbCBmb3IgdGhlIGRlc2lyZWQgY3VzdG9tIHpvbmUuIE1vbmdvREIgQ2xvdWQgbWFwcyB0aGUgSVNPIDMxNjYtMWEyIGNvZGUgdG8gdGhlIG5lYXJlc3QgZ2VvZ3JhcGhpY2FsIHpvbmUgYnkgZGVmYXVsdC4gSW5jbHVkZSB0aGlzIHBhcmFtZXRlciB0byBvdmVycmlkZSB0aGUgZGVmYXVsdCBtYXBwaW5ncy5cbiAgICpcbiAgICogVGhpcyBwYXJhbWV0ZXIgcmV0dXJucyBhbiBlbXB0eSBvYmplY3QgaWYgbm8gY3VzdG9tIHpvbmVzIGV4aXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyNDdXN0b21ab25lTWFwcGluZ3NcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbVpvbmVNYXBwaW5ncz86IFpvbmVNYXBwaW5nW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0Nmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzKFxuICBvYmo6IENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBDbHVzdGVyTmFtZTogb2JqLmNsdXN0ZXJOYW1lLFxuICAgIE1hbmFnZWROYW1lc3BhY2VzOiBvYmoubWFuYWdlZE5hbWVzcGFjZXM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9NYW5hZ2VkTmFtZXNwYWNlKHkpXG4gICAgKSxcbiAgICBDdXN0b21ab25lTWFwcGluZ3M6IG9iai5jdXN0b21ab25lTWFwcGluZ3M/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9ab25lTWFwcGluZyh5KVxuICAgICksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgbWFuYWdlZE5hbWVzcGFjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIE1hbmFnZWROYW1lc3BhY2Uge1xuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgb2YgdGhlIGNvbGxlY3Rpb24gdG8gbWFuYWdlIGZvciB0aGlzIEdsb2JhbCBDbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIG1hbmFnZWROYW1lc3BhY2UjQ29sbGVjdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogRGF0YWJhc2UgcGFyYW1ldGVyIHVzZWQgdG8gZGl2aWRlIHRoZSAqY29sbGVjdGlvbiogaW50byBzaGFyZHMuIEdsb2JhbCBjbHVzdGVycyByZXF1aXJlIGEgY29tcG91bmQgc2hhcmQga2V5LiBUaGlzIGNvbXBvdW5kIHNoYXJkIGtleSBjb21iaW5lcyB0aGUgbG9jYXRpb24gcGFyYW1ldGVyIGFuZCB0aGUgdXNlci1zZWxlY3RlZCBjdXN0b20ga2V5LlxuICAgKlxuICAgKiBAc2NoZW1hIG1hbmFnZWROYW1lc3BhY2UjQ3VzdG9tU2hhcmRLZXlcbiAgICovXG4gIHJlYWRvbmx5IGN1c3RvbVNoYXJkS2V5Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCBvZiB0aGUgZGF0YWJhc2UgdG8gbWFuYWdlIGZvciB0aGlzIEdsb2JhbCBDbHVzdGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIG1hbmFnZWROYW1lc3BhY2UjRGJcbiAgICovXG4gIHJlYWRvbmx5IGRiPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgc29tZW9uZSBoYXNoZWQgdGhlIGN1c3RvbSBzaGFyZCBrZXkgZm9yIHRoZSBzcGVjaWZpZWQgY29sbGVjdGlvbi4gSWYgeW91IHNldCB0aGlzIHZhbHVlIHRvIGBmYWxzZWAsIE1vbmdvREIgQ2xvdWQgdXNlcyByYW5nZWQgc2hhcmRpbmcuXG4gICAqXG4gICAqIEBzY2hlbWEgbWFuYWdlZE5hbWVzcGFjZSNJc0N1c3RvbVNoYXJkS2V5SGFzaGVkXG4gICAqL1xuICByZWFkb25seSBpc0N1c3RvbVNoYXJkS2V5SGFzaGVkPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHNvbWVvbmUgW2hhc2hlZF0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9tYW51YWwvcmVmZXJlbmNlL21ldGhvZC9zaC5zaGFyZENvbGxlY3Rpb24vI2hhc2hlZC1zaGFyZC1rZXlzKSB0aGUgY3VzdG9tIHNoYXJkIGtleS4gSWYgdGhpcyBwYXJhbWV0ZXIgcmV0dXJucyBgZmFsc2VgLCB0aGlzIGNsdXN0ZXIgdXNlcyBbcmFuZ2VkIHNoYXJkaW5nXShodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL21hbnVhbC9jb3JlL3JhbmdlZC1zaGFyZGluZy8pLlxuICAgKlxuICAgKiBAc2NoZW1hIG1hbmFnZWROYW1lc3BhY2UjSXNTaGFyZEtleVVuaXF1ZVxuICAgKi9cbiAgcmVhZG9ubHkgaXNTaGFyZEtleVVuaXF1ZT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ01hbmFnZWROYW1lc3BhY2UnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX01hbmFnZWROYW1lc3BhY2UoXG4gIG9iajogTWFuYWdlZE5hbWVzcGFjZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENvbGxlY3Rpb246IG9iai5jb2xsZWN0aW9uLFxuICAgIEN1c3RvbVNoYXJkS2V5OiBvYmouY3VzdG9tU2hhcmRLZXksXG4gICAgRGI6IG9iai5kYixcbiAgICBJc0N1c3RvbVNoYXJkS2V5SGFzaGVkOiBvYmouaXNDdXN0b21TaGFyZEtleUhhc2hlZCxcbiAgICBJc1NoYXJkS2V5VW5pcXVlOiBvYmouaXNTaGFyZEtleVVuaXF1ZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSB6b25lTWFwcGluZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFpvbmVNYXBwaW5nIHtcbiAgLyoqXG4gICAqIENvZGUgdGhhdCByZXByZXNlbnRzIGEgbG9jYXRpb24gdGhhdCBtYXBzIHRvIGEgem9uZSBpbiB5b3VyIGdsb2JhbCBjbHVzdGVyLiBNb25nb0RCIENsb3VkIHJlcHJlc2VudHMgdGhpcyBsb2NhdGlvbiB3aXRoIGEgSVNPIDMxNjYtMiBsb2NhdGlvbiBhbmQgc3ViZGl2aXNpb24gY29kZXMgd2hlbiBwb3NzaWJsZS5cbiAgICpcbiAgICogQHNjaGVtYSB6b25lTWFwcGluZyNMb2NhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgbG9jYXRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgem9uZSBpbiB5b3VyIGdsb2JhbCBjbHVzdGVyLiBUaGlzIHpvbmUgbWFwcyB0byBhIGxvY2F0aW9uIGNvZGUuXG4gICAqXG4gICAqIEBzY2hlbWEgem9uZU1hcHBpbmcjWm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgem9uZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnWm9uZU1hcHBpbmcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1pvbmVNYXBwaW5nKFxuICBvYmo6IFpvbmVNYXBwaW5nIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgTG9jYXRpb246IG9iai5sb2NhdGlvbixcbiAgICBab25lOiBvYmouem9uZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6Okdsb2JhbENsdXN0ZXJDb25maWdgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6Okdsb2JhbENsdXN0ZXJDb25maWdcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbkdsb2JhbENsdXN0ZXJDb25maWcgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6R2xvYmFsQ2x1c3RlckNvbmZpZ1wiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuR2xvYmFsQ2x1c3RlckNvbmZpZ1Byb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpHbG9iYWxDbHVzdGVyQ29uZmlnLlJlbW92ZUFsbFpvbmVNYXBwaW5nYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJSZW1vdmVBbGxab25lTWFwcGluZzogY2RrLklSZXNvbHZhYmxlO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpHbG9iYWxDbHVzdGVyQ29uZmlnYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmbkdsb2JhbENsdXN0ZXJDb25maWdQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmbkdsb2JhbENsdXN0ZXJDb25maWcuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5HbG9iYWxDbHVzdGVyQ29uZmlnUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0clJlbW92ZUFsbFpvbmVNYXBwaW5nID0gdGhpcy5nZXRBdHQoXCJSZW1vdmVBbGxab25lTWFwcGluZ1wiKTtcbiAgfVxufVxuIl19

@@ -76,3 +76,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnLdapConfiguration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnLdapConfiguration", version: "3.7.2" };
CfnLdapConfiguration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnLdapConfiguration", version: "3.8.0" };
/**

@@ -79,0 +79,0 @@ * The CloudFormation resource type name for this resource class.

@@ -74,3 +74,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnLdapVerify[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnLdapVerify", version: "3.7.2" };
CfnLdapVerify[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnLdapVerify", version: "3.8.0" };
/**

@@ -77,0 +77,0 @@ * The CloudFormation resource type name for this resource class.

@@ -53,3 +53,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnMaintenanceWindow[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnMaintenanceWindow", version: "3.7.2" };
CfnMaintenanceWindow[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnMaintenanceWindow", version: "3.8.0" };
/**

@@ -56,0 +56,0 @@ * The CloudFormation resource type name for this resource class.

@@ -54,3 +54,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnNetworkContainer[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnNetworkContainer", version: "3.7.2" };
CfnNetworkContainer[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnNetworkContainer", version: "3.8.0" };
/**

@@ -57,0 +57,0 @@ * The CloudFormation resource type name for this resource class.

@@ -58,3 +58,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnNetworkPeering[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnNetworkPeering", version: "3.7.2" };
CfnNetworkPeering[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnNetworkPeering", version: "3.8.0" };
/**

@@ -61,0 +61,0 @@ * The CloudFormation resource type name for this resource class.

@@ -110,5 +110,3 @@ import * as cdk from "aws-cdk-lib";

/**
* Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query.
* **DATE** selects documents to archive based on a date.
* **CUSTOM** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **CUSTOM** when `"collectionType": "TIMESERIES"`.
* Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query. **DATE** selects documents to archive based on a date. (if DATE is selected, the PartitionFields.FieldName must be completed with the Criteria.DateField value)**CUSTOM** selects documents to archive based on a custom JSON query (When selecting this option, the Query property must be inputted). MongoDB Cloud doesn't support **CUSTOM** when `collectionType: TIMESERIES`.
*

@@ -158,8 +156,2 @@ * @schema CriteriaView#Type

/**
* Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type [UUID](http://bsonspec.org/spec.html) must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.
*
* @schema PartitionFieldView#FieldType
*/
readonly fieldType?: PartitionFieldViewFieldType;
/**
* Sequence in which MongoDB Cloud slices the collection data to create partitions. The resource expresses this sequence starting with zero. The value of the **criteria.dateField** parameter defaults as the first item in the partition sequence.

@@ -225,5 +217,3 @@ *

/**
* Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query.
* **DATE** selects documents to archive based on a date.
* **CUSTOM** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **CUSTOM** when `"collectionType": "TIMESERIES"`.
* Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query. **DATE** selects documents to archive based on a date. (if DATE is selected, the PartitionFields.FieldName must be completed with the Criteria.DateField value)**CUSTOM** selects documents to archive based on a custom JSON query (When selecting this option, the Query property must be inputted). MongoDB Cloud doesn't support **CUSTOM** when `collectionType: TIMESERIES`.
*

@@ -254,21 +244,2 @@ * @schema CriteriaViewType

/**
* Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type [UUID](http://bsonspec.org/spec.html) must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.
*
* @schema PartitionFieldViewFieldType
*/
export declare enum PartitionFieldViewFieldType {
/** date */
DATE = "date",
/** int */
INT = "int",
/** long */
LONG = "long",
/** objectId */
OBJECT_ID = "objectId",
/** string */
STRING = "string",
/** uuid */
UUID = "uuid"
}
/**
* @schema ScheduleViewType

@@ -275,0 +246,0 @@ */

"use strict";
var _a;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CfnOnlineArchive = exports.ScheduleViewType = exports.PartitionFieldViewFieldType = exports.CriteriaViewDateFormat = exports.CriteriaViewType = exports.toJson_ScheduleView = exports.toJson_PartitionFieldView = exports.toJson_CriteriaView = exports.CfnOnlineArchivePropsCollectionType = exports.toJson_CfnOnlineArchiveProps = void 0;
exports.CfnOnlineArchive = exports.ScheduleViewType = exports.CriteriaViewDateFormat = exports.CriteriaViewType = exports.toJson_ScheduleView = exports.toJson_PartitionFieldView = exports.toJson_CriteriaView = exports.CfnOnlineArchivePropsCollectionType = exports.toJson_CfnOnlineArchiveProps = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");

@@ -78,3 +78,2 @@ // Generated by cdk-import

FieldName: obj.fieldName,
FieldType: obj.fieldType,
Order: obj.order,

@@ -109,5 +108,3 @@ };

/**
* Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query.
* **DATE** selects documents to archive based on a date.
* **CUSTOM** selects documents to archive based on a custom JSON query. MongoDB Cloud doesn't support **CUSTOM** when `"collectionType": "TIMESERIES"`.
* Means by which MongoDB Cloud selects data to archive. Data can be chosen using the age of the data or a MongoDB query. **DATE** selects documents to archive based on a date. (if DATE is selected, the PartitionFields.FieldName must be completed with the Criteria.DateField value)**CUSTOM** selects documents to archive based on a custom JSON query (When selecting this option, the Query property must be inputted). MongoDB Cloud doesn't support **CUSTOM** when `collectionType: TIMESERIES`.
*

@@ -140,22 +137,2 @@ * @schema CriteriaViewType

/**
* Data type of the parameter that that MongoDB Cloud uses to partition data. Partition parameters of type [UUID](http://bsonspec.org/spec.html) must be of binary subtype 4. MongoDB Cloud skips partition parameters of type UUID with subtype 3.
*
* @schema PartitionFieldViewFieldType
*/
var PartitionFieldViewFieldType;
(function (PartitionFieldViewFieldType) {
/** date */
PartitionFieldViewFieldType["DATE"] = "date";
/** int */
PartitionFieldViewFieldType["INT"] = "int";
/** long */
PartitionFieldViewFieldType["LONG"] = "long";
/** objectId */
PartitionFieldViewFieldType["OBJECT_ID"] = "objectId";
/** string */
PartitionFieldViewFieldType["STRING"] = "string";
/** uuid */
PartitionFieldViewFieldType["UUID"] = "uuid";
})(PartitionFieldViewFieldType = exports.PartitionFieldViewFieldType || (exports.PartitionFieldViewFieldType = {}));
/**
* @schema ScheduleViewType

@@ -201,3 +178,3 @@ */

_a = JSII_RTTI_SYMBOL_1;
CfnOnlineArchive[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOnlineArchive", version: "3.7.2" };
CfnOnlineArchive[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOnlineArchive", version: "3.8.0" };
/**

@@ -207,2 +184,2 @@ * The CloudFormation resource type name for this resource class.

CfnOnlineArchive.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::OnlineArchive";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL29ubGluZS1hcmNoaXZlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQW9HbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsNEJBQTRCLENBQzFDLEdBQXNDO0lBRXRDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztRQUM1QixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsY0FBYyxFQUFFLEdBQUcsQ0FBQyxjQUFjO1FBQ2xDLFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzNDLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtRQUNsQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDOUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDLENBQzdCO1FBQ0QsUUFBUSxFQUFFLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7S0FDNUMsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFD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Ozs7QUEvQ0M7O0dBRUc7QUFDb0IsdUNBQXNCLEdBQzNDLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgb3IgcmVtb3ZlcyBhbiBvbmxpbmUgYXJjaGl2ZS5cbiAqXG4gKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbk9ubGluZUFyY2hpdmVQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjbHVzdGVyIHRoYXQgY29udGFpbnMgdGhlIGNvbGxlY3Rpb24gZnJvbSB3aGljaCB5b3Ugd2FudCB0byByZW1vdmUgYW4gb25saW5lIGFyY2hpdmUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI0NsdXN0ZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNvbGxlY3Rpb24gZm9yIHdoaWNoIHlvdSBjcmVhdGVkIHRoZSBvbmxpbmUgYXJjaGl2ZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjQ29sbE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGNvbGxOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDbGFzc2lmaWNhdGlvbiBvZiBNb25nb0RCIGRhdGFiYXNlIGNvbGxlY3Rpb24gdGhhdCB5b3Ugd2FudCB0byByZXR1cm4uXG4gICAqXG4gICAqIElmIHlvdSBzZXQgdGhpcyBwYXJhbWV0ZXIgdG8gYFRJTUVTRVJJRVNgLCBzZXQgYFwiY3JpdGVyaWEudHlwZVwiIDogXCJkYXRlXCJgIGFuZCBgXCJjcml0ZXJpYS5kYXRlRm9ybWF0XCIgOiBcIklTT0RBVEVcImAuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI0NvbGxlY3Rpb25UeXBlXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uVHlwZT86IENmbk9ubGluZUFyY2hpdmVQcm9wc0NvbGxlY3Rpb25UeXBlO1xuXG4gIC8qKlxuICAgKiBSdWxlcyBieSB3aGljaCBNb25nb0RCIE1vbmdvREIgQ2xvdWQgYXJjaGl2ZXMgZGF0YS5cbiAgICpcbiAgICogVXNlIHRoZSAqKmNyaXRlcmlhLnR5cGUqKiBmaWVsZCB0byBjaG9vc2UgaG93IE1vbmdvREIgQ2xvdWQgc2VsZWN0cyBkYXRhIHRvIGFyY2hpdmUuIENob29zZSBkYXRhIHVzaW5nIHRoZSBhZ2Ugb2YgdGhlIGRhdGEgb3IgYSBNb25nb0RCIHF1ZXJ5LlxuICAgKiAqKlwiY3JpdGVyaWEudHlwZVwiOiBcIkRBVEVcIioqIHNlbGVjdHMgZG9jdW1lbnRzIHRvIGFyY2hpdmUgYmFzZWQgb24gYSBkYXRlLlxuICAgKiAqKlwiY3JpdGVyaWEudHlwZVwiOiBcIkNVU1RPTVwiKiogc2VsZWN0cyBkb2N1bWVudHMgdG8gYXJjaGl2ZSBiYXNlZCBvbiBhIGN1c3RvbSBKU09OIHF1ZXJ5LiBNb25nb0RCIENsb3VkIGRvZXNuJ3Qgc3VwcG9ydCAqKlwiY3JpdGVyaWEudHlwZVwiOiBcIkNVU1RPTVwiKiogd2hlbiAqKlwiY29sbGVjdGlvblR5cGVcIjogXCJUSU1FU0VSSUVTXCIqKi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjQ3JpdGVyaWFcbiAgICovXG4gIHJlYWRvbmx5IGNyaXRlcmlhOiBDcml0ZXJpYVZpZXc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIG9mIHRoZSBkYXRhYmFzZSB0aGF0IGNvbnRhaW5zIHRoZSBjb2xsZWN0aW9uIHRoYXQgY29udGFpbnMgdGhlIG9ubGluZSBhcmNoaXZlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNEYk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGRiTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSByZXNwb25zZSByZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMgKCoqdG90YWxDb3VudCoqKSBpbiB0aGUgcmVzcG9uc2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI0luY2x1ZGVDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW5jbHVkZUNvdW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgdGhlIHJlc3BvbnNlIHJldHVybnMgcGVyIHBhZ2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI0l0ZW1zUGVyUGFnZVxuICAgKi9cbiAgcmVhZG9ubHkgaXRlbXNQZXJQYWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGhlIHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgY3VycmVudCBzZXQgb2YgdGhlIHRvdGFsIG9iamVjdHMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjUGFnZU51bVxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZU51bT86IG51bWJlcjtcblxuICAvKipcbiAgICogTGlzdCB0aGF0IGNvbnRhaW5zIGRvY3VtZW50IHBhcmFtZXRlcnMgdG8gdXNlIHRvIGxvZ2ljYWxseSBkaXZpZGUgZGF0YSB3aXRoaW4gYSBjb2xsZWN0aW9uLiBQYXJ0aXRpb25zIHByb3ZpZGUgYSBjb2Fyc2UgbGV2ZWwgb2YgZmlsdGVyaW5nIG9mIHRoZSB1bmRlcmx5aW5nIGNvbGxlY3Rpb24gZGF0YS4gVG8gZGl2aWRlIHlvdXIgZGF0YSwgc3BlY2lmeSB1cCB0byB0d28gcGFyYW1ldGVycyB0aGF0IHlvdSBmcmVxdWVudGx5IHF1ZXJ5LiBBbnkgcXVlcmllcyB0aGF0IGRvbid0IHVzZSB0aGVzZSBwYXJhbWV0ZXJzIHJlc3VsdCBpbiBhIGZ1bGwgY29sbGVjdGlvbiBzY2FuIG9mIGFsbCBhcmNoaXZlZCBkb2N1bWVudHMuIFRoaXMgdGFrZXMgbW9yZSB0aW1lIGFuZCBpbmNyZWFzZSB5b3VyIGNvc3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNQYXJ0aXRpb25GaWVsZHNcbiAgICovXG4gIHJlYWRvbmx5IHBhcnRpdGlvbkZpZWxkcz86IFBhcnRpdGlvbkZpZWxkVmlld1tdO1xuXG4gIC8qKlxuICAgKiBSZWd1bGFyIGZyZXF1ZW5jeSBhbmQgZHVyYXRpb24gd2hlbiBhcmNoaXZpbmcgcHJvY2VzcyBvY2N1cnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI1NjaGVkdWxlXG4gICAqL1xuICByZWFkb25seSBzY2hlZHVsZT86IFNjaGVkdWxlVmlldztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuT25saW5lQXJjaGl2ZVByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5PbmxpbmVBcmNoaXZlUHJvcHMoXG4gIG9iajogQ2ZuT25saW5lQXJjaGl2ZVByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgQ2x1c3Rlck5hbWU6IG9iai5jbHVzdGVyTmFtZSxcbiAgICBDb2xsTmFtZTogb2JqLmNvbGxOYW1lLFxuICAgIENvbGxlY3Rpb25UeXBlOiBvYmouY29sbGVjdGlvblR5cGUsXG4gICAgQ3JpdGVyaWE6IHRvSnNvbl9Dcml0ZXJpYVZpZXcob2JqLmNyaXRlcmlhKSxcbiAgICBEYk5hbWU6IG9iai5kYk5hbWUsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIEluY2x1ZGVDb3VudDogb2JqLmluY2x1ZGVDb3VudCxcbiAgICBJdGVtc1BlclBhZ2U6IG9iai5pdGVtc1BlclBhZ2UsXG4gICAgUGFnZU51bTogb2JqLnBhZ2VOdW0sXG4gICAgUGFydGl0aW9uRmllbGRzOiBvYmoucGFydGl0aW9uRmllbGRzPy5tYXAoKHkpID0+XG4gICAgICB0b0pzb25fUGFydGl0aW9uRmllbGRWaWV3KHkpXG4gICAgKSxcbiAgICBTY2hlZHVsZTogdG9Kc29uX1NjaGVkdWxlVmlldyhvYmouc2NoZWR1bGUpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBDbGFzc2lmaWNhdGlvbiBvZiBNb25nb0RCIGRhdGFiYXNlIGNvbGxlY3Rpb24gdGhhdCB5b3Ugd2FudCB0byByZXR1cm4uXG4gKlxuICogSWYgeW91IHNldCB0aGlzIHBhcmFtZXRlciB0byBgVElNRVNFUklFU2AsIHNldCBgXCJjcml0ZXJpYS50eXBlXCIgOiBcImRhdGVcImAgYW5kIGBcImNyaXRlcmlhLmRhdGVGb3JtYXRcIiA6IFwiSVNPREFURVwiYC5cbiAqXG4gKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wc0NvbGxlY3Rpb25UeXBlXG4gKi9cbmV4cG9ydCBlbnVtIENmbk9ubGluZUFyY2hpdmVQcm9wc0NvbGxlY3Rpb25UeXBlIHtcbiAgLyoqIFNUQU5EQVJEICovXG4gIFNUQU5EQVJEID0gXCJTVEFOREFSRFwiLFxuICAvKiogVElNRVNFUklFUyAqL1xuICBUSU1FU0VSSUVTID0gXCJUSU1FU0VSSUVTXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBDcml0ZXJpYVZpZXdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDcml0ZXJpYVZpZXcge1xuICAvKipcbiAgICogTWVhbnMgYnkgd2hpY2ggTW9uZ29EQiBDbG91ZCBzZWxlY3RzIGRhdGEgdG8gYXJjaGl2ZS4gRGF0YSBjYW4gYmUgY2hvc2VuIHVzaW5nIHRoZSBhZ2Ugb2YgdGhlIGRhdGEgb3IgYSBNb25nb0RCIHF1ZXJ5LlxuICAgKiAqKkRBVEUqKiBzZWxlY3RzIGRvY3VtZW50cyB0byBhcmNoaXZlIGJhc2VkIG9uIGEgZGF0ZS5cbiAgICogKipDVVNUT00qKiBzZWxlY3RzIGRvY3VtZW50cyB0byBhcmNoaXZlIGJhc2VkIG9uIGEgY3VzdG9tIEpTT04gcXVlcnkuIE1vbmdvREIgQ2xvdWQgZG9lc24ndCBzdXBwb3J0ICoqQ1VTVE9NKiogd2hlbiBgXCJjb2xsZWN0aW9uVHlwZVwiOiBcIlRJTUVTRVJJRVNcImAuXG4gICAqXG4gICAqIEBzY2hlbWEgQ3JpdGVyaWFWaWV3I1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBDcml0ZXJpYVZpZXdUeXBlO1xuXG4gIC8qKlxuICAgKiBJbmRleGVkIGRhdGFiYXNlIHBhcmFtZXRlciB0aGF0IHN0b3JlcyB0aGUgZGF0ZSB0aGF0IGRldGVybWluZXMgd2hlbiBkYXRhIG1vdmVzIHRvIHRoZSBvbmxpbmUgYXJjaGl2ZS4gTW9uZ29EQiBDbG91ZCBhcmNoaXZlcyB0aGUgZGF0YSB3aGVuIHRoZSBjdXJyZW50IGRhdGUgZXhjZWVkcyB0aGUgZGF0ZSBpbiB0aGlzIGRhdGFiYXNlIHBhcmFtZXRlciBwbHVzIHRoZSBudW1iZXIgb2YgZGF5cyBzcGVjaWZpZWQgdGhyb3VnaCB0aGUgZXhwaXJlQWZ0ZXJEYXlzIHBhcmFtZXRlci4gU2V0IHRoaXMgcGFyYW1ldGVyIHdoZW4geW91IHNldCBcImNyaXRlcmlhLnR5cGVcIiA6IFwiREFURVwiLlxuICAgKlxuICAgKiBAc2NoZW1hIENyaXRlcmlhVmlldyNEYXRlRmllbGRcbiAgICovXG4gIHJlYWRvbmx5IGRhdGVGaWVsZD86IHN0cmluZztcblxuICAvKipcbiAgICogU3ludGF4IHVzZWQgdG8gd3JpdGUgdGhlIGRhdGUgYWZ0ZXIgd2hpY2ggZGF0YSBtb3ZlcyB0byB0aGUgb25saW5lIGFyY2hpdmUuIERhdGUgY2FuIGJlIGV4cHJlc3NlZCBhcyBJU08gODYwMSBvciBFcG9jaCB0aW1lc3RhbXBzLiBUaGUgRXBvY2ggdGltZXN0YW1wIGNhbiBiZSBleHByZXNzZWQgYXMgbmFub3NlY29uZHMsIG1pbGxpc2Vjb25kcywgb3Igc2Vjb25kcy4gU2V0IHRoaXMgcGFyYW1ldGVyIHdoZW4gXCJjcml0ZXJpYS50eXBlXCIgOiBcIkRBVEVcIi4gWW91IG11c3Qgc2V0IFwiY3JpdGVyaWEudHlwZVwiIDogXCJEQVRFXCIgaWYgXCJjb2xsZWN0aW9uVHlwZVwiOiBcIlRJTUVTRVJJRVNcIi5cbiAgICpcbiAgICogQHNjaGVtYSBDcml0ZXJpYVZpZXcjRGF0ZUZvcm1hdFxuICAgKi9cbiAgcmVhZG9ubHkgZGF0ZUZvcm1hdD86IENyaXRlcmlhVmlld0RhdGVGb3JtYXQ7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBkYXlzIGFmdGVyIHRoZSB2YWx1ZSBpbiB0aGUgY3JpdGVyaWEuZGF0ZUZpZWxkIHdoZW4gTW9uZ29EQiBDbG91ZCBhcmNoaXZlcyBkYXRhIGluIHRoZSBzcGVjaWZpZWQgY2x1c3Rlci4gU2V0IHRoaXMgcGFyYW1ldGVyIHdoZW4geW91IHNldCBcImNyaXRlcmlhLnR5cGVcIiA6IFwiREFURVwiLlxuICAgKlxuICAgKiBAc2NoZW1hIENyaXRlcmlhVmlldyNFeHBpcmVBZnRlckRheXNcbiAgICovXG4gIHJlYWRvbmx5IGV4cGlyZUFmdGVyRGF5cz86IG51bWJlcjtcblxuICAvKipcbiAgICogTW9uZ29EQiBmaW5kIHF1ZXJ5IHRoYXQgc2VsZWN0cyBkb2N1bWVudHMgdG8gYXJjaGl2ZS4gVGhlIHNwZWNpZmllZCBxdWVyeSBmb2xsb3dzIHRoZSBzeW50YXggb2YgdGhlIGRiLmNvbGxlY3Rpb24uZmluZChxdWVyeSkgY29tbWFuZC4gVGhpcyBxdWVyeSBjYW4ndCB1c2UgdGhlIGVtcHR5IGRvY3VtZW50ICh7fSkgdG8gcmV0dXJuIGFsbCBkb2N1bWVudHMuIFNldCB0aGlzIHBhcmFtZXRlciB3aGVuIFwiY3JpdGVyaWEudHlwZVwiIDogXCJDVVNUT01cIi5cbiAgICpcbiAgICogQHNjaGVtYSBDcml0ZXJpYVZpZXcjUXVlcnlcbiAgICovXG4gIHJlYWRvbmx5IHF1ZXJ5Pzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDcml0ZXJpYVZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NyaXRlcmlhVmlldyhcbiAgb2JqOiBDcml0ZXJpYVZpZXcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBEYXRlRmllbGQ6IG9iai5kYXRlRmllbGQsXG4gICAgRGF0ZUZvcm1hdDogb2JqLmRhdGVGb3JtYXQsXG4gICAgRXhwaXJlQWZ0ZXJEYXlzOiBvYmouZXhwaXJlQWZ0ZXJEYXlzLFxuICAgIFF1ZXJ5OiBvYmoucXVlcnksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgUGFydGl0aW9uRmllbGRWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFydGl0aW9uRmllbGRWaWV3IHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgcGFyYW1ldGVyIHRoYXQgTW9uZ29EQiBDbG91ZCB1c2VzIHRvIHBhcnRpdGlvbiBkYXRhLiBUbyBzcGVjaWZ5IGEgbmVzdGVkIHBhcmFtZXRlciwgdXNlIHRoZSBkb3Qgbm90YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgUGFydGl0aW9uRmllbGRWaWV3I0ZpZWxkTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZmllbGROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRhIHR5cGUgb2YgdGhlIHBhcmFtZXRlciB0aGF0IHRoYXQgTW9uZ29EQiBDbG91ZCB1c2VzIHRvIHBhcnRpdGlvbiBkYXRhLiBQYXJ0aXRpb24gcGFyYW1ldGVycyBvZiB0eXBlIFtVVUlEXShodHRwOi8vYnNvbnNwZWMub3JnL3NwZWMuaHRtbCkgbXVzdCBiZSBvZiBiaW5hcnkgc3VidHlwZSA0LiBNb25nb0RCIENsb3VkIHNraXBzIHBhcnRpdGlvbiBwYXJhbWV0ZXJzIG9mIHR5cGUgVVVJRCB3aXRoIHN1YnR5cGUgMy5cbiAgICpcbiAgICogQHNjaGVtYSBQYXJ0aXRpb25GaWVsZFZpZXcjRmllbGRUeXBlXG4gICAqL1xuICByZWFkb25seSBmaWVsZFR5cGU/OiBQYXJ0aXRpb25GaWVsZFZpZXdGaWVsZFR5cGU7XG5cbiAgLyoqXG4gICAqIFNlcXVlbmNlIGluIHdoaWNoIE1vbmdvREIgQ2xvdWQgc2xpY2VzIHRoZSBjb2xsZWN0aW9uIGRhdGEgdG8gY3JlYXRlIHBhcnRpdGlvbnMuIFRoZSByZXNvdXJjZSBleHByZXNzZXMgdGhpcyBzZXF1ZW5jZSBzdGFydGluZyB3aXRoIHplcm8uIFRoZSB2YWx1ZSBvZiB0aGUgKipjcml0ZXJpYS5kYXRlRmllbGQqKiBwYXJhbWV0ZXIgZGVmYXVsdHMgYXMgdGhlIGZpcnN0IGl0ZW0gaW4gdGhlIHBhcnRpdGlvbiBzZXF1ZW5jZS5cbiAgICpcbiAgICogQHNjaGVtYSBQYXJ0aXRpb25GaWVsZFZpZXcjT3JkZXJcbiAgICovXG4gIHJlYWRvbmx5IG9yZGVyPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdQYXJ0aXRpb25GaWVsZFZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1BhcnRpdGlvbkZpZWxkVmlldyhcbiAgb2JqOiBQYXJ0aXRpb25GaWVsZFZpZXcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBGaWVsZE5hbWU6IG9iai5maWVsZE5hbWUsXG4gICAgRmllbGRUeXBlOiBvYmouZmllbGRUeXBlLFxuICAgIE9yZGVyOiBvYmoub3JkZXIsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgU2NoZWR1bGVWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2NoZWR1bGVWaWV3IHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgU2NoZWR1bGVWaWV3I1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBTY2hlZHVsZVZpZXdUeXBlO1xuXG4gIC8qKlxuICAgKiBIb3VyIG9mIHRoZSBkYXkgd2hlbiB0aGUgc2NoZWR1bGVkIHdpbmRvdyB0byBydW4gb25lIG9ubGluZSBhcmNoaXZlIGVuZHMuXG4gICAqXG4gICAqIEBzY2hlbWEgU2NoZWR1bGVWaWV3I0VuZEhvdXJcbiAgICovXG4gIHJlYWRvbmx5IGVuZEhvdXI/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1pbnV0ZSBvZiB0aGUgaG91ciB3aGVuIHRoZSBzY2hlZHVsZWQgd2luZG93IHRvIHJ1biBvbmUgb25saW5lIGFyY2hpdmUgZW5kcy5cbiAgICpcbiAgICogQHNjaGVtYSBTY2hlZHVsZVZpZXcjRW5kTWludXRlXG4gICAqL1xuICByZWFkb25seSBlbmRNaW51dGU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEhvdXIgb2YgdGhlIGRheSB3aGVuIHRoZSB3aGVuIHRoZSBzY2hlZHVsZWQgd2luZG93IHRvIHJ1biBvbmUgb25saW5lIGFyY2hpdmUgc3RhcnRzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlVmlldyNTdGFydEhvdXJcbiAgICovXG4gIHJlYWRvbmx5IHN0YXJ0SG91cj86IG51bWJlcjtcblxuICAvKipcbiAgICogTWludXRlIG9mIHRoZSBob3VyIHdoZW4gdGhlIHNjaGVkdWxlZCB3aW5kb3cgdG8gcnVuIG9uZSBvbmxpbmUgYXJjaGl2ZSBzdGFydHMuXG4gICAqXG4gICAqIEBzY2hlbWEgU2NoZWR1bGVWaWV3I1N0YXJ0TWludXRlXG4gICAqL1xuICByZWFkb25seSBzdGFydE1pbnV0ZT86IG51bWJlcjtcblxuICAvKipcbiAgICogRGF5IG9mIHRoZSBtb250aCB3aGVuIHRoZSBzY2hlZHVsZWQgYXJjaGl2ZSBzdGFydHMuXG4gICAqXG4gICAqIEBzY2hlbWEgU2NoZWR1bGVWaWV3I0RheU9mTW9udGhcbiAgICovXG4gIHJlYWRvbmx5IGRheU9mTW9udGg/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERheSBvZiB0aGUgbW9udGggd2hlbiB0aGUgc2NoZWR1bGVkIGFyY2hpdmUgc3RhcnRzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlVmlldyNEYXlPZldlZWtcbiAgICovXG4gIHJlYWRvbmx5IGRheU9mV2Vlaz86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU2NoZWR1bGVWaWV3JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TY2hlZHVsZVZpZXcoXG4gIG9iajogU2NoZWR1bGVWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgVHlwZTogb2JqLnR5cGUsXG4gICAgRW5kSG91cjogb2JqLmVuZEhvdXIsXG4gICAgRW5kTWludXRlOiBvYmouZW5kTWludXRlLFxuICAgIFN0YXJ0SG91cjogb2JqLnN0YXJ0SG91cixcbiAgICBTdGFydE1pbnV0ZTogb2JqLnN0YXJ0TWludXRlLFxuICAgIERheU9mTW9udGg6IG9iai5kYXlPZk1vbnRoLFxuICAgIERheU9mV2Vlazogb2JqLmRheU9mV2VlayxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogTWVhbnMgYnkgd2hpY2ggTW9uZ29EQiBDbG91ZCBzZWxlY3RzIGRhdGEgdG8gYXJjaGl2ZS4gRGF0YSBjYW4gYmUgY2hvc2VuIHVzaW5nIHRoZSBhZ2Ugb2YgdGhlIGRhdGEgb3IgYSBNb25nb0RCIHF1ZXJ5LlxuICogKipEQVRFKiogc2VsZWN0cyBkb2N1bWVudHMgdG8gYXJjaGl2ZSBiYXNlZCBvbiBhIGRhdGUuXG4gKiAqKkNVU1RPTSoqIHNlbGVjdHMgZG9jdW1lbnRzIHRvIGFyY2hpdmUgYmFzZWQgb24gYSBjdXN0b20gSlNPTiBxdWVyeS4gTW9uZ29EQiBDbG91ZCBkb2Vzbid0IHN1cHBvcnQgKipDVVNUT00qKiB3aGVuIGBcImNvbGxlY3Rpb25UeXBlXCI6IFwiVElNRVNFUklFU1wiYC5cbiAqXG4gKiBAc2NoZW1hIENyaXRlcmlhVmlld1R5cGVcbiAqL1xuZXhwb3J0IGVudW0gQ3JpdGVyaWFWaWV3VHlwZSB7XG4gIC8qKiBEQVRFICovXG4gIERBVEUgPSBcIkRBVEVcIixcbiAgLyoqIENVU1RPTSAqL1xuICBDVVNUT00gPSBcIkNVU1RPTVwiLFxufVxuXG4vKipcbiAqIFN5bnRheCB1c2VkIHRvIHdyaXRlIHRoZSBkYXRlIGFmdGVyIHdoaWNoIGRhdGEgbW92ZXMgdG8gdGhlIG9ubGluZSBhcmNoaXZlLiBEYXRlIGNhbiBiZSBleHByZXNzZWQgYXMgSVNPIDg2MDEgb3IgRXBvY2ggdGltZXN0YW1wcy4gVGhlIEVwb2NoIHRpbWVzdGFtcCBjYW4gYmUgZXhwcmVzc2VkIGFzIG5hbm9zZWNvbmRzLCBtaWxsaXNlY29uZHMsIG9yIHNlY29uZHMuIFNldCB0aGlzIHBhcmFtZXRlciB3aGVuIFwiY3JpdGVyaWEudHlwZVwiIDogXCJEQVRFXCIuIFlvdSBtdXN0IHNldCBcImNyaXRlcmlhLnR5cGVcIiA6IFwiREFURVwiIGlmIFwiY29sbGVjdGlvblR5cGVcIjogXCJUSU1FU0VSSUVTXCIuXG4gKlxuICogQHNjaGVtYSBDcml0ZXJpYVZpZXdEYXRlRm9ybWF0XG4gKi9cbmV4cG9ydCBlbnVtIENyaXRlcmlhVmlld0RhdGVGb3JtYXQge1xuICAvKiogSVNPREFURSAqL1xuICBJU09EQVRFID0gXCJJU09EQVRFXCIsXG4gIC8qKiBFUE9DSF9TRUNPTkRTICovXG4gIEVQT0NIX1NFQ09ORFMgPSBcIkVQT0NIX1NFQ09ORFNcIixcbiAgLyoqIEVQT0NIX01JTExJUyAqL1xuICBFUE9DSF9NSUxMSVMgPSBcIkVQT0NIX01JTExJU1wiLFxuICAvKiogRVBPQ0hfTkFOT1NFQ09ORFMgKi9cbiAgRVBPQ0hfTkFOT1NFQ09ORFMgPSBcIkVQT0NIX05BTk9TRUNPTkRTXCIsXG59XG5cbi8qKlxuICogRGF0YSB0eXBlIG9mIHRoZSBwYXJhbWV0ZXIgdGhhdCB0aGF0IE1vbmdvREIgQ2xvdWQgdXNlcyB0byBwYXJ0aXRpb24gZGF0YS4gUGFydGl0aW9uIHBhcmFtZXRlcnMgb2YgdHlwZSBbVVVJRF0oaHR0cDovL2Jzb25zcGVjLm9yZy9zcGVjLmh0bWwpIG11c3QgYmUgb2YgYmluYXJ5IHN1YnR5cGUgNC4gTW9uZ29EQiBDbG91ZCBza2lwcyBwYXJ0aXRpb24gcGFyYW1ldGVycyBvZiB0eXBlIFVVSUQgd2l0aCBzdWJ0eXBlIDMuXG4gKlxuICogQHNjaGVtYSBQYXJ0aXRpb25GaWVsZFZpZXdGaWVsZFR5cGVcbiAqL1xuZXhwb3J0IGVudW0gUGFydGl0aW9uRmllbGRWaWV3RmllbGRUeXBlIHtcbiAgLyoqIGRhdGUgKi9cbiAgREFURSA9IFwiZGF0ZVwiLFxuICAvKiogaW50ICovXG4gIElOVCA9IFwiaW50XCIsXG4gIC8qKiBsb25nICovXG4gIExPTkcgPSBcImxvbmdcIixcbiAgLyoqIG9iamVjdElkICovXG4gIE9CSkVDVF9JRCA9IFwib2JqZWN0SWRcIixcbiAgLyoqIHN0cmluZyAqL1xuICBTVFJJTkcgPSBcInN0cmluZ1wiLFxuICAvKiogdXVpZCAqL1xuICBVVUlEID0gXCJ1dWlkXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBTY2hlZHVsZVZpZXdUeXBlXG4gKi9cbmV4cG9ydCBlbnVtIFNjaGVkdWxlVmlld1R5cGUge1xuICAvKiogREFJTFkgKi9cbiAgREFJTFkgPSBcIkRBSUxZXCIsXG4gIC8qKiBNT05USExZICovXG4gIE1PTlRITFkgPSBcIk1PTlRITFlcIixcbiAgLyoqIERFRkFVTFQgKi9cbiAgREVGQVVMVCA9IFwiREVGQVVMVFwiLFxuICAvKiogV0VFS0xZICovXG4gIFdFRUtMWSA9IFwiV0VFS0xZXCIsXG59XG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6Ok9ubGluZUFyY2hpdmVgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6Ok9ubGluZUFyY2hpdmVcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmbk9ubGluZUFyY2hpdmUgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6T25saW5lQXJjaGl2ZVwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuT25saW5lQXJjaGl2ZVByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpPbmxpbmVBcmNoaXZlLlN0YXRlYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJTdGF0ZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6T25saW5lQXJjaGl2ZS5Ub3RhbENvdW50YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJUb3RhbENvdW50OiBudW1iZXI7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpPbmxpbmVBcmNoaXZlLkFyY2hpdmVJZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQXJjaGl2ZUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6Ok9ubGluZUFyY2hpdmVgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuT25saW5lQXJjaGl2ZVByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuT25saW5lQXJjaGl2ZS5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0Nmbk9ubGluZUFyY2hpdmVQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRyU3RhdGUgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJTdGF0ZVwiKSk7XG4gICAgdGhpcy5hdHRyVG90YWxDb3VudCA9IGNkay5Ub2tlbi5hc051bWJlcih0aGlzLmdldEF0dChcIlRvdGFsQ291bnRcIikpO1xuICAgIHRoaXMuYXR0ckFyY2hpdmVJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkFyY2hpdmVJZFwiKSk7XG4gIH1cbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL29ubGluZS1hcmNoaXZlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQW9HbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsNEJBQTRCLENBQzFDLEdBQXNDO0lBRXRDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztRQUM1QixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsY0FBYyxFQUFFLEdBQUcsQ0FBQyxjQUFjO1FBQ2xDLFFBQVEsRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzNDLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtRQUNsQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FDOUMseUJBQXlCLENBQUMsQ0FBQyxDQUFDLENBQzdCO1FBQ0QsUUFBUSxFQUFFLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7S0FDNUMsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFD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LHdCQUFnQixLQUFoQix3QkFBZ0IsUUFTM0I7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsZ0JBQWlCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUF5Qm5EOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTRCO1FBRTVCLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGdCQUFnQixDQUFDLHNCQUFzQjtZQUM3QyxVQUFVLEVBQUUsNEJBQTRCLENBQUMsS0FBSyxDQUFFO1NBQ2pELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7O0FBL0NILDRDQWdEQzs7O0FBL0NDOztHQUVHO0FBQ29CLHVDQUFzQixHQUMzQywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucywgYWRkcywgZWRpdHMsIG9yIHJlbW92ZXMgYW4gb25saW5lIGFyY2hpdmUuXG4gKlxuICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY2x1c3RlciB0aGF0IGNvbnRhaW5zIHRoZSBjb2xsZWN0aW9uIGZyb20gd2hpY2ggeW91IHdhbnQgdG8gcmVtb3ZlIGFuIG9ubGluZSBhcmNoaXZlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNDbHVzdGVyTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgY2x1c3Rlck5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjb2xsZWN0aW9uIGZvciB3aGljaCB5b3UgY3JlYXRlZCB0aGUgb25saW5lIGFyY2hpdmUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI0NvbGxOYW1lXG4gICAqL1xuICByZWFkb25seSBjb2xsTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogQ2xhc3NpZmljYXRpb24gb2YgTW9uZ29EQiBkYXRhYmFzZSBjb2xsZWN0aW9uIHRoYXQgeW91IHdhbnQgdG8gcmV0dXJuLlxuICAgKlxuICAgKiBJZiB5b3Ugc2V0IHRoaXMgcGFyYW1ldGVyIHRvIGBUSU1FU0VSSUVTYCwgc2V0IGBcImNyaXRlcmlhLnR5cGVcIiA6IFwiZGF0ZVwiYCBhbmQgYFwiY3JpdGVyaWEuZGF0ZUZvcm1hdFwiIDogXCJJU09EQVRFXCJgLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNDb2xsZWN0aW9uVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvblR5cGU/OiBDZm5PbmxpbmVBcmNoaXZlUHJvcHNDb2xsZWN0aW9uVHlwZTtcblxuICAvKipcbiAgICogUnVsZXMgYnkgd2hpY2ggTW9uZ29EQiBNb25nb0RCIENsb3VkIGFyY2hpdmVzIGRhdGEuXG4gICAqXG4gICAqIFVzZSB0aGUgKipjcml0ZXJpYS50eXBlKiogZmllbGQgdG8gY2hvb3NlIGhvdyBNb25nb0RCIENsb3VkIHNlbGVjdHMgZGF0YSB0byBhcmNoaXZlLiBDaG9vc2UgZGF0YSB1c2luZyB0aGUgYWdlIG9mIHRoZSBkYXRhIG9yIGEgTW9uZ29EQiBxdWVyeS5cbiAgICogKipcImNyaXRlcmlhLnR5cGVcIjogXCJEQVRFXCIqKiBzZWxlY3RzIGRvY3VtZW50cyB0byBhcmNoaXZlIGJhc2VkIG9uIGEgZGF0ZS5cbiAgICogKipcImNyaXRlcmlhLnR5cGVcIjogXCJDVVNUT01cIioqIHNlbGVjdHMgZG9jdW1lbnRzIHRvIGFyY2hpdmUgYmFzZWQgb24gYSBjdXN0b20gSlNPTiBxdWVyeS4gTW9uZ29EQiBDbG91ZCBkb2Vzbid0IHN1cHBvcnQgKipcImNyaXRlcmlhLnR5cGVcIjogXCJDVVNUT01cIioqIHdoZW4gKipcImNvbGxlY3Rpb25UeXBlXCI6IFwiVElNRVNFUklFU1wiKiouXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI0NyaXRlcmlhXG4gICAqL1xuICByZWFkb25seSBjcml0ZXJpYTogQ3JpdGVyaWFWaWV3O1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCBvZiB0aGUgZGF0YWJhc2UgdGhhdCBjb250YWlucyB0aGUgY29sbGVjdGlvbiB0aGF0IGNvbnRhaW5zIHRoZSBvbmxpbmUgYXJjaGl2ZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjRGJOYW1lXG4gICAqL1xuICByZWFkb25seSBkYk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgcmVzcG9uc2UgcmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zICgqKnRvdGFsQ291bnQqKikgaW4gdGhlIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNJbmNsdWRlQ291bnRcbiAgICovXG4gIHJlYWRvbmx5IGluY2x1ZGVDb3VudD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBpdGVtcyB0aGF0IHRoZSByZXNwb25zZSByZXR1cm5zIHBlciBwYWdlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNJdGVtc1BlclBhZ2VcbiAgICovXG4gIHJlYWRvbmx5IGl0ZW1zUGVyUGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIHRoZSBwYWdlIHRoYXQgZGlzcGxheXMgdGhlIGN1cnJlbnQgc2V0IG9mIHRoZSB0b3RhbCBvYmplY3RzIHRoYXQgdGhlIHJlc3BvbnNlIHJldHVybnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT25saW5lQXJjaGl2ZVByb3BzI1BhZ2VOdW1cbiAgICovXG4gIHJlYWRvbmx5IHBhZ2VOdW0/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIExpc3QgdGhhdCBjb250YWlucyBkb2N1bWVudCBwYXJhbWV0ZXJzIHRvIHVzZSB0byBsb2dpY2FsbHkgZGl2aWRlIGRhdGEgd2l0aGluIGEgY29sbGVjdGlvbi4gUGFydGl0aW9ucyBwcm92aWRlIGEgY29hcnNlIGxldmVsIG9mIGZpbHRlcmluZyBvZiB0aGUgdW5kZXJseWluZyBjb2xsZWN0aW9uIGRhdGEuIFRvIGRpdmlkZSB5b3VyIGRhdGEsIHNwZWNpZnkgdXAgdG8gdHdvIHBhcmFtZXRlcnMgdGhhdCB5b3UgZnJlcXVlbnRseSBxdWVyeS4gQW55IHF1ZXJpZXMgdGhhdCBkb24ndCB1c2UgdGhlc2UgcGFyYW1ldGVycyByZXN1bHQgaW4gYSBmdWxsIGNvbGxlY3Rpb24gc2NhbiBvZiBhbGwgYXJjaGl2ZWQgZG9jdW1lbnRzLiBUaGlzIHRha2VzIG1vcmUgdGltZSBhbmQgaW5jcmVhc2UgeW91ciBjb3N0cy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHMjUGFydGl0aW9uRmllbGRzXG4gICAqL1xuICByZWFkb25seSBwYXJ0aXRpb25GaWVsZHM/OiBQYXJ0aXRpb25GaWVsZFZpZXdbXTtcblxuICAvKipcbiAgICogUmVndWxhciBmcmVxdWVuY3kgYW5kIGR1cmF0aW9uIHdoZW4gYXJjaGl2aW5nIHByb2Nlc3Mgb2NjdXJzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9ubGluZUFyY2hpdmVQcm9wcyNTY2hlZHVsZVxuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGU/OiBTY2hlZHVsZVZpZXc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0Nmbk9ubGluZUFyY2hpdmVQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuT25saW5lQXJjaGl2ZVByb3BzKFxuICBvYmo6IENmbk9ubGluZUFyY2hpdmVQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIENsdXN0ZXJOYW1lOiBvYmouY2x1c3Rlck5hbWUsXG4gICAgQ29sbE5hbWU6IG9iai5jb2xsTmFtZSxcbiAgICBDb2xsZWN0aW9uVHlwZTogb2JqLmNvbGxlY3Rpb25UeXBlLFxuICAgIENyaXRlcmlhOiB0b0pzb25fQ3JpdGVyaWFWaWV3KG9iai5jcml0ZXJpYSksXG4gICAgRGJOYW1lOiBvYmouZGJOYW1lLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBJbmNsdWRlQ291bnQ6IG9iai5pbmNsdWRlQ291bnQsXG4gICAgSXRlbXNQZXJQYWdlOiBvYmouaXRlbXNQZXJQYWdlLFxuICAgIFBhZ2VOdW06IG9iai5wYWdlTnVtLFxuICAgIFBhcnRpdGlvbkZpZWxkczogb2JqLnBhcnRpdGlvbkZpZWxkcz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX1BhcnRpdGlvbkZpZWxkVmlldyh5KVxuICAgICksXG4gICAgU2NoZWR1bGU6IHRvSnNvbl9TY2hlZHVsZVZpZXcob2JqLnNjaGVkdWxlKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQ2xhc3NpZmljYXRpb24gb2YgTW9uZ29EQiBkYXRhYmFzZSBjb2xsZWN0aW9uIHRoYXQgeW91IHdhbnQgdG8gcmV0dXJuLlxuICpcbiAqIElmIHlvdSBzZXQgdGhpcyBwYXJhbWV0ZXIgdG8gYFRJTUVTRVJJRVNgLCBzZXQgYFwiY3JpdGVyaWEudHlwZVwiIDogXCJkYXRlXCJgIGFuZCBgXCJjcml0ZXJpYS5kYXRlRm9ybWF0XCIgOiBcIklTT0RBVEVcImAuXG4gKlxuICogQHNjaGVtYSBDZm5PbmxpbmVBcmNoaXZlUHJvcHNDb2xsZWN0aW9uVHlwZVxuICovXG5leHBvcnQgZW51bSBDZm5PbmxpbmVBcmNoaXZlUHJvcHNDb2xsZWN0aW9uVHlwZSB7XG4gIC8qKiBTVEFOREFSRCAqL1xuICBTVEFOREFSRCA9IFwiU1RBTkRBUkRcIixcbiAgLyoqIFRJTUVTRVJJRVMgKi9cbiAgVElNRVNFUklFUyA9IFwiVElNRVNFUklFU1wiLFxufVxuXG4vKipcbiAqIEBzY2hlbWEgQ3JpdGVyaWFWaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ3JpdGVyaWFWaWV3IHtcbiAgLyoqXG4gICAqIE1lYW5zIGJ5IHdoaWNoIE1vbmdvREIgQ2xvdWQgc2VsZWN0cyBkYXRhIHRvIGFyY2hpdmUuIERhdGEgY2FuIGJlIGNob3NlbiB1c2luZyB0aGUgYWdlIG9mIHRoZSBkYXRhIG9yIGEgTW9uZ29EQiBxdWVyeS4gKipEQVRFKiogc2VsZWN0cyBkb2N1bWVudHMgdG8gYXJjaGl2ZSBiYXNlZCBvbiBhIGRhdGUuIChpZiBEQVRFIGlzIHNlbGVjdGVkLCB0aGUgUGFydGl0aW9uRmllbGRzLkZpZWxkTmFtZSBtdXN0IGJlIGNvbXBsZXRlZCB3aXRoIHRoZSBDcml0ZXJpYS5EYXRlRmllbGQgdmFsdWUpKipDVVNUT00qKiBzZWxlY3RzIGRvY3VtZW50cyB0byBhcmNoaXZlIGJhc2VkIG9uIGEgY3VzdG9tIEpTT04gcXVlcnkgKFdoZW4gc2VsZWN0aW5nIHRoaXMgb3B0aW9uLCB0aGUgUXVlcnkgcHJvcGVydHkgbXVzdCBiZSBpbnB1dHRlZCkuIE1vbmdvREIgQ2xvdWQgZG9lc24ndCBzdXBwb3J0ICoqQ1VTVE9NKiogd2hlbiBgY29sbGVjdGlvblR5cGU6IFRJTUVTRVJJRVNgLlxuICAgKlxuICAgKiBAc2NoZW1hIENyaXRlcmlhVmlldyNUeXBlXG4gICAqL1xuICByZWFkb25seSB0eXBlPzogQ3JpdGVyaWFWaWV3VHlwZTtcblxuICAvKipcbiAgICogSW5kZXhlZCBkYXRhYmFzZSBwYXJhbWV0ZXIgdGhhdCBzdG9yZXMgdGhlIGRhdGUgdGhhdCBkZXRlcm1pbmVzIHdoZW4gZGF0YSBtb3ZlcyB0byB0aGUgb25saW5lIGFyY2hpdmUuIE1vbmdvREIgQ2xvdWQgYXJjaGl2ZXMgdGhlIGRhdGEgd2hlbiB0aGUgY3VycmVudCBkYXRlIGV4Y2VlZHMgdGhlIGRhdGUgaW4gdGhpcyBkYXRhYmFzZSBwYXJhbWV0ZXIgcGx1cyB0aGUgbnVtYmVyIG9mIGRheXMgc3BlY2lmaWVkIHRocm91Z2ggdGhlIGV4cGlyZUFmdGVyRGF5cyBwYXJhbWV0ZXIuIFNldCB0aGlzIHBhcmFtZXRlciB3aGVuIHlvdSBzZXQgXCJjcml0ZXJpYS50eXBlXCIgOiBcIkRBVEVcIi5cbiAgICpcbiAgICogQHNjaGVtYSBDcml0ZXJpYVZpZXcjRGF0ZUZpZWxkXG4gICAqL1xuICByZWFkb25seSBkYXRlRmllbGQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFN5bnRheCB1c2VkIHRvIHdyaXRlIHRoZSBkYXRlIGFmdGVyIHdoaWNoIGRhdGEgbW92ZXMgdG8gdGhlIG9ubGluZSBhcmNoaXZlLiBEYXRlIGNhbiBiZSBleHByZXNzZWQgYXMgSVNPIDg2MDEgb3IgRXBvY2ggdGltZXN0YW1wcy4gVGhlIEVwb2NoIHRpbWVzdGFtcCBjYW4gYmUgZXhwcmVzc2VkIGFzIG5hbm9zZWNvbmRzLCBtaWxsaXNlY29uZHMsIG9yIHNlY29uZHMuIFNldCB0aGlzIHBhcmFtZXRlciB3aGVuIFwiY3JpdGVyaWEudHlwZVwiIDogXCJEQVRFXCIuIFlvdSBtdXN0IHNldCBcImNyaXRlcmlhLnR5cGVcIiA6IFwiREFURVwiIGlmIFwiY29sbGVjdGlvblR5cGVcIjogXCJUSU1FU0VSSUVTXCIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ3JpdGVyaWFWaWV3I0RhdGVGb3JtYXRcbiAgICovXG4gIHJlYWRvbmx5IGRhdGVGb3JtYXQ/OiBDcml0ZXJpYVZpZXdEYXRlRm9ybWF0O1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZGF5cyBhZnRlciB0aGUgdmFsdWUgaW4gdGhlIGNyaXRlcmlhLmRhdGVGaWVsZCB3aGVuIE1vbmdvREIgQ2xvdWQgYXJjaGl2ZXMgZGF0YSBpbiB0aGUgc3BlY2lmaWVkIGNsdXN0ZXIuIFNldCB0aGlzIHBhcmFtZXRlciB3aGVuIHlvdSBzZXQgXCJjcml0ZXJpYS50eXBlXCIgOiBcIkRBVEVcIi5cbiAgICpcbiAgICogQHNjaGVtYSBDcml0ZXJpYVZpZXcjRXhwaXJlQWZ0ZXJEYXlzXG4gICAqL1xuICByZWFkb25seSBleHBpcmVBZnRlckRheXM/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgZmluZCBxdWVyeSB0aGF0IHNlbGVjdHMgZG9jdW1lbnRzIHRvIGFyY2hpdmUuIFRoZSBzcGVjaWZpZWQgcXVlcnkgZm9sbG93cyB0aGUgc3ludGF4IG9mIHRoZSBkYi5jb2xsZWN0aW9uLmZpbmQocXVlcnkpIGNvbW1hbmQuIFRoaXMgcXVlcnkgY2FuJ3QgdXNlIHRoZSBlbXB0eSBkb2N1bWVudCAoe30pIHRvIHJldHVybiBhbGwgZG9jdW1lbnRzLiBTZXQgdGhpcyBwYXJhbWV0ZXIgd2hlbiBcImNyaXRlcmlhLnR5cGVcIiA6IFwiQ1VTVE9NXCIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ3JpdGVyaWFWaWV3I1F1ZXJ5XG4gICAqL1xuICByZWFkb25seSBxdWVyeT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ3JpdGVyaWFWaWV3JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9Dcml0ZXJpYVZpZXcoXG4gIG9iajogQ3JpdGVyaWFWaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgVHlwZTogb2JqLnR5cGUsXG4gICAgRGF0ZUZpZWxkOiBvYmouZGF0ZUZpZWxkLFxuICAgIERhdGVGb3JtYXQ6IG9iai5kYXRlRm9ybWF0LFxuICAgIEV4cGlyZUFmdGVyRGF5czogb2JqLmV4cGlyZUFmdGVyRGF5cyxcbiAgICBRdWVyeTogb2JqLnF1ZXJ5LFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFBhcnRpdGlvbkZpZWxkVmlld1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhcnRpdGlvbkZpZWxkVmlldyB7XG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIHBhcmFtZXRlciB0aGF0IE1vbmdvREIgQ2xvdWQgdXNlcyB0byBwYXJ0aXRpb24gZGF0YS4gVG8gc3BlY2lmeSBhIG5lc3RlZCBwYXJhbWV0ZXIsIHVzZSB0aGUgZG90IG5vdGF0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIFBhcnRpdGlvbkZpZWxkVmlldyNGaWVsZE5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGZpZWxkTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogU2VxdWVuY2UgaW4gd2hpY2ggTW9uZ29EQiBDbG91ZCBzbGljZXMgdGhlIGNvbGxlY3Rpb24gZGF0YSB0byBjcmVhdGUgcGFydGl0aW9ucy4gVGhlIHJlc291cmNlIGV4cHJlc3NlcyB0aGlzIHNlcXVlbmNlIHN0YXJ0aW5nIHdpdGggemVyby4gVGhlIHZhbHVlIG9mIHRoZSAqKmNyaXRlcmlhLmRhdGVGaWVsZCoqIHBhcmFtZXRlciBkZWZhdWx0cyBhcyB0aGUgZmlyc3QgaXRlbSBpbiB0aGUgcGFydGl0aW9uIHNlcXVlbmNlLlxuICAgKlxuICAgKiBAc2NoZW1hIFBhcnRpdGlvbkZpZWxkVmlldyNPcmRlclxuICAgKi9cbiAgcmVhZG9ubHkgb3JkZXI/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1BhcnRpdGlvbkZpZWxkVmlldycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fUGFydGl0aW9uRmllbGRWaWV3KFxuICBvYmo6IFBhcnRpdGlvbkZpZWxkVmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEZpZWxkTmFtZTogb2JqLmZpZWxkTmFtZSxcbiAgICBPcmRlcjogb2JqLm9yZGVyLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFNjaGVkdWxlVmlld1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlVmlldyB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlVmlldyNUeXBlXG4gICAqL1xuICByZWFkb25seSB0eXBlPzogU2NoZWR1bGVWaWV3VHlwZTtcblxuICAvKipcbiAgICogSG91ciBvZiB0aGUgZGF5IHdoZW4gdGhlIHNjaGVkdWxlZCB3aW5kb3cgdG8gcnVuIG9uZSBvbmxpbmUgYXJjaGl2ZSBlbmRzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlVmlldyNFbmRIb3VyXG4gICAqL1xuICByZWFkb25seSBlbmRIb3VyPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBNaW51dGUgb2YgdGhlIGhvdXIgd2hlbiB0aGUgc2NoZWR1bGVkIHdpbmRvdyB0byBydW4gb25lIG9ubGluZSBhcmNoaXZlIGVuZHMuXG4gICAqXG4gICAqIEBzY2hlbWEgU2NoZWR1bGVWaWV3I0VuZE1pbnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5kTWludXRlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBIb3VyIG9mIHRoZSBkYXkgd2hlbiB0aGUgd2hlbiB0aGUgc2NoZWR1bGVkIHdpbmRvdyB0byBydW4gb25lIG9ubGluZSBhcmNoaXZlIHN0YXJ0cy5cbiAgICpcbiAgICogQHNjaGVtYSBTY2hlZHVsZVZpZXcjU3RhcnRIb3VyXG4gICAqL1xuICByZWFkb25seSBzdGFydEhvdXI/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE1pbnV0ZSBvZiB0aGUgaG91ciB3aGVuIHRoZSBzY2hlZHVsZWQgd2luZG93IHRvIHJ1biBvbmUgb25saW5lIGFyY2hpdmUgc3RhcnRzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlVmlldyNTdGFydE1pbnV0ZVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhcnRNaW51dGU/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIERheSBvZiB0aGUgbW9udGggd2hlbiB0aGUgc2NoZWR1bGVkIGFyY2hpdmUgc3RhcnRzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlVmlldyNEYXlPZk1vbnRoXG4gICAqL1xuICByZWFkb25seSBkYXlPZk1vbnRoPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBEYXkgb2YgdGhlIG1vbnRoIHdoZW4gdGhlIHNjaGVkdWxlZCBhcmNoaXZlIHN0YXJ0cy5cbiAgICpcbiAgICogQHNjaGVtYSBTY2hlZHVsZVZpZXcjRGF5T2ZXZWVrXG4gICAqL1xuICByZWFkb25seSBkYXlPZldlZWs/OiBudW1iZXI7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1NjaGVkdWxlVmlldycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU2NoZWR1bGVWaWV3KFxuICBvYmo6IFNjaGVkdWxlVmlldyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFR5cGU6IG9iai50eXBlLFxuICAgIEVuZEhvdXI6IG9iai5lbmRIb3VyLFxuICAgIEVuZE1pbnV0ZTogb2JqLmVuZE1pbnV0ZSxcbiAgICBTdGFydEhvdXI6IG9iai5zdGFydEhvdXIsXG4gICAgU3RhcnRNaW51dGU6IG9iai5zdGFydE1pbnV0ZSxcbiAgICBEYXlPZk1vbnRoOiBvYmouZGF5T2ZNb250aCxcbiAgICBEYXlPZldlZWs6IG9iai5kYXlPZldlZWssXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIE1lYW5zIGJ5IHdoaWNoIE1vbmdvREIgQ2xvdWQgc2VsZWN0cyBkYXRhIHRvIGFyY2hpdmUuIERhdGEgY2FuIGJlIGNob3NlbiB1c2luZyB0aGUgYWdlIG9mIHRoZSBkYXRhIG9yIGEgTW9uZ29EQiBxdWVyeS4gKipEQVRFKiogc2VsZWN0cyBkb2N1bWVudHMgdG8gYXJjaGl2ZSBiYXNlZCBvbiBhIGRhdGUuIChpZiBEQVRFIGlzIHNlbGVjdGVkLCB0aGUgUGFydGl0aW9uRmllbGRzLkZpZWxkTmFtZSBtdXN0IGJlIGNvbXBsZXRlZCB3aXRoIHRoZSBDcml0ZXJpYS5EYXRlRmllbGQgdmFsdWUpKipDVVNUT00qKiBzZWxlY3RzIGRvY3VtZW50cyB0byBhcmNoaXZlIGJhc2VkIG9uIGEgY3VzdG9tIEpTT04gcXVlcnkgKFdoZW4gc2VsZWN0aW5nIHRoaXMgb3B0aW9uLCB0aGUgUXVlcnkgcHJvcGVydHkgbXVzdCBiZSBpbnB1dHRlZCkuIE1vbmdvREIgQ2xvdWQgZG9lc24ndCBzdXBwb3J0ICoqQ1VTVE9NKiogd2hlbiBgY29sbGVjdGlvblR5cGU6IFRJTUVTRVJJRVNgLlxuICpcbiAqIEBzY2hlbWEgQ3JpdGVyaWFWaWV3VHlwZVxuICovXG5leHBvcnQgZW51bSBDcml0ZXJpYVZpZXdUeXBlIHtcbiAgLyoqIERBVEUgKi9cbiAgREFURSA9IFwiREFURVwiLFxuICAvKiogQ1VTVE9NICovXG4gIENVU1RPTSA9IFwiQ1VTVE9NXCIsXG59XG5cbi8qKlxuICogU3ludGF4IHVzZWQgdG8gd3JpdGUgdGhlIGRhdGUgYWZ0ZXIgd2hpY2ggZGF0YSBtb3ZlcyB0byB0aGUgb25saW5lIGFyY2hpdmUuIERhdGUgY2FuIGJlIGV4cHJlc3NlZCBhcyBJU08gODYwMSBvciBFcG9jaCB0aW1lc3RhbXBzLiBUaGUgRXBvY2ggdGltZXN0YW1wIGNhbiBiZSBleHByZXNzZWQgYXMgbmFub3NlY29uZHMsIG1pbGxpc2Vjb25kcywgb3Igc2Vjb25kcy4gU2V0IHRoaXMgcGFyYW1ldGVyIHdoZW4gXCJjcml0ZXJpYS50eXBlXCIgOiBcIkRBVEVcIi4gWW91IG11c3Qgc2V0IFwiY3JpdGVyaWEudHlwZVwiIDogXCJEQVRFXCIgaWYgXCJjb2xsZWN0aW9uVHlwZVwiOiBcIlRJTUVTRVJJRVNcIi5cbiAqXG4gKiBAc2NoZW1hIENyaXRlcmlhVmlld0RhdGVGb3JtYXRcbiAqL1xuZXhwb3J0IGVudW0gQ3JpdGVyaWFWaWV3RGF0ZUZvcm1hdCB7XG4gIC8qKiBJU09EQVRFICovXG4gIElTT0RBVEUgPSBcIklTT0RBVEVcIixcbiAgLyoqIEVQT0NIX1NFQ09ORFMgKi9cbiAgRVBPQ0hfU0VDT05EUyA9IFwiRVBPQ0hfU0VDT05EU1wiLFxuICAvKiogRVBPQ0hfTUlMTElTICovXG4gIEVQT0NIX01JTExJUyA9IFwiRVBPQ0hfTUlMTElTXCIsXG4gIC8qKiBFUE9DSF9OQU5PU0VDT05EUyAqL1xuICBFUE9DSF9OQU5PU0VDT05EUyA9IFwiRVBPQ0hfTkFOT1NFQ09ORFNcIixcbn1cblxuLyoqXG4gKiBAc2NoZW1hIFNjaGVkdWxlVmlld1R5cGVcbiAqL1xuZXhwb3J0IGVudW0gU2NoZWR1bGVWaWV3VHlwZSB7XG4gIC8qKiBEQUlMWSAqL1xuICBEQUlMWSA9IFwiREFJTFlcIixcbiAgLyoqIE1PTlRITFkgKi9cbiAgTU9OVEhMWSA9IFwiTU9OVEhMWVwiLFxuICAvKiogREVGQVVMVCAqL1xuICBERUZBVUxUID0gXCJERUZBVUxUXCIsXG4gIC8qKiBXRUVLTFkgKi9cbiAgV0VFS0xZID0gXCJXRUVLTFlcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6T25saW5lQXJjaGl2ZWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6T25saW5lQXJjaGl2ZVxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuT25saW5lQXJjaGl2ZSBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpPbmxpbmVBcmNoaXZlXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5PbmxpbmVBcmNoaXZlUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9ubGluZUFyY2hpdmUuU3RhdGVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clN0YXRlOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpPbmxpbmVBcmNoaXZlLlRvdGFsQ291bnRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clRvdGFsQ291bnQ6IG51bWJlcjtcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9ubGluZUFyY2hpdmUuQXJjaGl2ZUlkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJBcmNoaXZlSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6T25saW5lQXJjaGl2ZWAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5PbmxpbmVBcmNoaXZlUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5PbmxpbmVBcmNoaXZlLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuT25saW5lQXJjaGl2ZVByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJTdGF0ZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIlN0YXRlXCIpKTtcbiAgICB0aGlzLmF0dHJUb3RhbENvdW50ID0gY2RrLlRva2VuLmFzTnVtYmVyKHRoaXMuZ2V0QXR0KFwiVG90YWxDb3VudFwiKSk7XG4gICAgdGhpcy5hdHRyQXJjaGl2ZUlkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiQXJjaGl2ZUlkXCIpKTtcbiAgfVxufVxuIl19

@@ -10,3 +10,3 @@ import * as cdk from "aws-cdk-lib";

/**
* Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup](../../../examples/profile-secret.yaml).
*

@@ -13,0 +13,0 @@ * @schema CfnOrgInvitationProps#Profile

@@ -90,3 +90,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnOrgInvitation[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOrgInvitation", version: "3.7.2" };
CfnOrgInvitation[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOrgInvitation", version: "3.8.0" };
/**

@@ -96,2 +96,2 @@ * The CloudFormation resource type name for this resource class.

CfnOrgInvitation.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::OrgInvitation";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL29yZy1pbnZpdGF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQXVGbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsNEJBQTRCLENBQzFDLEdBQXNDO0lBRXRDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9CLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25DLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7S0FDdkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBeEJELG9FQXdCQztBQUNELHdDQUF3QztBQUV4Qzs7R0FFRztBQUNILElBQVksMEJBdUJYO0FBdkJELFdBQVksMEJBQTBCO0lBQ3BDLGdCQUFnQjtJQUNoQixxREFBdUIsQ0FBQTtJQUN2QixpQkFBaUI7SUFDakIsdURBQXlCLENBQUE7SUFDekIsd0JBQXdCO0lBQ3hCLHFFQUF1QyxDQUFBO0lBQ3ZDLHdCQUF3QjtJQUN4QixxRUFBdUMsQ0FBQTtJQUN2QyxvQkFBb0I7SUFDcEIsNkRBQStCLENBQUE7SUFDL0IsNEJBQTRCO0lBQzVCLDZFQUErQyxDQUFBO0lBQy9DLDhCQUE4QjtJQUM5QixpRkFBbUQsQ0FBQTtJQUNuRCxrQ0FBa0M7SUFDbEMseUZBQTJELENBQUE7SUFDM0QsbUNBQW1DO0lBQ25DLDJGQUE2RCxDQUFBO0lBQzdELGtCQUFrQjtJQUNsQix5REFBMkIsQ0FBQTtJQUMzQixzQkFBc0I7SUFDdEIsaUVBQW1DLENBQUE7QUFDckMsQ0FBQyxFQXZCVywwQkFBMEIsR0FBMUIsa0NBQTBCLEtBQTFCLGtDQUEwQixRQXVCckM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsZ0JBQWlCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUE2Qm5EOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTRCO1FBRTVCLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGdCQUFnQixDQUFDLHNCQUFzQjtZQUM3QyxVQUFVLEVBQUUsNEJBQTRCLENBQUMsS0FBSyxDQUFFO1NBQ2pELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUMvQixDQUFDO0lBQ0osQ0FBQzs7QUF0REgsNENBdURDOzs7QUF0REM7O0dBRUc7QUFDb0IsdUNBQXNCLEdBQzNDLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBhbmQgZWRpdHMgb3JnYW5pemF0aW9uYWwgdW5pdHMgaW4gTW9uZ29EQiBDbG91ZC5cbiAqXG4gKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbk9yZ0ludml0YXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU6IHN0cmluZztcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSByZXNwb25zZSByZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMgKCoqdG90YWxDb3VudCoqKSBpbiB0aGUgcmVzcG9uc2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI0luY2x1ZGVDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW5jbHVkZUNvdW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIGludml0YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI0ludml0YXRpb25JZFxuICAgKi9cbiAgcmVhZG9ubHkgaW52aXRhdGlvbklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucyBwZXIgcGFnZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjSXRlbXNQZXJQYWdlXG4gICAqL1xuICByZWFkb25seSBpdGVtc1BlclBhZ2U/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBvcmdhbml6YXRpb24gdGhhdCBjb250YWlucyB5b3VyIHByb2plY3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wcyNPcmdJZFxuICAgKi9cbiAgcmVhZG9ubHkgb3JnSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGlzIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjT3JnTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgb3JnTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogTnVtYmVyIG9mIHRoZSBwYWdlIHRoYXQgZGlzcGxheXMgdGhlIGN1cnJlbnQgc2V0IG9mIHRoZSB0b3RhbCBvYmplY3RzIHRoYXQgdGhlIHJlc3BvbnNlIHJldHVybnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI1BhZ2VOdW1cbiAgICovXG4gIHJlYWRvbmx5IHBhZ2VOdW0/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE9uZSBvciBtb3JlIG9yZ2FuaXphdGlvbiBvciBwcm9qZWN0IGxldmVsIHJvbGVzIHRvIGFzc2lnbiB0byB0aGUgTW9uZ29EQiBDbG91ZCB1c2VyLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wcyNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM/OiBDZm5PcmdJbnZpdGF0aW9uUHJvcHNSb2xlc1tdO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmdzIHRoYXQgaWRlbnRpZmllcyBlYWNoIHRlYW0uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI1RlYW1JZHNcbiAgICovXG4gIHJlYWRvbmx5IHRlYW1JZHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGRvY3VtZW50cyByZXR1cm5lZCBpbiB0aGlzIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wcyNUb3RhbENvdW50XG4gICAqL1xuICByZWFkb25seSB0b3RhbENvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBFbWFpbCBhZGRyZXNzIG9mIHRoZSBNb25nb0RCIENsb3VkIHVzZXIgaW52aXRlZCB0byBqb2luIHRoZSBvcmdhbml6YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI1VzZXJuYW1lXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuT3JnSW52aXRhdGlvblByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5PcmdJbnZpdGF0aW9uUHJvcHMoXG4gIG9iajogQ2ZuT3JnSW52aXRhdGlvblByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgSW5jbHVkZUNvdW50OiBvYmouaW5jbHVkZUNvdW50LFxuICAgIEludml0YXRpb25JZDogb2JqLmludml0YXRpb25JZCxcbiAgICBJdGVtc1BlclBhZ2U6IG9iai5pdGVtc1BlclBhZ2UsXG4gICAgT3JnSWQ6IG9iai5vcmdJZCxcbiAgICBPcmdOYW1lOiBvYmoub3JnTmFtZSxcbiAgICBQYWdlTnVtOiBvYmoucGFnZU51bSxcbiAgICBSb2xlczogb2JqLnJvbGVzPy5tYXAoKHkpID0+IHkpLFxuICAgIFRlYW1JZHM6IG9iai50ZWFtSWRzPy5tYXAoKHkpID0+IHkpLFxuICAgIFRvdGFsQ291bnQ6IG9iai50b3RhbENvdW50LFxuICAgIFVzZXJuYW1lOiBvYmoudXNlcm5hbWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzUm9sZXNcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuT3JnSW52aXRhdGlvblByb3BzUm9sZXMge1xuICAvKiogT1JHX09XTkVSICovXG4gIE9SR19PV05FUiA9IFwiT1JHX09XTkVSXCIsXG4gIC8qKiBPUkdfTUVNQkVSICovXG4gIE9SR19NRU1CRVIgPSBcIk9SR19NRU1CRVJcIixcbiAgLyoqIE9SR19HUk9VUF9DUkVBVE9SICovXG4gIE9SR19HUk9VUF9DUkVBVE9SID0gXCJPUkdfR1JPVVBfQ1JFQVRPUlwiLFxuICAvKiogT1JHX0JJTExJTkdfQURNSU4gKi9cbiAgT1JHX0JJTExJTkdfQURNSU4gPSBcIk9SR19CSUxMSU5HX0FETUlOXCIsXG4gIC8qKiBPUkdfUkVBRF9PTkxZICovXG4gIE9SR19SRUFEX09OTFkgPSBcIk9SR19SRUFEX09OTFlcIixcbiAgLyoqIEdST1VQX0NMVVNURVJfTUFOQUdFUiAqL1xuICBHUk9VUF9DTFVTVEVSX01BTkFHRVIgPSBcIkdST1VQX0NMVVNURVJfTUFOQUdFUlwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfQURNSU4gKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfQURNSU4gPSBcIkdST1VQX0RBVEFfQUNDRVNTX0FETUlOXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFkgKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEUgKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURSA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURVwiLFxuICAvKiogR1JPVVBfT1dORVIgKi9cbiAgR1JPVVBfT1dORVIgPSBcIkdST1VQX09XTkVSXCIsXG4gIC8qKiBHUk9VUF9SRUFEX09OTFkgKi9cbiAgR1JPVVBfUkVBRF9PTkxZID0gXCJHUk9VUF9SRUFEX09OTFlcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6T3JnSW52aXRhdGlvbmBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6T3JnSW52aXRhdGlvblxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuT3JnSW52aXRhdGlvbiBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpPcmdJbnZpdGF0aW9uXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5PcmdJbnZpdGF0aW9uUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9yZ0ludml0YXRpb24uRXhwaXJlc0F0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJFeHBpcmVzQXQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9yZ0ludml0YXRpb24uSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpPcmdJbnZpdGF0aW9uLkNyZWF0ZWRBdGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQ3JlYXRlZEF0OiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpPcmdJbnZpdGF0aW9uLkludml0ZXJVc2VybmFtZWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySW52aXRlclVzZXJuYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6Ok9yZ0ludml0YXRpb25gLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuT3JnSW52aXRhdGlvblByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuT3JnSW52aXRhdGlvbi5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0Nmbk9yZ0ludml0YXRpb25Qcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRyRXhwaXJlc0F0ID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiRXhwaXJlc0F0XCIpKTtcbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgICB0aGlzLmF0dHJDcmVhdGVkQXQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJDcmVhdGVkQXRcIikpO1xuICAgIHRoaXMuYXR0ckludml0ZXJVc2VybmFtZSA9IGNkay5Ub2tlbi5hc1N0cmluZyhcbiAgICAgIHRoaXMuZ2V0QXR0KFwiSW52aXRlclVzZXJuYW1lXCIpXG4gICAgKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL29yZy1pbnZpdGF0aW9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQXVGbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsNEJBQTRCLENBQzFDLEdBQXNDO0lBRXRDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQy9CLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ25DLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7S0FDdkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBeEJELG9FQXdCQztBQUNELHdDQUF3QztBQUV4Qzs7R0FFRztBQUNILElBQVksMEJBdUJYO0FBdkJELFdBQVksMEJBQTBCO0lBQ3BDLGdCQUFnQjtJQUNoQixxREFBdUIsQ0FBQTtJQUN2QixpQkFBaUI7SUFDakIsdURBQXlCLENBQUE7SUFDekIsd0JBQXdCO0lBQ3hCLHFFQUF1QyxDQUFBO0lBQ3ZDLHdCQUF3QjtJQUN4QixxRUFBdUMsQ0FBQTtJQUN2QyxvQkFBb0I7SUFDcEIsNkRBQStCLENBQUE7SUFDL0IsNEJBQTRCO0lBQzVCLDZFQUErQyxDQUFBO0lBQy9DLDhCQUE4QjtJQUM5QixpRkFBbUQsQ0FBQTtJQUNuRCxrQ0FBa0M7SUFDbEMseUZBQTJELENBQUE7SUFDM0QsbUNBQW1DO0lBQ25DLDJGQUE2RCxDQUFBO0lBQzdELGtCQUFrQjtJQUNsQix5REFBMkIsQ0FBQTtJQUMzQixzQkFBc0I7SUFDdEIsaUVBQW1DLENBQUE7QUFDckMsQ0FBQyxFQXZCVywwQkFBMEIsR0FBMUIsa0NBQTBCLEtBQTFCLGtDQUEwQixRQXVCckM7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsZ0JBQWlCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUE2Qm5EOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTRCO1FBRTVCLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGdCQUFnQixDQUFDLHNCQUFzQjtZQUM3QyxVQUFVLEVBQUUsNEJBQTRCLENBQUMsS0FBSyxDQUFFO1NBQ2pELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUMvQixDQUFDO0lBQ0osQ0FBQzs7QUF0REgsNENBdURDOzs7QUF0REM7O0dBRUc7QUFDb0IsdUNBQXNCLEdBQzNDLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBhbmQgZWRpdHMgb3JnYW5pemF0aW9uYWwgdW5pdHMgaW4gTW9uZ29EQiBDbG91ZC5cbiAqXG4gKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmbk9yZ0ludml0YXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIHJldHVybnMgdGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyAoKip0b3RhbENvdW50KiopIGluIHRoZSByZXNwb25zZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjSW5jbHVkZUNvdW50XG4gICAqL1xuICByZWFkb25seSBpbmNsdWRlQ291bnQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgaW52aXRhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjSW52aXRhdGlvbklkXG4gICAqL1xuICByZWFkb25seSBpbnZpdGF0aW9uSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBpdGVtcyB0aGF0IHRoZSByZXNwb25zZSByZXR1cm5zIHBlciBwYWdlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wcyNJdGVtc1BlclBhZ2VcbiAgICovXG4gIHJlYWRvbmx5IGl0ZW1zUGVyUGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIG9yZ2FuaXphdGlvbiB0aGF0IGNvbnRhaW5zIHlvdXIgcHJvamVjdHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI09yZ0lkXG4gICAqL1xuICByZWFkb25seSBvcmdJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoaXMgb3JnYW5pemF0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIENmbk9yZ0ludml0YXRpb25Qcm9wcyNPcmdOYW1lXG4gICAqL1xuICByZWFkb25seSBvcmdOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGhlIHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgY3VycmVudCBzZXQgb2YgdGhlIHRvdGFsIG9iamVjdHMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjUGFnZU51bVxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZU51bT86IG51bWJlcjtcblxuICAvKipcbiAgICogT25lIG9yIG1vcmUgb3JnYW5pemF0aW9uIG9yIHByb2plY3QgbGV2ZWwgcm9sZXMgdG8gYXNzaWduIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI1JvbGVzXG4gICAqL1xuICByZWFkb25seSByb2xlcz86IENmbk9yZ0ludml0YXRpb25Qcm9wc1JvbGVzW107XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgdW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZ3MgdGhhdCBpZGVudGlmaWVzIGVhY2ggdGVhbS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjVGVhbUlkc1xuICAgKi9cbiAgcmVhZG9ubHkgdGVhbUlkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgZG9jdW1lbnRzIHJldHVybmVkIGluIHRoaXMgcmVzcG9uc2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuT3JnSW52aXRhdGlvblByb3BzI1RvdGFsQ291bnRcbiAgICovXG4gIHJlYWRvbmx5IHRvdGFsQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEVtYWlsIGFkZHJlc3Mgb2YgdGhlIE1vbmdvREIgQ2xvdWQgdXNlciBpbnZpdGVkIHRvIGpvaW4gdGhlIG9yZ2FuaXphdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHMjVXNlcm5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHVzZXJuYW1lPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5PcmdJbnZpdGF0aW9uUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0Nmbk9yZ0ludml0YXRpb25Qcm9wcyhcbiAgb2JqOiBDZm5PcmdJbnZpdGF0aW9uUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBJbmNsdWRlQ291bnQ6IG9iai5pbmNsdWRlQ291bnQsXG4gICAgSW52aXRhdGlvbklkOiBvYmouaW52aXRhdGlvbklkLFxuICAgIEl0ZW1zUGVyUGFnZTogb2JqLml0ZW1zUGVyUGFnZSxcbiAgICBPcmdJZDogb2JqLm9yZ0lkLFxuICAgIE9yZ05hbWU6IG9iai5vcmdOYW1lLFxuICAgIFBhZ2VOdW06IG9iai5wYWdlTnVtLFxuICAgIFJvbGVzOiBvYmoucm9sZXM/Lm1hcCgoeSkgPT4geSksXG4gICAgVGVhbUlkczogb2JqLnRlYW1JZHM/Lm1hcCgoeSkgPT4geSksXG4gICAgVG90YWxDb3VudDogb2JqLnRvdGFsQ291bnQsXG4gICAgVXNlcm5hbWU6IG9iai51c2VybmFtZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBDZm5PcmdJbnZpdGF0aW9uUHJvcHNSb2xlc1xuICovXG5leHBvcnQgZW51bSBDZm5PcmdJbnZpdGF0aW9uUHJvcHNSb2xlcyB7XG4gIC8qKiBPUkdfT1dORVIgKi9cbiAgT1JHX09XTkVSID0gXCJPUkdfT1dORVJcIixcbiAgLyoqIE9SR19NRU1CRVIgKi9cbiAgT1JHX01FTUJFUiA9IFwiT1JHX01FTUJFUlwiLFxuICAvKiogT1JHX0dST1VQX0NSRUFUT1IgKi9cbiAgT1JHX0dST1VQX0NSRUFUT1IgPSBcIk9SR19HUk9VUF9DUkVBVE9SXCIsXG4gIC8qKiBPUkdfQklMTElOR19BRE1JTiAqL1xuICBPUkdfQklMTElOR19BRE1JTiA9IFwiT1JHX0JJTExJTkdfQURNSU5cIixcbiAgLyoqIE9SR19SRUFEX09OTFkgKi9cbiAgT1JHX1JFQURfT05MWSA9IFwiT1JHX1JFQURfT05MWVwiLFxuICAvKiogR1JPVVBfQ0xVU1RFUl9NQU5BR0VSICovXG4gIEdST1VQX0NMVVNURVJfTUFOQUdFUiA9IFwiR1JPVVBfQ0xVU1RFUl9NQU5BR0VSXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTiAqL1xuICBHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTiA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfQURNSU5cIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWSAqL1xuICBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFkgPSBcIkdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWVwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURSAqL1xuICBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFXCIsXG4gIC8qKiBHUk9VUF9PV05FUiAqL1xuICBHUk9VUF9PV05FUiA9IFwiR1JPVVBfT1dORVJcIixcbiAgLyoqIEdST1VQX1JFQURfT05MWSAqL1xuICBHUk9VUF9SRUFEX09OTFkgPSBcIkdST1VQX1JFQURfT05MWVwiLFxufVxuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpPcmdJbnZpdGF0aW9uYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpPcmdJbnZpdGF0aW9uXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5PcmdJbnZpdGF0aW9uIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6Ok9yZ0ludml0YXRpb25cIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmbk9yZ0ludml0YXRpb25Qcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6T3JnSW52aXRhdGlvbi5FeHBpcmVzQXRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckV4cGlyZXNBdDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6T3JnSW52aXRhdGlvbi5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9yZ0ludml0YXRpb24uQ3JlYXRlZEF0YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJDcmVhdGVkQXQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6Ok9yZ0ludml0YXRpb24uSW52aXRlclVzZXJuYW1lYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnZpdGVyVXNlcm5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6T3JnSW52aXRhdGlvbmAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5PcmdJbnZpdGF0aW9uUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5PcmdJbnZpdGF0aW9uLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuT3JnSW52aXRhdGlvblByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJFeHBpcmVzQXQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJFeHBpcmVzQXRcIikpO1xuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICAgIHRoaXMuYXR0ckNyZWF0ZWRBdCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkNyZWF0ZWRBdFwiKSk7XG4gICAgdGhpcy5hdHRySW52aXRlclVzZXJuYW1lID0gY2RrLlRva2VuLmFzU3RyaW5nKFxuICAgICAgdGhpcy5nZXRBdHQoXCJJbnZpdGVyVXNlcm5hbWVcIilcbiAgICApO1xuICB9XG59XG4iXX0=

@@ -74,3 +74,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnOrganization[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOrganization", version: "3.7.2" };
CfnOrganization[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnOrganization", version: "3.8.0" };
/**

@@ -77,0 +77,0 @@ * The CloudFormation resource type name for this resource class.

@@ -53,3 +53,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnPrivateEndpointAdl[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpointAdl", version: "3.7.2" };
CfnPrivateEndpointAdl[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpointAdl", version: "3.8.0" };
/**

@@ -56,0 +56,0 @@ * The CloudFormation resource type name for this resource class.

@@ -10,3 +10,3 @@ import * as cdk from "aws-cdk-lib";

/**
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup (../../../examples/profile-secret.yaml)
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup](../../../examples/profile-secret.yaml)
*

@@ -13,0 +13,0 @@ * @schema CfnPrivateEndpointAwsProps#Profile

@@ -54,3 +54,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnPrivateEndpointAws[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpointAws", version: "3.7.2" };
CfnPrivateEndpointAws[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpointAws", version: "3.8.0" };
/**

@@ -60,2 +60,2 @@ * The CloudFormation resource type name for this resource class.

CfnPrivateEndpointAws.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::PrivateEndpointAWS";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQtYXdzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTJEbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsaUNBQWlDLENBQy9DLEdBQTJDO0lBRTNDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixpQkFBaUIsRUFBRSxHQUFHLENBQUMsaUJBQWlCO1FBQ3hDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNWLHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7UUFDdEQsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQjtRQUN0QyxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7S0FDL0IsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBcEJELDhFQW9CQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEscUJBQXNCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFZeEQ7Ozs7OztPQU1HO0lBQ0gsWUFDRSxLQUEyQixFQUMzQixFQUFVLEVBQ1YsS0FBaUM7UUFFakMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUscUJBQXFCLENBQUMsc0JBQXNCO1lBQ2xELFVBQVUsRUFBRSxpQ0FBaUMsQ0FBQyxLQUFLLENBQUU7U0FDdEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7QUE5Qkgsc0RBK0JDOzs7QUE5QkM7O0dBRUc7QUFDb0IsNENBQXNCLEdBQzNDLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBDcmVhdGVzIG9uZSBwcml2YXRlIGVuZHBvaW50IGZvciB0aGUgc3BlY2lmaWVkIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIuIEF0IHRoaXMgY3VycmVudCB2ZXJzaW9uIG9ubHkgQVdTIGlzIHN1cHBvcnRlZFxuICpcbiAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwICguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKVxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcHJpdmF0ZSBlbmRwb2ludCBzZXJ2aWNlIGZvciB3aGljaCB5b3Ugd2FudCB0byBjcmVhdGUgYSBwcml2YXRlIGVuZHBvaW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzI0VuZHBvaW50U2VydmljZUlkXG4gICAqL1xuICByZWFkb25seSBlbmRwb2ludFNlcnZpY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcHJpdmF0ZSBlbmRwb2ludC4gZm9yIEFXUyBpcyB0aGUgVlBDIGVuZHBvaW50IElELCBleGFtcGxlOiB2cGNlLXh4eHh4eHh4XG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMjSWRcbiAgICovXG4gIHJlYWRvbmx5IGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0aGlzIHByb3BlciBpcyBzZXQgdG8gVFJVRSwgdGhlIGNsb3VkIGZvcm1hdGlvbiByZXNvdXJjZSB3aWxsIHJldHVybiBzdWNjZXNzIE9ubHkgaWYgdGhlIHByaXZhdGUgY29ubmVjdGlvbiBpcyBTdWNjZWVkZWRcbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyNFbmZvcmNlQ29ubmVjdGlvblN1Y2Nlc3NcbiAgICovXG4gIHJlYWRvbmx5IGVuZm9yY2VDb25uZWN0aW9uU3VjY2Vzcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFN0YXRlIG9mIHRoZSBBbWF6b24gV2ViIFNlcnZpY2UgUHJpdmF0ZUxpbmsgY29ubmVjdGlvbiB3aGVuIE1vbmdvREIgQ2xvdWQgcmVjZWl2ZWQgdGhpcyByZXF1ZXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzI0Nvbm5lY3Rpb25TdGF0dXNcbiAgICovXG4gIHJlYWRvbmx5IGNvbm5lY3Rpb25TdGF0dXM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVycm9yIG1lc3NhZ2UgcmV0dXJuZWQgd2hlbiByZXF1ZXN0aW5nIHByaXZhdGUgY29ubmVjdGlvbiByZXNvdXJjZS4gVGhlIHJlc291cmNlIHJldHVybnMgbnVsbCBpZiB0aGUgcmVxdWVzdCBzdWNjZWVkZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMjRXJyb3JNZXNzYWdlXG4gICAqL1xuICByZWFkb25seSBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyhcbiAgb2JqOiBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBFbmRwb2ludFNlcnZpY2VJZDogb2JqLmVuZHBvaW50U2VydmljZUlkLFxuICAgIElkOiBvYmouaWQsXG4gICAgRW5mb3JjZUNvbm5lY3Rpb25TdWNjZXNzOiBvYmouZW5mb3JjZUNvbm5lY3Rpb25TdWNjZXNzLFxuICAgIENvbm5lY3Rpb25TdGF0dXM6IG9iai5jb25uZWN0aW9uU3RhdHVzLFxuICAgIEVycm9yTWVzc2FnZTogb2JqLmVycm9yTWVzc2FnZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludEFXU2BcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5Qcml2YXRlRW5kcG9pbnRBd3MgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQtYXdzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTJEbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsaUNBQWlDLENBQy9DLEdBQTJDO0lBRTNDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixpQkFBaUIsRUFBRSxHQUFHLENBQUMsaUJBQWlCO1FBQ3hDLEVBQUUsRUFBRSxHQUFHLENBQUMsRUFBRTtRQUNWLHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7UUFDdEQsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQjtRQUN0QyxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7S0FDL0IsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBcEJELDhFQW9CQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEscUJBQXNCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFZeEQ7Ozs7OztPQU1HO0lBQ0gsWUFDRSxLQUEyQixFQUMzQixFQUFVLEVBQ1YsS0FBaUM7UUFFakMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUscUJBQXFCLENBQUMsc0JBQXNCO1lBQ2xELFVBQVUsRUFBRSxpQ0FBaUMsQ0FBQyxLQUFLLENBQUU7U0FDdEQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7QUE5Qkgsc0RBK0JDOzs7QUE5QkM7O0dBRUc7QUFDb0IsNENBQXNCLEdBQzNDLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBDcmVhdGVzIG9uZSBwcml2YXRlIGVuZHBvaW50IGZvciB0aGUgc3BlY2lmaWVkIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIuIEF0IHRoaXMgY3VycmVudCB2ZXJzaW9uIG9ubHkgQVdTIGlzIHN1cHBvcnRlZFxuICpcbiAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKVxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcHJpdmF0ZSBlbmRwb2ludCBzZXJ2aWNlIGZvciB3aGljaCB5b3Ugd2FudCB0byBjcmVhdGUgYSBwcml2YXRlIGVuZHBvaW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzI0VuZHBvaW50U2VydmljZUlkXG4gICAqL1xuICByZWFkb25seSBlbmRwb2ludFNlcnZpY2VJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcHJpdmF0ZSBlbmRwb2ludC4gZm9yIEFXUyBpcyB0aGUgVlBDIGVuZHBvaW50IElELCBleGFtcGxlOiB2cGNlLXh4eHh4eHh4XG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMjSWRcbiAgICovXG4gIHJlYWRvbmx5IGlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0aGlzIHByb3BlciBpcyBzZXQgdG8gVFJVRSwgdGhlIGNsb3VkIGZvcm1hdGlvbiByZXNvdXJjZSB3aWxsIHJldHVybiBzdWNjZXNzIE9ubHkgaWYgdGhlIHByaXZhdGUgY29ubmVjdGlvbiBpcyBTdWNjZWVkZWRcbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyNFbmZvcmNlQ29ubmVjdGlvblN1Y2Nlc3NcbiAgICovXG4gIHJlYWRvbmx5IGVuZm9yY2VDb25uZWN0aW9uU3VjY2Vzcz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFN0YXRlIG9mIHRoZSBBbWF6b24gV2ViIFNlcnZpY2UgUHJpdmF0ZUxpbmsgY29ubmVjdGlvbiB3aGVuIE1vbmdvREIgQ2xvdWQgcmVjZWl2ZWQgdGhpcyByZXF1ZXN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzI0Nvbm5lY3Rpb25TdGF0dXNcbiAgICovXG4gIHJlYWRvbmx5IGNvbm5lY3Rpb25TdGF0dXM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVycm9yIG1lc3NhZ2UgcmV0dXJuZWQgd2hlbiByZXF1ZXN0aW5nIHByaXZhdGUgY29ubmVjdGlvbiByZXNvdXJjZS4gVGhlIHJlc291cmNlIHJldHVybnMgbnVsbCBpZiB0aGUgcmVxdWVzdCBzdWNjZWVkZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMjRXJyb3JNZXNzYWdlXG4gICAqL1xuICByZWFkb25seSBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyhcbiAgb2JqOiBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBFbmRwb2ludFNlcnZpY2VJZDogb2JqLmVuZHBvaW50U2VydmljZUlkLFxuICAgIElkOiBvYmouaWQsXG4gICAgRW5mb3JjZUNvbm5lY3Rpb25TdWNjZXNzOiBvYmouZW5mb3JjZUNvbm5lY3Rpb25TdWNjZXNzLFxuICAgIENvbm5lY3Rpb25TdGF0dXM6IG9iai5jb25uZWN0aW9uU3RhdHVzLFxuICAgIEVycm9yTWVzc2FnZTogb2JqLmVycm9yTWVzc2FnZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludEFXU2BcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5Qcml2YXRlRW5kcG9pbnRBd3MgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5Qcml2YXRlRW5kcG9pbnRBd3NQcm9wcztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblByaXZhdGVFbmRwb2ludEF3c1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuUHJpdmF0ZUVuZHBvaW50QXdzUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxufVxuIl19

@@ -49,3 +49,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnPrivateEndPointRegionalMode[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndPointRegionalMode", version: "3.7.2" };
CfnPrivateEndPointRegionalMode[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndPointRegionalMode", version: "3.8.0" };
/**

@@ -52,0 +52,0 @@ * The CloudFormation resource type name for this resource class.

@@ -10,3 +10,3 @@ import * as cdk from "aws-cdk-lib";

/**
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup (../../../examples/profile-secret.yaml)
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup](../../../examples/profile-secret.yaml)
*

@@ -13,0 +13,0 @@ * @schema CfnPrivateEndpointServiceProps#Profile

@@ -70,3 +70,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnPrivateEndpointService[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpointService", version: "3.7.2" };
CfnPrivateEndpointService[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpointService", version: "3.8.0" };
/**

@@ -76,2 +76,2 @@ * The CloudFormation resource type name for this resource class.

CfnPrivateEndpointService.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::PrivateEndpointService";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQtc2VydmljZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFzQ25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHFDQUFxQyxDQUNuRCxHQUErQztJQUUvQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtLQUNqQyxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFqQkQsc0ZBaUJDO0FBQ0Qsd0NBQXdDO0FBRXhDOzs7O0dBSUc7QUFDSCxJQUFZLDJDQU9YO0FBUEQsV0FBWSwyQ0FBMkM7SUFDckQsVUFBVTtJQUNWLDBEQUFXLENBQUE7SUFDWCxZQUFZO0lBQ1osOERBQWUsQ0FBQTtJQUNmLFVBQVU7SUFDViwwREFBVyxDQUFBO0FBQ2IsQ0FBQyxFQVBXLDJDQUEyQyxHQUEzQyxtREFBMkMsS0FBM0MsbURBQTJDLFFBT3REO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLHlCQUEwQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBaUM1RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFxQztRQUVyQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxzQkFBc0I7WUFDdEQsVUFBVSxFQUFFLHFDQUFxQyxDQUFDLEtBQUssQ0FBRTtTQUMxRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FDbkMsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQ2xDLENBQUM7SUFDSixDQUFDOztBQTdESCw4REE4REM7OztBQTdEQzs7R0FFRztBQUNvQixnREFBc0IsR0FDM0Msd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIENyZWF0ZXMgb25lIHByaXZhdGUgZW5kcG9pbnQgc2VydmljZSBmb3IgdGhlIHNwZWNpZmllZCBjbG91ZCBzZXJ2aWNlIHByb3ZpZGVyLiBUaGlzIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIgbWFuYWdlcyB0aGUgcHJpdmF0ZSBlbmRwb2ludCBzZXJ2aWNlIGZvciB0aGUgcHJvamVjdC4gV2hlbiB5b3UgY3JlYXRlIGEgcHJpdmF0ZSBlbmRwb2ludCBzZXJ2aWNlLCBNb25nb0RCIENsb3VkIGNyZWF0ZXMgYSBuZXR3b3JrIGNvbnRhaW5lciBpbiB0aGUgcHJvamVjdCBmb3IgdGhlIGNsb3VkIHByb3ZpZGVyIGZvciB3aGljaCB5b3UgY3JlYXRlIHRoZSBwcml2YXRlIGVuZHBvaW50IHNlcnZpY2UgaWYgb25lIGRvZXNuJ3QgYWxyZWFkeSBleGlzdC5cbiAqXG4gKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwICguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKVxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEF3cyBSZWdpb25cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHMjUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogQ2xvdWQgc2VydmljZSBwcm92aWRlciB0aGF0IG1hbmFnZXMgdGhpcyBwcml2YXRlIGVuZHBvaW50LCBkZWZhdWx0IDogQVdTXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzI0Nsb3VkUHJvdmlkZXJcbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkUHJvdmlkZXI6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc0Nsb3VkUHJvdmlkZXI7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzKFxuICBvYmo6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gICAgQ2xvdWRQcm92aWRlcjogb2JqLmNsb3VkUHJvdmlkZXIsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIENsb3VkIHNlcnZpY2UgcHJvdmlkZXIgdGhhdCBtYW5hZ2VzIHRoaXMgcHJpdmF0ZSBlbmRwb2ludCwgZGVmYXVsdCA6IEFXU1xuICpcbiAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzQ2xvdWRQcm92aWRlclxuICovXG5leHBvcnQgZW51bSBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHNDbG91ZFByb3ZpZGVyIHtcbiAgLyoqIEFXUyAqL1xuICBBV1MgPSBcIkFXU1wiLFxuICAvKiogQVpVUkUgKi9cbiAgQVpVUkUgPSBcIkFaVVJFXCIsXG4gIC8qKiBHQ1AgKi9cbiAgR0NQID0gXCJHQ1BcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50U2VydmljZWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50U2VydmljZVxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZSBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlLkVuZHBvaW50U2VydmljZU5hbWVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckVuZHBvaW50U2VydmljZU5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuRXJyb3JNZXNzYWdlYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuU3RhdHVzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJTdGF0dXM6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuSW50ZXJmYWNlRW5kcG9pbnRzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnRlcmZhY2VFbmRwb2ludHM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2UuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICAgIHRoaXMuYXR0ckVuZHBvaW50U2VydmljZU5hbWUgPSBjZGsuVG9rZW4uYXNTdHJpbmcoXG4gICAgICB0aGlzLmdldEF0dChcIkVuZHBvaW50U2VydmljZU5hbWVcIilcbiAgICApO1xuICAgIHRoaXMuYXR0ckVycm9yTWVzc2FnZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkVycm9yTWVzc2FnZVwiKSk7XG4gICAgdGhpcy5hdHRyU3RhdHVzID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdHVzXCIpKTtcbiAgICB0aGlzLmF0dHJJbnRlcmZhY2VFbmRwb2ludHMgPSBjZGsuVG9rZW4uYXNMaXN0KFxuICAgICAgdGhpcy5nZXRBdHQoXCJJbnRlcmZhY2VFbmRwb2ludHNcIilcbiAgICApO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQtc2VydmljZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFzQ25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHFDQUFxQyxDQUNuRCxHQUErQztJQUUvQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLGFBQWEsRUFBRSxHQUFHLENBQUMsYUFBYTtLQUNqQyxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFqQkQsc0ZBaUJDO0FBQ0Qsd0NBQXdDO0FBRXhDOzs7O0dBSUc7QUFDSCxJQUFZLDJDQU9YO0FBUEQsV0FBWSwyQ0FBMkM7SUFDckQsVUFBVTtJQUNWLDBEQUFXLENBQUE7SUFDWCxZQUFZO0lBQ1osOERBQWUsQ0FBQTtJQUNmLFVBQVU7SUFDViwwREFBVyxDQUFBO0FBQ2IsQ0FBQyxFQVBXLDJDQUEyQyxHQUEzQyxtREFBMkMsS0FBM0MsbURBQTJDLFFBT3REO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLHlCQUEwQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBaUM1RDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUFxQztRQUVyQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSx5QkFBeUIsQ0FBQyxzQkFBc0I7WUFDdEQsVUFBVSxFQUFFLHFDQUFxQyxDQUFDLEtBQUssQ0FBRTtTQUMxRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQy9DLElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FDbkMsQ0FBQztRQUNGLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFDeEUsSUFBSSxDQUFDLFVBQVUsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFDNUQsSUFBSSxDQUFDLHNCQUFzQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUM1QyxJQUFJLENBQUMsTUFBTSxDQUFDLG9CQUFvQixDQUFDLENBQ2xDLENBQUM7SUFDSixDQUFDOztBQTdESCw4REE4REM7OztBQTdEQzs7R0FFRztBQUNvQixnREFBc0IsR0FDM0Msd0NBQXdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIENyZWF0ZXMgb25lIHByaXZhdGUgZW5kcG9pbnQgc2VydmljZSBmb3IgdGhlIHNwZWNpZmllZCBjbG91ZCBzZXJ2aWNlIHByb3ZpZGVyLiBUaGlzIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIgbWFuYWdlcyB0aGUgcHJpdmF0ZSBlbmRwb2ludCBzZXJ2aWNlIGZvciB0aGUgcHJvamVjdC4gV2hlbiB5b3UgY3JlYXRlIGEgcHJpdmF0ZSBlbmRwb2ludCBzZXJ2aWNlLCBNb25nb0RCIENsb3VkIGNyZWF0ZXMgYSBuZXR3b3JrIGNvbnRhaW5lciBpbiB0aGUgcHJvamVjdCBmb3IgdGhlIGNsb3VkIHByb3ZpZGVyIGZvciB3aGljaCB5b3UgY3JlYXRlIHRoZSBwcml2YXRlIGVuZHBvaW50IHNlcnZpY2UgaWYgb25lIGRvZXNuJ3QgYWxyZWFkeSBleGlzdC5cbiAqXG4gKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKVxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEF3cyBSZWdpb25cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHMjUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogQ2xvdWQgc2VydmljZSBwcm92aWRlciB0aGF0IG1hbmFnZXMgdGhpcyBwcml2YXRlIGVuZHBvaW50LCBkZWZhdWx0IDogQVdTXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzI0Nsb3VkUHJvdmlkZXJcbiAgICovXG4gIHJlYWRvbmx5IGNsb3VkUHJvdmlkZXI6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc0Nsb3VkUHJvdmlkZXI7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzKFxuICBvYmo6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gICAgQ2xvdWRQcm92aWRlcjogb2JqLmNsb3VkUHJvdmlkZXIsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIENsb3VkIHNlcnZpY2UgcHJvdmlkZXIgdGhhdCBtYW5hZ2VzIHRoaXMgcHJpdmF0ZSBlbmRwb2ludCwgZGVmYXVsdCA6IEFXU1xuICpcbiAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZVByb3BzQ2xvdWRQcm92aWRlclxuICovXG5leHBvcnQgZW51bSBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHNDbG91ZFByb3ZpZGVyIHtcbiAgLyoqIEFXUyAqL1xuICBBV1MgPSBcIkFXU1wiLFxuICAvKiogQVpVUkUgKi9cbiAgQVpVUkUgPSBcIkFaVVJFXCIsXG4gIC8qKiBHQ1AgKi9cbiAgR0NQID0gXCJHQ1BcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50U2VydmljZWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50U2VydmljZVxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuUHJpdmF0ZUVuZHBvaW50U2VydmljZSBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlLkVuZHBvaW50U2VydmljZU5hbWVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckVuZHBvaW50U2VydmljZU5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuRXJyb3JNZXNzYWdlYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJFcnJvck1lc3NhZ2U6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuU3RhdHVzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJTdGF0dXM6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludFNlcnZpY2UuSW50ZXJmYWNlRW5kcG9pbnRzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnRlcmZhY2VFbmRwb2ludHM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2VQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblByaXZhdGVFbmRwb2ludFNlcnZpY2UuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5Qcml2YXRlRW5kcG9pbnRTZXJ2aWNlUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICAgIHRoaXMuYXR0ckVuZHBvaW50U2VydmljZU5hbWUgPSBjZGsuVG9rZW4uYXNTdHJpbmcoXG4gICAgICB0aGlzLmdldEF0dChcIkVuZHBvaW50U2VydmljZU5hbWVcIilcbiAgICApO1xuICAgIHRoaXMuYXR0ckVycm9yTWVzc2FnZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkVycm9yTWVzc2FnZVwiKSk7XG4gICAgdGhpcy5hdHRyU3RhdHVzID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdHVzXCIpKTtcbiAgICB0aGlzLmF0dHJJbnRlcmZhY2VFbmRwb2ludHMgPSBjZGsuVG9rZW4uYXNMaXN0KFxuICAgICAgdGhpcy5nZXRBdHQoXCJJbnRlcmZhY2VFbmRwb2ludHNcIilcbiAgICApO1xuICB9XG59XG4iXX0=
import * as cdk from "aws-cdk-lib";
import * as constructs from "constructs";
/**
* The Private Endpoint creation flow consists of the creation of three related resources in the next order: 1. Atlas Private Endpoint Service 2. Aws VPC private Endpoint 3. Atlas Private Endpoint
* DEPRECATED- USE MongoDB::Atlas::PrivateEndpointService and MongoDB::Atlas::PrivateEndpointAWS instead, The Private Endpoint creation flow consists of the creation of three related resources in the next order: 1. Atlas Private Endpoint Service 2. Aws VPC private Endpoint 3. Atlas Private Endpoint
*

@@ -10,3 +10,3 @@ * @schema CfnPrivateEndpointProps

/**
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup (../../../examples/profile-secret.yaml)
* The profile is defined in AWS Secret manager. See [Secret Manager Profile setup](../../../examples/profile-secret.yaml)
*

@@ -13,0 +13,0 @@ * @schema CfnPrivateEndpointProps#Profile

@@ -75,3 +75,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnPrivateEndpoint[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpoint", version: "3.7.2" };
CfnPrivateEndpoint[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivateEndpoint", version: "3.8.0" };
/**

@@ -81,2 +81,2 @@ * The CloudFormation resource type name for this resource class.

CfnPrivateEndpoint.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::PrivateEndpoint";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBMkRuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQiw4QkFBOEIsQ0FDNUMsR0FBd0M7SUFFeEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLG1CQUFtQjtRQUM1QyxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07UUFDbEIsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2hELHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUMxQjtLQUNGLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQXRCRCx3RUFzQkM7QUEyQ0Q7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isc0JBQXNCLENBQ3BDLEdBQWdDO0lBRWhDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO1FBQ2hCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxtQkFBbUI7UUFDNUMsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLHdCQUF3QjtRQUN0RCwwQkFBMEIsRUFBRSxHQUFHLENBQUMsMEJBQTBCO0tBQzNELENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWxCRCx3REFrQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLGtCQUFtQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBcUJyRDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUE4QjtRQUU5QixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxzQkFBc0I7WUFDL0MsVUFBVSxFQUFFLDhCQUE4QixDQUFDLEtBQUssQ0FBRTtTQUNuRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FDbEMsQ0FBQztJQUNKLENBQUM7O0FBNUNILGdEQTZDQzs7O0FBNUNDOztHQUVHO0FBQ29CLHlDQUFzQixHQUMzQyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogVGhlIFByaXZhdGUgRW5kcG9pbnQgY3JlYXRpb24gZmxvdyBjb25zaXN0cyBvZiB0aGUgY3JlYXRpb24gb2YgdGhyZWUgcmVsYXRlZCByZXNvdXJjZXMgaW4gdGhlIG5leHQgb3JkZXI6IDEuIEF0bGFzIFByaXZhdGUgRW5kcG9pbnQgU2VydmljZSAyLiBBd3MgVlBDIHByaXZhdGUgRW5kcG9pbnQgMy4gQXRsYXMgUHJpdmF0ZSBFbmRwb2ludFxuICpcbiAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwICguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKVxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIEFXUyBQcml2YXRlTGluayBlbmRwb2ludCBzZXJ2aWNlLiBBdGxhcyByZXR1cm5zIG51bGwgd2hpbGUgaXQgaXMgY3JlYXRpbmcgdGhlIGVuZHBvaW50IHNlcnZpY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMjRW5kcG9pbnRTZXJ2aWNlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZW5kcG9pbnRTZXJ2aWNlTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRXJyb3IgbWVzc2FnZSBwZXJ0YWluaW5nIHRvIHRoZSBBV1MgUHJpdmF0ZUxpbmsgY29ubmVjdGlvbi4gUmV0dXJucyBudWxsIGlmIHRoZXJlIGFyZSBubyBlcnJvcnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMjRXJyb3JNZXNzYWdlXG4gICAqL1xuICByZWFkb25seSBlcnJvck1lc3NhZ2U/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFN0YXR1cyBvZiB0aGUgQXRsYXMgUHJpdmF0ZUVuZHBvaW50IHNlcnZpY2UgY29ubmVjdGlvblxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzI1N0YXR1c1xuICAgKi9cbiAgcmVhZG9ubHkgc3RhdHVzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMjR3JvdXBJZFxuICAgKi9cbiAgcmVhZG9ubHkgZ3JvdXBJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBBd3MgUmVnaW9uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMjUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBwcml2YXRlIGVuZHBvaW50IGFzc29jaWF0ZWQgdG8gdGhlIHNlcnZpY2VcbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyNQcml2YXRlRW5kcG9pbnRzXG4gICAqL1xuICByZWFkb25seSBwcml2YXRlRW5kcG9pbnRzPzogUHJpdmF0ZUVuZHBvaW50W107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0NmblByaXZhdGVFbmRwb2ludFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyhcbiAgb2JqOiBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICAgIEVuZHBvaW50U2VydmljZU5hbWU6IG9iai5lbmRwb2ludFNlcnZpY2VOYW1lLFxuICAgIEVycm9yTWVzc2FnZTogb2JqLmVycm9yTWVzc2FnZSxcbiAgICBTdGF0dXM6IG9iai5zdGF0dXMsXG4gICAgR3JvdXBJZDogb2JqLmdyb3VwSWQsXG4gICAgUmVnaW9uOiBvYmoucmVnaW9uLFxuICAgIFByaXZhdGVFbmRwb2ludHM6IG9iai5wcml2YXRlRW5kcG9pbnRzPy5tYXAoKHkpID0+XG4gICAgICB0b0pzb25fUHJpdmF0ZUVuZHBvaW50KHkpXG4gICAgKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBQcml2YXRlRW5kcG9pbnQge1xuICAvKipcbiAgICogU3RyaW5nIFJlcHJlc2VudGluZyB0aGUgQVdTIFZQQyBJRCAobGlrZTogdnBjLXh4eHh4eHh4eHh4eHh4eHgpIChVc2VkIEZvciBDcmVhdGluZyB0aGUgQVdTIFZQQyBFbmRwb2ludClcbiAgICpcbiAgICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnQjVnBjSWRcbiAgICovXG4gIHJlYWRvbmx5IHZwY0lkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHN0cmluZyByZXByZXNlbnRpbmcgdGhlIEFXUyBWUEMgU3VibmV0IElEIChsaWtlOiBzdWJuZXQteHh4eHh4eHh4eHh4eHh4eHgpIChVc2VkIEZvciBDcmVhdGluZyB0aGUgQVdTIFZQQyBFbmRwb2ludClcbiAgICpcbiAgICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnQjU3VibmV0SWRzXG4gICAqL1xuICByZWFkb25seSBzdWJuZXRJZHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXJzIG9mIHRoZSBpbnRlcmZhY2UgZW5kcG9pbnRzIGluIHlvdXIgVlBDIHRoYXQgeW91IGFkZGVkIHRvIHRoZSBBV1MgUHJpdmF0ZUxpbmsgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnQjSW50ZXJmYWNlRW5kcG9pbnRJZFxuICAgKi9cbiAgcmVhZG9ubHkgaW50ZXJmYWNlRW5kcG9pbnRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogU3RhdHVzIG9mIHRoZSBBV1MgUHJpdmF0ZUVuZHBvaW50IGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I0FXU1ByaXZhdGVFbmRwb2ludFN0YXR1c1xuICAgKi9cbiAgcmVhZG9ubHkgYXdzUHJpdmF0ZUVuZHBvaW50U3RhdHVzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgb2YgdGhlIEF0bGFzIFByaXZhdGVFbmRwb2ludCBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIFByaXZhdGVFbmRwb2ludCNBdGxhc1ByaXZhdGVFbmRwb2ludFN0YXR1c1xuICAgKi9cbiAgcmVhZG9ubHkgYXRsYXNQcml2YXRlRW5kcG9pbnRTdGF0dXM/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1ByaXZhdGVFbmRwb2ludCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fUHJpdmF0ZUVuZHBvaW50KFxuICBvYmo6IFByaXZhdGVFbmRwb2ludCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFZwY0lkOiBvYmoudnBjSWQsXG4gICAgU3VibmV0SWRzOiBvYmouc3VibmV0SWRzPy5tYXAoKHkpID0+IHkpLFxuICAgIEludGVyZmFjZUVuZHBvaW50SWQ6IG9iai5pbnRlcmZhY2VFbmRwb2ludElkLFxuICAgIEFXU1ByaXZhdGVFbmRwb2ludFN0YXR1czogb2JqLmF3c1ByaXZhdGVFbmRwb2ludFN0YXR1cyxcbiAgICBBdGxhc1ByaXZhdGVFbmRwb2ludFN0YXR1czogb2JqLmF0bGFzUHJpdmF0ZUVuZHBvaW50U3RhdHVzLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmblByaXZhdGVFbmRwb2ludCBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblByaXZhdGVFbmRwb2ludFByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnQuSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnQuSW50ZXJmYWNlRW5kcG9pbnRzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJbnRlcmZhY2VFbmRwb2ludHM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5Qcml2YXRlRW5kcG9pbnQuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRySWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJZFwiKSk7XG4gICAgdGhpcy5hdHRySW50ZXJmYWNlRW5kcG9pbnRzID0gY2RrLlRva2VuLmFzTGlzdChcbiAgICAgIHRoaXMuZ2V0QXR0KFwiSW50ZXJmYWNlRW5kcG9pbnRzXCIpXG4gICAgKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3ByaXZhdGUtZW5kcG9pbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBMkRuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQiw4QkFBOEIsQ0FDNUMsR0FBd0M7SUFFeEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsbUJBQW1CLEVBQUUsR0FBRyxDQUFDLG1CQUFtQjtRQUM1QyxZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1FBQ2xCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07UUFDbEIsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ2hELHNCQUFzQixDQUFDLENBQUMsQ0FBQyxDQUMxQjtLQUNGLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQXRCRCx3RUFzQkM7QUEyQ0Q7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isc0JBQXNCLENBQ3BDLEdBQWdDO0lBRWhDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO1FBQ2hCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxtQkFBbUI7UUFDNUMsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLHdCQUF3QjtRQUN0RCwwQkFBMEIsRUFBRSxHQUFHLENBQUMsMEJBQTBCO0tBQzNELENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWxCRCx3REFrQkM7QUFDRCx3Q0FBd0M7QUFFeEM7Ozs7O0dBS0c7QUFDSCxNQUFhLGtCQUFtQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBcUJyRDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUE4QjtRQUU5QixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxrQkFBa0IsQ0FBQyxzQkFBc0I7WUFDL0MsVUFBVSxFQUFFLDhCQUE4QixDQUFDLEtBQUssQ0FBRTtTQUNuRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsc0JBQXNCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQzVDLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FDbEMsQ0FBQztJQUNKLENBQUM7O0FBNUNILGdEQTZDQzs7O0FBNUNDOztHQUVHO0FBQ29CLHlDQUFzQixHQUMzQyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogREVQUkVDQVRFRC0gVVNFIE1vbmdvREI6OkF0bGFzOjpQcml2YXRlRW5kcG9pbnRTZXJ2aWNlIGFuZCBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50QVdTIGluc3RlYWQsIFRoZSBQcml2YXRlIEVuZHBvaW50IGNyZWF0aW9uIGZsb3cgY29uc2lzdHMgb2YgdGhlIGNyZWF0aW9uIG9mIHRocmVlIHJlbGF0ZWQgcmVzb3VyY2VzIGluIHRoZSBuZXh0IG9yZGVyOiAxLiBBdGxhcyBQcml2YXRlIEVuZHBvaW50IFNlcnZpY2UgMi4gQXdzIFZQQyBwcml2YXRlIEVuZHBvaW50IDMuIEF0bGFzIFByaXZhdGUgRW5kcG9pbnRcbiAqXG4gKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbClcbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBBV1MgUHJpdmF0ZUxpbmsgZW5kcG9pbnQgc2VydmljZS4gQXRsYXMgcmV0dXJucyBudWxsIHdoaWxlIGl0IGlzIGNyZWF0aW5nIHRoZSBlbmRwb2ludCBzZXJ2aWNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzI0VuZHBvaW50U2VydmljZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50U2VydmljZU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEVycm9yIG1lc3NhZ2UgcGVydGFpbmluZyB0byB0aGUgQVdTIFByaXZhdGVMaW5rIGNvbm5lY3Rpb24uIFJldHVybnMgbnVsbCBpZiB0aGVyZSBhcmUgbm8gZXJyb3JzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzI0Vycm9yTWVzc2FnZVxuICAgKi9cbiAgcmVhZG9ubHkgZXJyb3JNZXNzYWdlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgb2YgdGhlIEF0bGFzIFByaXZhdGVFbmRwb2ludCBzZXJ2aWNlIGNvbm5lY3Rpb25cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcyNTdGF0dXNcbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1cz86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzI0dyb3VwSWRcbiAgICovXG4gIHJlYWRvbmx5IGdyb3VwSWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQXdzIFJlZ2lvblxuICAgKlxuICAgKiBAc2NoZW1hIENmblByaXZhdGVFbmRwb2ludFByb3BzI1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2YgcHJpdmF0ZSBlbmRwb2ludCBhc3NvY2lhdGVkIHRvIHRoZSBzZXJ2aWNlXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMjUHJpdmF0ZUVuZHBvaW50c1xuICAgKi9cbiAgcmVhZG9ubHkgcHJpdmF0ZUVuZHBvaW50cz86IFByaXZhdGVFbmRwb2ludFtdO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMoXG4gIG9iajogQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBFbmRwb2ludFNlcnZpY2VOYW1lOiBvYmouZW5kcG9pbnRTZXJ2aWNlTmFtZSxcbiAgICBFcnJvck1lc3NhZ2U6IG9iai5lcnJvck1lc3NhZ2UsXG4gICAgU3RhdHVzOiBvYmouc3RhdHVzLFxuICAgIEdyb3VwSWQ6IG9iai5ncm91cElkLFxuICAgIFJlZ2lvbjogb2JqLnJlZ2lvbixcbiAgICBQcml2YXRlRW5kcG9pbnRzOiBvYmoucHJpdmF0ZUVuZHBvaW50cz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX1ByaXZhdGVFbmRwb2ludCh5KVxuICAgICksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUHJpdmF0ZUVuZHBvaW50IHtcbiAgLyoqXG4gICAqIFN0cmluZyBSZXByZXNlbnRpbmcgdGhlIEFXUyBWUEMgSUQgKGxpa2U6IHZwYy14eHh4eHh4eHh4eHh4eHh4KSAoVXNlZCBGb3IgQ3JlYXRpbmcgdGhlIEFXUyBWUEMgRW5kcG9pbnQpXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I1ZwY0lkXG4gICAqL1xuICByZWFkb25seSB2cGNJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBV1MgVlBDIFN1Ym5ldCBJRCAobGlrZTogc3VibmV0LXh4eHh4eHh4eHh4eHh4eHh4KSAoVXNlZCBGb3IgQ3JlYXRpbmcgdGhlIEFXUyBWUEMgRW5kcG9pbnQpXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I1N1Ym5ldElkc1xuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0SWRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVycyBvZiB0aGUgaW50ZXJmYWNlIGVuZHBvaW50cyBpbiB5b3VyIFZQQyB0aGF0IHlvdSBhZGRlZCB0byB0aGUgQVdTIFByaXZhdGVMaW5rIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I0ludGVyZmFjZUVuZHBvaW50SWRcbiAgICovXG4gIHJlYWRvbmx5IGludGVyZmFjZUVuZHBvaW50SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFN0YXR1cyBvZiB0aGUgQVdTIFByaXZhdGVFbmRwb2ludCBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIFByaXZhdGVFbmRwb2ludCNBV1NQcml2YXRlRW5kcG9pbnRTdGF0dXNcbiAgICovXG4gIHJlYWRvbmx5IGF3c1ByaXZhdGVFbmRwb2ludFN0YXR1cz86IHN0cmluZztcblxuICAvKipcbiAgICogU3RhdHVzIG9mIHRoZSBBdGxhcyBQcml2YXRlRW5kcG9pbnQgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnQjQXRsYXNQcml2YXRlRW5kcG9pbnRTdGF0dXNcbiAgICovXG4gIHJlYWRvbmx5IGF0bGFzUHJpdmF0ZUVuZHBvaW50U3RhdHVzPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdQcml2YXRlRW5kcG9pbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1ByaXZhdGVFbmRwb2ludChcbiAgb2JqOiBQcml2YXRlRW5kcG9pbnQgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBWcGNJZDogb2JqLnZwY0lkLFxuICAgIFN1Ym5ldElkczogb2JqLnN1Ym5ldElkcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBJbnRlcmZhY2VFbmRwb2ludElkOiBvYmouaW50ZXJmYWNlRW5kcG9pbnRJZCxcbiAgICBBV1NQcml2YXRlRW5kcG9pbnRTdGF0dXM6IG9iai5hd3NQcml2YXRlRW5kcG9pbnRTdGF0dXMsXG4gICAgQXRsYXNQcml2YXRlRW5kcG9pbnRTdGF0dXM6IG9iai5hdGxhc1ByaXZhdGVFbmRwb2ludFN0YXR1cyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlByaXZhdGVFbmRwb2ludGBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5Qcml2YXRlRW5kcG9pbnQgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50XCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5Qcml2YXRlRW5kcG9pbnRQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50LklkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50LkludGVyZmFjZUVuZHBvaW50c2BcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySW50ZXJmYWNlRW5kcG9pbnRzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6UHJpdmF0ZUVuZHBvaW50YC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblByaXZhdGVFbmRwb2ludFByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuUHJpdmF0ZUVuZHBvaW50LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuUHJpdmF0ZUVuZHBvaW50UHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICAgIHRoaXMuYXR0ckludGVyZmFjZUVuZHBvaW50cyA9IGNkay5Ub2tlbi5hc0xpc3QoXG4gICAgICB0aGlzLmdldEF0dChcIkludGVyZmFjZUVuZHBvaW50c1wiKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -52,3 +52,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnPrivatelinkEndpointServiceDataFederationOnlineArchive[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivatelinkEndpointServiceDataFederationOnlineArchive", version: "3.7.2" };
CfnPrivatelinkEndpointServiceDataFederationOnlineArchive[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnPrivatelinkEndpointServiceDataFederationOnlineArchive", version: "3.8.0" };
/**

@@ -55,0 +55,0 @@ * The CloudFormation resource type name for this resource class.

@@ -76,3 +76,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnProjectInvitation[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProjectInvitation", version: "3.7.2" };
CfnProjectInvitation[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProjectInvitation", version: "3.8.0" };
/**

@@ -79,0 +79,0 @@ * The CloudFormation resource type name for this resource class.

import * as cdk from "aws-cdk-lib";
import * as constructs from "constructs";
/**
* Returns, adds, edits, and removes network access limits to database deployments in MongoDB Cloud.
* Returns, adds, edits, and removes network access limits to database deployments in Atlas.
*

@@ -12,3 +12,3 @@ * @schema CfnProjectIpAccessListProps

*/
readonly accessList?: AccessListDefinition[];
readonly accessList: AccessListDefinition[];
/**

@@ -21,12 +21,2 @@ * Unique 24-hexadecimal digit string that identifies your project.

/**
* @schema CfnProjectIpAccessListProps#ListOptions
*/
readonly listOptions?: ListOptions;
/**
* Number of documents returned in this response.
*
* @schema CfnProjectIpAccessListProps#TotalCount
*/
readonly totalCount?: number;
/**
* Profile used to provide credentials information, (a secret with the cfn/atlas/profile/{Profile}, is required), if not provided default is used

@@ -37,2 +27,6 @@ *

readonly profile?: string;
/**
* @schema CfnProjectIpAccessListProps#ListOptions
*/
readonly listOptions?: ListOptions;
}

@@ -131,2 +125,6 @@ /**

/**
* Attribute `MongoDB::Atlas::ProjectIpAccessList.TotalCount`
*/
readonly attrTotalCount: number;
/**
* Create a new `MongoDB::Atlas::ProjectIpAccessList`.

@@ -133,0 +131,0 @@ *

@@ -19,5 +19,4 @@ "use strict";

ProjectId: obj.projectId,
Profile: obj.profile,
ListOptions: toJson_ListOptions(obj.listOptions),
TotalCount: obj.totalCount,
Profile: obj.profile,
};

@@ -86,2 +85,3 @@ // filter undefined values

this.props = props;
this.attrTotalCount = cdk.Token.asNumber(this.getAtt("TotalCount"));
}

@@ -91,3 +91,3 @@ }

_a = JSII_RTTI_SYMBOL_1;
CfnProjectIpAccessList[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProjectIpAccessList", version: "3.7.2" };
CfnProjectIpAccessList[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProjectIpAccessList", version: "3.8.0" };
/**

@@ -97,2 +97,2 @@ * The CloudFormation resource type name for this resource class.

CfnProjectIpAccessList.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::ProjectIpAccessList";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3Byb2plY3QtaXAtYWNjZXNzLWxpc3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBeUNuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixrQ0FBa0MsQ0FDaEQsR0FBNEM7SUFFNUMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixXQUFXLEVBQUUsa0JBQWtCLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQztRQUNoRCxVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7UUFDMUIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO0tBQ3JCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWxCRCxnRkFrQkM7QUFrREQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsMkJBQTJCLENBQ3pDLEdBQXFDO0lBRXJDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsZUFBZSxFQUFFLEdBQUcsQ0FBQyxlQUFlO1FBQ3BDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxnQkFBZ0I7UUFDdEMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQW5CRCxrRUFtQkM7QUE2QkQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isa0JBQWtCLENBQ2hDLEdBQTRCO0lBRTVCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7S0FDL0IsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBaEJELGdEQWdCQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsc0JBQXVCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFZekQ7Ozs7OztPQU1HO0lBQ0gsWUFDRSxLQUEyQixFQUMzQixFQUFVLEVBQ1YsS0FBa0M7UUFFbEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsc0JBQXNCLENBQUMsc0JBQXNCO1lBQ25ELFVBQVUsRUFBRSxrQ0FBa0MsQ0FBQyxLQUFLLENBQUU7U0FDdkQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7QUE5Qkgsd0RBK0JDOzs7QUE5QkM7O0dBRUc7QUFDb0IsNkNBQXNCLEdBQzNDLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgbmV0d29yayBhY2Nlc3MgbGltaXRzIHRvIGRhdGFiYXNlIGRlcGxveW1lbnRzIGluIE1vbmdvREIgQ2xvdWQuXG4gKlxuICogQHNjaGVtYSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMge1xuICAvKipcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMjQWNjZXNzTGlzdFxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXNzTGlzdD86IEFjY2Vzc0xpc3REZWZpbml0aW9uW107XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMjTGlzdE9wdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGxpc3RPcHRpb25zPzogTGlzdE9wdGlvbnM7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBkb2N1bWVudHMgcmV0dXJuZWQgaW4gdGhpcyByZXNwb25zZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMjVG90YWxDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgdG90YWxDb3VudD86IG51bWJlcjtcblxuICAvKipcbiAgICogUHJvZmlsZSB1c2VkIHRvIHByb3ZpZGUgY3JlZGVudGlhbHMgaW5mb3JtYXRpb24sIChhIHNlY3JldCB3aXRoIHRoZSBjZm4vYXRsYXMvcHJvZmlsZS97UHJvZmlsZX0sIGlzIHJlcXVpcmVkKSwgaWYgbm90IHByb3ZpZGVkIGRlZmF1bHQgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcyhcbiAgb2JqOiBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBBY2Nlc3NMaXN0OiBvYmouYWNjZXNzTGlzdD8ubWFwKCh5KSA9PiB0b0pzb25fQWNjZXNzTGlzdERlZmluaXRpb24oeSkpLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBMaXN0T3B0aW9uczogdG9Kc29uX0xpc3RPcHRpb25zKG9iai5saXN0T3B0aW9ucyksXG4gICAgVG90YWxDb3VudDogb2JqLnRvdGFsQ291bnQsXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgYWNjZXNzTGlzdERlZmluaXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBY2Nlc3NMaXN0RGVmaW5pdGlvbiB7XG4gIC8qKlxuICAgKiBEYXRlIGFuZCB0aW1lIGFmdGVyIHdoaWNoIE1vbmdvREIgQ2xvdWQgZGVsZXRlcyB0aGUgdGVtcG9yYXJ5IGFjY2VzcyBsaXN0IGVudHJ5LiBUaGlzIHBhcmFtZXRlciBleHByZXNzZXMgaXRzIHZhbHVlIGluIHRoZSBJU08gODYwMSB0aW1lc3RhbXAgZm9ybWF0IGluIFVUQyBhbmQgY2FuIGluY2x1ZGUgdGhlIHRpbWUgem9uZSBkZXNpZ25hdGlvbi4gVGhlIGRhdGUgbXVzdCBiZSBsYXRlciB0aGFuIHRoZSBjdXJyZW50IGRhdGUgYnV0IG5vIGxhdGVyIHRoYW4gb25lIHdlZWsgYWZ0ZXIgeW91IHN1Ym1pdCB0aGlzIHJlcXVlc3QuIFRoZSByZXNvdXJjZSByZXR1cm5zIHRoaXMgcGFyYW1ldGVyIGlmIHlvdSBzcGVjaWZpZWQgYW4gZXhwaXJhdGlvbiBkYXRlIHdoZW4gY3JlYXRpbmcgdGhpcyBJUCBhY2Nlc3MgbGlzdCBlbnRyeS5cbiAgICpcbiAgICogQHNjaGVtYSBhY2Nlc3NMaXN0RGVmaW5pdGlvbiNEZWxldGVBZnRlckRhdGVcbiAgICovXG4gIHJlYWRvbmx5IGRlbGV0ZUFmdGVyRGF0ZT86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIHN0cmluZyBvZiB0aGUgQW1hem9uIFdlYiBTZXJ2aWNlcyAoQVdTKSBzZWN1cml0eSBncm91cCB0aGF0IHlvdSB3YW50IHRvIGFkZCB0byB0aGUgcHJvamVjdCdzIElQIGFjY2VzcyBsaXN0LiBZb3VyIElQIGFjY2VzcyBsaXN0IGVudHJ5IGNhbiBiZSBvbmUgYXdzU2VjdXJpdHlHcm91cCwgb25lIGNpZHJCbG9jaywgb3Igb25lIGlwQWRkcmVzcy4gWW91IG11c3QgY29uZmlndXJlIFZpcnR1YWwgUHJpdmF0ZSBDb25uZWN0aW9uIChWUEMpIHBlZXJpbmcgZm9yIHlvdXIgcHJvamVjdCBiZWZvcmUgeW91IGNhbiBhZGQgYW4gQVdTIHNlY3VyaXR5IGdyb3VwIHRvIGFuIElQIGFjY2VzcyBsaXN0LiBZb3UgY2Fubm90IHNldCBBV1Mgc2VjdXJpdHkgZ3JvdXBzIGFzIHRlbXBvcmFyeSBhY2Nlc3MgbGlzdCBlbnRyaWVzLiBEb24ndCBzZXQgdGhpcyBwYXJhbWV0ZXIgaWYgeW91IHNldCBjaWRyQmxvY2sgb3IgaXBBZGRyZXNzLlxuICAgKlxuICAgKiBAc2NoZW1hIGFjY2Vzc0xpc3REZWZpbml0aW9uI0F3c1NlY3VyaXR5R3JvdXBcbiAgICovXG4gIHJlYWRvbmx5IGF3c1NlY3VyaXR5R3JvdXA/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJhbmdlIG9mIElQIGFkZHJlc3NlcyBpbiBDbGFzc2xlc3MgSW50ZXItRG9tYWluIFJvdXRpbmcgKENJRFIpIG5vdGF0aW9uIHRoYXQgeW91IHdhbnQgdG8gYWRkIHRvIHRoZSBwcm9qZWN0J3MgSVAgYWNjZXNzIGxpc3QuIFlvdXIgSVAgYWNjZXNzIGxpc3QgZW50cnkgY2FuIGJlIG9uZSBhd3NTZWN1cml0eUdyb3VwLCBvbmUgY2lkckJsb2NrLCBvciBvbmUgaXBBZGRyZXNzLiBEb24ndCBzZXQgdGhpcyBwYXJhbWV0ZXIgaWYgeW91IHNldCBhd3NTZWN1cml0eUdyb3VwIG9yIGlwQWRkcmVzc1xuICAgKlxuICAgKiBAc2NoZW1hIGFjY2Vzc0xpc3REZWZpbml0aW9uI0NJRFJCbG9ja1xuICAgKi9cbiAgcmVhZG9ubHkgY2lkckJsb2NrPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSZW1hcmsgdGhhdCBleHBsYWlucyB0aGUgcHVycG9zZSBvciBzY29wZSBvZiB0aGlzIElQIGFjY2VzcyBsaXN0IGVudHJ5LlxuICAgKlxuICAgKiBAc2NoZW1hIGFjY2Vzc0xpc3REZWZpbml0aW9uI0NvbW1lbnRcbiAgICovXG4gIHJlYWRvbmx5IGNvbW1lbnQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElQIGFkZHJlc3MgdGhhdCB5b3Ugd2FudCB0byBhZGQgdG8gdGhlIHByb2plY3QncyBJUCBhY2Nlc3MgbGlzdC4gWW91ciBJUCBhY2Nlc3MgbGlzdCBlbnRyeSBjYW4gYmUgb25lIGF3c1NlY3VyaXR5R3JvdXAsIG9uZSBjaWRyQmxvY2ssIG9yIG9uZSBpcEFkZHJlc3MuIERvbid0IHNldCB0aGlzIHBhcmFtZXRlciBpZiB5b3Ugc2V0IGF3c1NlY3VyaXR5R3JvdXAgb3IgY2lkckJsb2NrLlxuICAgKlxuICAgKiBAc2NoZW1hIGFjY2Vzc0xpc3REZWZpbml0aW9uI0lQQWRkcmVzc1xuICAgKi9cbiAgcmVhZG9ubHkgaXBBZGRyZXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgYWNjZXNzTGlzdERlZmluaXRpb24jUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0FjY2Vzc0xpc3REZWZpbml0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9BY2Nlc3NMaXN0RGVmaW5pdGlvbihcbiAgb2JqOiBBY2Nlc3NMaXN0RGVmaW5pdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIERlbGV0ZUFmdGVyRGF0ZTogb2JqLmRlbGV0ZUFmdGVyRGF0ZSxcbiAgICBBd3NTZWN1cml0eUdyb3VwOiBvYmouYXdzU2VjdXJpdHlHcm91cCxcbiAgICBDSURSQmxvY2s6IG9iai5jaWRyQmxvY2ssXG4gICAgQ29tbWVudDogb2JqLmNvbW1lbnQsXG4gICAgSVBBZGRyZXNzOiBvYmouaXBBZGRyZXNzLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBsaXN0T3B0aW9uc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIExpc3RPcHRpb25zIHtcbiAgLyoqXG4gICAqIE51bWJlciBvZiB0aGUgcGFnZSB0aGF0IGRpc3BsYXlzIHRoZSBjdXJyZW50IHNldCBvZiB0aGUgdG90YWwgb2JqZWN0cyB0aGF0IHRoZSByZXNwb25zZSByZXR1cm5zLlxuICAgKlxuICAgKiBAc2NoZW1hIGxpc3RPcHRpb25zI1BhZ2VOdW1cbiAgICovXG4gIHJlYWRvbmx5IHBhZ2VOdW0/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE51bWJlciBvZiBpdGVtcyB0aGF0IHRoZSByZXNwb25zZSByZXR1cm5zIHBlciBwYWdlLlxuICAgKlxuICAgKiBAc2NoZW1hIGxpc3RPcHRpb25zI0l0ZW1zUGVyUGFnZVxuICAgKi9cbiAgcmVhZG9ubHkgaXRlbXNQZXJQYWdlPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHJlc3BvbnNlIHJldHVybnMgdGhlIHRvdGFsIG51bWJlciBvZiBpdGVtcyAodG90YWxDb3VudCkgaW4gdGhlIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAc2NoZW1hIGxpc3RPcHRpb25zI0luY2x1ZGVDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW5jbHVkZUNvdW50PzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnTGlzdE9wdGlvbnMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0xpc3RPcHRpb25zKFxuICBvYmo6IExpc3RPcHRpb25zIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUGFnZU51bTogb2JqLnBhZ2VOdW0sXG4gICAgSXRlbXNQZXJQYWdlOiBvYmouaXRlbXNQZXJQYWdlLFxuICAgIEluY2x1ZGVDb3VudDogb2JqLmluY2x1ZGVDb3VudCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlByb2plY3RJcEFjY2Vzc0xpc3RgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OlByb2plY3RJcEFjY2Vzc0xpc3RcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmblByb2plY3RJcEFjY2Vzc0xpc3QgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6UHJvamVjdElwQWNjZXNzTGlzdFwiO1xuXG4gIC8qKlxuICAgKiBSZXNvdXJjZSBwcm9wcy5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBwcm9wczogQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpQcm9qZWN0SXBBY2Nlc3NMaXN0YC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblByb2plY3RJcEFjY2Vzc0xpc3QuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3Byb2plY3QtaXAtYWNjZXNzLWxpc3QvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBa0NuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixrQ0FBa0MsQ0FDaEQsR0FBNEM7SUFFNUMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsV0FBVyxFQUFFLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7S0FDakQsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBakJELGdGQWlCQztBQWtERDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQiwyQkFBMkIsQ0FDekMsR0FBcUM7SUFFckMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixlQUFlLEVBQUUsR0FBRyxDQUFDLGVBQWU7UUFDcEMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLGdCQUFnQjtRQUN0QyxTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7S0FDekIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBbkJELGtFQW1CQztBQTZCRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixrQkFBa0IsQ0FDaEMsR0FBNEI7SUFFNUIsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtLQUMvQixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFoQkQsZ0RBZ0JDO0FBQ0Qsd0NBQXdDO0FBRXhDOzs7OztHQUtHO0FBQ0gsTUFBYSxzQkFBdUIsU0FBUSxHQUFHLENBQUMsV0FBVztJQWlCekQ7Ozs7OztPQU1HO0lBQ0gsWUFDRSxLQUEyQixFQUMzQixFQUFVLEVBQ1YsS0FBa0M7UUFFbEMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsc0JBQXNCLENBQUMsc0JBQXNCO1lBQ25ELFVBQVUsRUFBRSxrQ0FBa0MsQ0FBQyxLQUFLLENBQUU7U0FDdkQsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLGNBQWMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDdEUsQ0FBQzs7QUFyQ0gsd0RBc0NDOzs7QUFyQ0M7O0dBRUc7QUFDb0IsNkNBQXNCLEdBQzNDLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgbmV0d29yayBhY2Nlc3MgbGltaXRzIHRvIGRhdGFiYXNlIGRlcGxveW1lbnRzIGluIEF0bGFzLlxuICpcbiAqIEBzY2hlbWEgQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzI0FjY2Vzc0xpc3RcbiAgICovXG4gIHJlYWRvbmx5IGFjY2Vzc0xpc3Q6IEFjY2Vzc0xpc3REZWZpbml0aW9uW107XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHlvdXIgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogUHJvZmlsZSB1c2VkIHRvIHByb3ZpZGUgY3JlZGVudGlhbHMgaW5mb3JtYXRpb24sIChhIHNlY3JldCB3aXRoIHRoZSBjZm4vYXRsYXMvcHJvZmlsZS97UHJvZmlsZX0sIGlzIHJlcXVpcmVkKSwgaWYgbm90IHByb3ZpZGVkIGRlZmF1bHQgaXMgdXNlZFxuICAgKlxuICAgKiBAc2NoZW1hIENmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcyNMaXN0T3B0aW9uc1xuICAgKi9cbiAgcmVhZG9ubHkgbGlzdE9wdGlvbnM/OiBMaXN0T3B0aW9ucztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0UHJvcHMoXG4gIG9iajogQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQWNjZXNzTGlzdDogb2JqLmFjY2Vzc0xpc3Q/Lm1hcCgoeSkgPT4gdG9Kc29uX0FjY2Vzc0xpc3REZWZpbml0aW9uKHkpKSxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgTGlzdE9wdGlvbnM6IHRvSnNvbl9MaXN0T3B0aW9ucyhvYmoubGlzdE9wdGlvbnMpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIGFjY2Vzc0xpc3REZWZpbml0aW9uXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQWNjZXNzTGlzdERlZmluaXRpb24ge1xuICAvKipcbiAgICogRGF0ZSBhbmQgdGltZSBhZnRlciB3aGljaCBNb25nb0RCIENsb3VkIGRlbGV0ZXMgdGhlIHRlbXBvcmFyeSBhY2Nlc3MgbGlzdCBlbnRyeS4gVGhpcyBwYXJhbWV0ZXIgZXhwcmVzc2VzIGl0cyB2YWx1ZSBpbiB0aGUgSVNPIDg2MDEgdGltZXN0YW1wIGZvcm1hdCBpbiBVVEMgYW5kIGNhbiBpbmNsdWRlIHRoZSB0aW1lIHpvbmUgZGVzaWduYXRpb24uIFRoZSBkYXRlIG11c3QgYmUgbGF0ZXIgdGhhbiB0aGUgY3VycmVudCBkYXRlIGJ1dCBubyBsYXRlciB0aGFuIG9uZSB3ZWVrIGFmdGVyIHlvdSBzdWJtaXQgdGhpcyByZXF1ZXN0LiBUaGUgcmVzb3VyY2UgcmV0dXJucyB0aGlzIHBhcmFtZXRlciBpZiB5b3Ugc3BlY2lmaWVkIGFuIGV4cGlyYXRpb24gZGF0ZSB3aGVuIGNyZWF0aW5nIHRoaXMgSVAgYWNjZXNzIGxpc3QgZW50cnkuXG4gICAqXG4gICAqIEBzY2hlbWEgYWNjZXNzTGlzdERlZmluaXRpb24jRGVsZXRlQWZ0ZXJEYXRlXG4gICAqL1xuICByZWFkb25seSBkZWxldGVBZnRlckRhdGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBzdHJpbmcgb2YgdGhlIEFtYXpvbiBXZWIgU2VydmljZXMgKEFXUykgc2VjdXJpdHkgZ3JvdXAgdGhhdCB5b3Ugd2FudCB0byBhZGQgdG8gdGhlIHByb2plY3QncyBJUCBhY2Nlc3MgbGlzdC4gWW91ciBJUCBhY2Nlc3MgbGlzdCBlbnRyeSBjYW4gYmUgb25lIGF3c1NlY3VyaXR5R3JvdXAsIG9uZSBjaWRyQmxvY2ssIG9yIG9uZSBpcEFkZHJlc3MuIFlvdSBtdXN0IGNvbmZpZ3VyZSBWaXJ0dWFsIFByaXZhdGUgQ29ubmVjdGlvbiAoVlBDKSBwZWVyaW5nIGZvciB5b3VyIHByb2plY3QgYmVmb3JlIHlvdSBjYW4gYWRkIGFuIEFXUyBzZWN1cml0eSBncm91cCB0byBhbiBJUCBhY2Nlc3MgbGlzdC4gWW91IGNhbm5vdCBzZXQgQVdTIHNlY3VyaXR5IGdyb3VwcyBhcyB0ZW1wb3JhcnkgYWNjZXNzIGxpc3QgZW50cmllcy4gRG9uJ3Qgc2V0IHRoaXMgcGFyYW1ldGVyIGlmIHlvdSBzZXQgY2lkckJsb2NrIG9yIGlwQWRkcmVzcy5cbiAgICpcbiAgICogQHNjaGVtYSBhY2Nlc3NMaXN0RGVmaW5pdGlvbiNBd3NTZWN1cml0eUdyb3VwXG4gICAqL1xuICByZWFkb25seSBhd3NTZWN1cml0eUdyb3VwPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBSYW5nZSBvZiBJUCBhZGRyZXNzZXMgaW4gQ2xhc3NsZXNzIEludGVyLURvbWFpbiBSb3V0aW5nIChDSURSKSBub3RhdGlvbiB0aGF0IHlvdSB3YW50IHRvIGFkZCB0byB0aGUgcHJvamVjdCdzIElQIGFjY2VzcyBsaXN0LiBZb3VyIElQIGFjY2VzcyBsaXN0IGVudHJ5IGNhbiBiZSBvbmUgYXdzU2VjdXJpdHlHcm91cCwgb25lIGNpZHJCbG9jaywgb3Igb25lIGlwQWRkcmVzcy4gRG9uJ3Qgc2V0IHRoaXMgcGFyYW1ldGVyIGlmIHlvdSBzZXQgYXdzU2VjdXJpdHlHcm91cCBvciBpcEFkZHJlc3NcbiAgICpcbiAgICogQHNjaGVtYSBhY2Nlc3NMaXN0RGVmaW5pdGlvbiNDSURSQmxvY2tcbiAgICovXG4gIHJlYWRvbmx5IGNpZHJCbG9jaz86IHN0cmluZztcblxuICAvKipcbiAgICogUmVtYXJrIHRoYXQgZXhwbGFpbnMgdGhlIHB1cnBvc2Ugb3Igc2NvcGUgb2YgdGhpcyBJUCBhY2Nlc3MgbGlzdCBlbnRyeS5cbiAgICpcbiAgICogQHNjaGVtYSBhY2Nlc3NMaXN0RGVmaW5pdGlvbiNDb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJUCBhZGRyZXNzIHRoYXQgeW91IHdhbnQgdG8gYWRkIHRvIHRoZSBwcm9qZWN0J3MgSVAgYWNjZXNzIGxpc3QuIFlvdXIgSVAgYWNjZXNzIGxpc3QgZW50cnkgY2FuIGJlIG9uZSBhd3NTZWN1cml0eUdyb3VwLCBvbmUgY2lkckJsb2NrLCBvciBvbmUgaXBBZGRyZXNzLiBEb24ndCBzZXQgdGhpcyBwYXJhbWV0ZXIgaWYgeW91IHNldCBhd3NTZWN1cml0eUdyb3VwIG9yIGNpZHJCbG9jay5cbiAgICpcbiAgICogQHNjaGVtYSBhY2Nlc3NMaXN0RGVmaW5pdGlvbiNJUEFkZHJlc3NcbiAgICovXG4gIHJlYWRvbmx5IGlwQWRkcmVzcz86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgeW91ciBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIGFjY2Vzc0xpc3REZWZpbml0aW9uI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBY2Nlc3NMaXN0RGVmaW5pdGlvbicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQWNjZXNzTGlzdERlZmluaXRpb24oXG4gIG9iajogQWNjZXNzTGlzdERlZmluaXRpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBEZWxldGVBZnRlckRhdGU6IG9iai5kZWxldGVBZnRlckRhdGUsXG4gICAgQXdzU2VjdXJpdHlHcm91cDogb2JqLmF3c1NlY3VyaXR5R3JvdXAsXG4gICAgQ0lEUkJsb2NrOiBvYmouY2lkckJsb2NrLFxuICAgIENvbW1lbnQ6IG9iai5jb21tZW50LFxuICAgIElQQWRkcmVzczogb2JqLmlwQWRkcmVzcyxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgbGlzdE9wdGlvbnNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaXN0T3B0aW9ucyB7XG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGhlIHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgY3VycmVudCBzZXQgb2YgdGhlIHRvdGFsIG9iamVjdHMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucy5cbiAgICpcbiAgICogQHNjaGVtYSBsaXN0T3B0aW9ucyNQYWdlTnVtXG4gICAqL1xuICByZWFkb25seSBwYWdlTnVtPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgaXRlbXMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucyBwZXIgcGFnZS5cbiAgICpcbiAgICogQHNjaGVtYSBsaXN0T3B0aW9ucyNJdGVtc1BlclBhZ2VcbiAgICovXG4gIHJlYWRvbmx5IGl0ZW1zUGVyUGFnZT86IG51bWJlcjtcblxuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSByZXNwb25zZSByZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgaXRlbXMgKHRvdGFsQ291bnQpIGluIHRoZSByZXNwb25zZS5cbiAgICpcbiAgICogQHNjaGVtYSBsaXN0T3B0aW9ucyNJbmNsdWRlQ291bnRcbiAgICovXG4gIHJlYWRvbmx5IGluY2x1ZGVDb3VudD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0xpc3RPcHRpb25zJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9MaXN0T3B0aW9ucyhcbiAgb2JqOiBMaXN0T3B0aW9ucyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFBhZ2VOdW06IG9iai5wYWdlTnVtLFxuICAgIEl0ZW1zUGVyUGFnZTogb2JqLml0ZW1zUGVyUGFnZSxcbiAgICBJbmNsdWRlQ291bnQ6IG9iai5pbmNsdWRlQ291bnQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpQcm9qZWN0SXBBY2Nlc3NMaXN0YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpQcm9qZWN0SXBBY2Nlc3NMaXN0XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0IGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OlByb2plY3RJcEFjY2Vzc0xpc3RcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6UHJvamVjdElwQWNjZXNzTGlzdC5Ub3RhbENvdW50YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJUb3RhbENvdW50OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlByb2plY3RJcEFjY2Vzc0xpc3RgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuUHJvamVjdElwQWNjZXNzTGlzdFByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuUHJvamVjdElwQWNjZXNzTGlzdC5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmblByb2plY3RJcEFjY2Vzc0xpc3RQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRyVG90YWxDb3VudCA9IGNkay5Ub2tlbi5hc051bWJlcih0aGlzLmdldEF0dChcIlRvdGFsQ291bnRcIikpO1xuICB9XG59XG4iXX0=

@@ -112,3 +112,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnProject[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProject", version: "3.7.2" };
CfnProject[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnProject", version: "3.8.0" };
/**

@@ -115,0 +115,0 @@ * The CloudFormation resource type name for this resource class.

@@ -69,3 +69,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnSearchDeployment[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnSearchDeployment", version: "3.7.2" };
CfnSearchDeployment[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnSearchDeployment", version: "3.8.0" };
/**

@@ -72,0 +72,0 @@ * The CloudFormation resource type name for this resource class.

@@ -135,3 +135,3 @@ import * as cdk from "aws-cdk-lib";

*/
readonly tokenizer?: any;
readonly tokenizer?: ApiAtlasFtsAnalyzersTokenizer;
}

@@ -138,0 +138,0 @@ /**

@@ -148,3 +148,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnSearchIndex[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnSearchIndex", version: "3.7.2" };
CfnSearchIndex[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnSearchIndex", version: "3.8.0" };
/**

@@ -154,2 +154,2 @@ * The CloudFormation resource type name for this resource class.

CfnSearchIndex.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::SearchIndex";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3NlYXJjaC1pbmRleC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUE4R25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLDBCQUEwQixDQUN4QyxHQUFvQztJQUVwQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtRQUN0QixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNsQyxxQ0FBcUMsQ0FBQyxDQUFDLENBQUMsQ0FDekM7UUFDRCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1FBQzVCLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztRQUNsQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLFFBQVEsRUFBRSxvQ0FBb0MsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzVELElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztRQUNsQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNoQyw4Q0FBOEMsQ0FBQyxDQUFDLENBQUMsQ0FDbEQ7UUFDRCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07S0FDbkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENB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Q0EwQ0M7OztBQXpDQzs7R0FFRztBQUNvQixxQ0FBc0IsR0FBRyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucywgYWRkcywgZWRpdHMsIGFuZCByZW1vdmVzIEF0bGFzIFNlYXJjaCBpbmRleGVzLiBBbHNvIHJldHVybnMgYW5kIHVwZGF0ZXMgdXNlci1kZWZpbmVkIGFuYWx5emVycy5cbiAqXG4gKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5TZWFyY2hJbmRleFByb3BzIHtcbiAgLyoqXG4gICAqIFNwZWNpZmljIHByZS1kZWZpbmVkIG1ldGhvZCBjaG9zZW4gdG8gY29udmVydCBkYXRhYmFzZSBmaWVsZCB0ZXh0IGludG8gc2VhcmNoYWJsZSB3b3Jkcy4gVGhpcyBjb252ZXJzaW9uIHJlZHVjZXMgdGhlIHRleHQgb2YgZmllbGRzIGludG8gdGhlIHNtYWxsZXN0IHVuaXRzIG9mIHRleHQuIFRoZXNlIHVuaXRzIGFyZSBjYWxsZWQgYSAqKnRlcm0qKiBvciAqKnRva2VuKiouIFRoaXMgcHJvY2Vzcywga25vd24gYXMgdG9rZW5pemF0aW9uLCBpbnZvbHZlcyBhIHZhcmlldHkgb2YgY2hhbmdlcyBtYWRlIHRvIHRoZSB0ZXh0IGluIGZpZWxkczpcbiAgICpcbiAgICogLSBleHRyYWN0aW5nIHdvcmRzXG4gICAqIC0gcmVtb3ZpbmcgcHVuY3R1YXRpb25cbiAgICogLSByZW1vdmluZyBhY2NlbnRzXG4gICAqIC0gY2hhbmdpbmcgdG8gbG93ZXJjYXNlXG4gICAqIC0gcmVtb3ZpbmcgY29tbW9uIHdvcmRzXG4gICAqIC0gcmVkdWNpbmcgd29yZHMgdG8gdGhlaXIgcm9vdCBmb3JtIChzdGVtbWluZylcbiAgICogLSBjaGFuZ2luZyB3b3JkcyB0byB0aGVpciBiYXNlIGZvcm0gKGxlbW1hdGl6YXRpb24pXG4gICAqIE1vbmdvREIgQ2xvdWQgdXNlcyB0aGUgc2VsZWN0ZWQgcHJvY2VzcyB0byBidWlsZCB0aGUgQXRsYXMgU2VhcmNoIGluZGV4LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHMjQW5hbHl6ZXJcbiAgICovXG4gIHJlYWRvbmx5IGFuYWx5emVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHVzZXItZGVmaW5lZCBtZXRob2RzIHRvIGNvbnZlcnQgZGF0YWJhc2UgZmllbGQgdGV4dCBpbnRvIHNlYXJjaGFibGUgd29yZHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNBbmFseXplcnNcbiAgICovXG4gIHJlYWRvbmx5IGFuYWx5emVycz86IEFwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGNsdXN0ZXIgdGhhdCBjb250YWlucyB0aGUgZGF0YWJhc2UgYW5kIGNvbGxlY3Rpb24gd2l0aCBvbmUgb3IgbW9yZSBBcHBsaWNhdGlvbiBTZWFyY2ggaW5kZXhlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0NsdXN0ZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNvbGxlY3Rpb24gdGhhdCBjb250YWlucyBvbmUgb3IgbW9yZSBBdGxhcyBTZWFyY2ggaW5kZXhlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0NvbGxlY3Rpb25OYW1lXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGFiYXNlIHRoYXQgY29udGFpbnMgdGhlIGNvbGxlY3Rpb24gd2l0aCBvbmUgb3IgbW9yZSBBdGxhcyBTZWFyY2ggaW5kZXhlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0RhdGFiYXNlXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kZXggc3BlY2lmaWNhdGlvbnMgZm9yIHRoZSBjb2xsZWN0aW9uJ3MgZmllbGRzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHMjTWFwcGluZ3NcbiAgICovXG4gIHJlYWRvbmx5IG1hcHBpbmdzPzogQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWw7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGlzIGluZGV4LiBXaXRoaW4gZWFjaCBuYW1lc3BhY2UsIG5hbWVzIG9mIGFsbCBpbmRleGVzIGluIHRoZSBuYW1lc3BhY2UgbXVzdCBiZSB1bmlxdWUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGluZGV4OiAqKnNlYXJjaCoqIG9yICoqdmVjdG9yU2VhcmNoKiouIERlZmF1bHQgdHlwZSBpcyAqKnNlYXJjaCoqLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHMjVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IHN0cmluZztcblxuICAvKipcbiAgICogTWV0aG9kIGFwcGxpZWQgdG8gaWRlbnRpZnkgd29yZHMgd2hlbiBzZWFyY2hpbmcgdGhpcyBpbmRleC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI1NlYXJjaEFuYWx5emVyXG4gICAqL1xuICByZWFkb25seSBzZWFyY2hBbmFseXplcj86IHN0cmluZztcblxuICAvKipcbiAgICogUnVsZSBzZXRzIHRoYXQgbWFwIHdvcmRzIHRvIHRoZWlyIHN5bm9ueW1zIGluIHRoaXMgaW5kZXguXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNTeW5vbnltc1xuICAgKi9cbiAgcmVhZG9ubHkgc3lub255bXM/OiBBcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXdbXTtcblxuICAvKipcbiAgICogQXJyYXkgb2YgW0ZpZWxkc10oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9hdGxhcy1zZWFyY2gvZmllbGQtdHlwZXMva25uLXZlY3Rvci8jc3RkLWxhYmVsLWZ0cy1kYXRhLXR5cGVzLWtubi12ZWN0b3IpIHRvIGNvbmZpZ3VyZSB0aGlzIHZlY3RvclNlYXJjaCBpbmRleC4gU3RyaW5naWZ5IGpzb24gcmVwcmVzZW50YXRpb24gb2YgZmllbGQgd2l0aCB0eXBlcyBhbmQgcHJvcGVydGllcy4gUmVxdWlyZWQgZm9yIHZlY3RvciBpbmRleGVzLiBJdCBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lICoqdmVjdG9yKiogdHlwZSBmaWVsZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0ZpZWxkc1xuICAgKi9cbiAgcmVhZG9ubHkgZmllbGRzPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5TZWFyY2hJbmRleFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5TZWFyY2hJbmRleFByb3BzKFxuICBvYmo6IENmblNlYXJjaEluZGV4UHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBBbmFseXplcjogb2JqLmFuYWx5emVyLFxuICAgIEFuYWx5emVyczogb2JqLmFuYWx5emVycz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX0FwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbCh5KVxuICAgICksXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgQ2x1c3Rlck5hbWU6IG9iai5jbHVzdGVyTmFtZSxcbiAgICBDb2xsZWN0aW9uTmFtZTogb2JqLmNvbGxlY3Rpb25OYW1lLFxuICAgIERhdGFiYXNlOiBvYmouZGF0YWJhc2UsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIE1hcHBpbmdzOiB0b0pzb25fQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwob2JqLm1hcHBpbmdzKSxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBTZWFyY2hBbmFseXplcjogb2JqLnNlYXJjaEFuYWx5emVyLFxuICAgIFN5bm9ueW1zOiBvYmouc3lub255bXM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9BcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcoeSlcbiAgICApLFxuICAgIEZpZWxkczogb2JqLmZpZWxkcyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1ZpZXdNYW51YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlBdGxhc0Z0c0FuYWx5emVyc1ZpZXdNYW51YWwge1xuICAvKipcbiAgICogRmlsdGVycyB0aGF0IGV4YW1pbmUgdGV4dCBvbmUgY2hhcmFjdGVyIGF0IGEgdGltZSBhbmQgcGVyZm9ybSBmaWx0ZXJpbmcgb3BlcmF0aW9ucy5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1ZpZXdNYW51YWwjQ2hhckZpbHRlcnNcbiAgICovXG4gIHJlYWRvbmx5IGNoYXJGaWx0ZXJzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIG5hbWUgdGhhdCBpZGVudGlmaWVzIHRoZSBjdXN0b20gYW5hbHl6ZXIuIE5hbWVzIG11c3QgYmUgdW5pcXVlIHdpdGhpbiBhbiBpbmRleCwgYW5kIG11c3Qgbm90IHN0YXJ0IHdpdGggYW55IG9mIHRoZSBmb2xsb3dpbmcgc3RyaW5nczpcbiAgICogLSBgbHVjZW5lLmBcbiAgICogLSBgYnVpbHRpbi5gXG4gICAqIC0gYG1vbmdvZGIuYFxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVmlld01hbnVhbCNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgdGhhdCBwZXJmb3JtcyBvcGVyYXRpb25zIHN1Y2ggYXM6XG4gICAqXG4gICAqIC0gU3RlbW1pbmcsIHdoaWNoIHJlZHVjZXMgcmVsYXRlZCB3b3Jkcywgc3VjaCBhcyBcInRhbGtpbmdcIiwgXCJ0YWxrZWRcIiwgYW5kIFwidGFsa3NcIiB0byB0aGVpciByb290IHdvcmQgXCJ0YWxrXCIuXG4gICAqXG4gICAqIC0gUmVkYWN0aW9uLCB0aGUgcmVtb3ZhbCBvZiBzZW5zaXRpdmUgaW5mb3JtYXRpb24gZnJvbSBwdWJsaWMgZG9jdW1lbnRzLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVmlld01hbnVhbCNUb2tlbkZpbHRlcnNcbiAgICovXG4gIHJlYWRvbmx5IHRva2VuRmlsdGVycz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUb2tlbml6ZXIgdGhhdCB5b3Ugd2FudCB0byB1c2UgdG8gY3JlYXRlIHRva2Vucy4gVG9rZW5zIGRldGVybWluZSBob3cgQXRsYXMgU2VhcmNoIHNwbGl0cyB1cCB0ZXh0IGludG8gZGlzY3JldGUgY2h1bmtzIGZvciBpbmRleGluZy5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1ZpZXdNYW51YWwjVG9rZW5pemVyXG4gICAqL1xuICByZWFkb25seSB0b2tlbml6ZXI/OiBhbnk7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0FwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXBpQXRsYXNGdHNBbmFseXplcnNWaWV3TWFudWFsKFxuICBvYmo6IEFwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENoYXJGaWx0ZXJzOiBvYmouY2hhckZpbHRlcnM/Lm1hcCgoeSkgPT4geSksXG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgVG9rZW5GaWx0ZXJzOiBvYmoudG9rZW5GaWx0ZXJzPy5tYXAoKHkpID0+IHkpLFxuICAgIFRva2VuaXplcjogdG9Kc29uX0FwaUF0bGFzRnRzQW5hbHl6ZXJzVG9rZW5pemVyKG9iai50b2tlbml6ZXIpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIEFwaUF0bGFzRlRTTWFwcGluZ3NWaWV3TWFudWFsXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwge1xuICAvKipcbiAgICogRmxhZyB0aGF0IGluZGljYXRlcyB3aGV0aGVyIHRoZSBpbmRleCB1c2VzIGR5bmFtaWMgb3Igc3RhdGljIG1hcHBpbmdzLiBSZXF1aXJlZCBmb3Igc2VhcmNoIGluZGV4ZXMgaWYgKiptYXBwaW5ncy5maWVsZHMqKiBpcyBvbWl0dGVkLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTTWFwcGluZ3NWaWV3TWFudWFsI0R5bmFtaWNcbiAgICovXG4gIHJlYWRvbmx5IGR5bmFtaWM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPbmUgb3IgbW9yZSBmaWVsZCBzcGVjaWZpY2F0aW9ucyBmb3IgdGhlIEF0bGFzIFNlYXJjaCBpbmRleC4gU3RyaW5naWZ5IGpzb24gcmVwcmVzZW50YXRpb24gb2YgZmllbGQgd2l0aCB0eXBlcyBhbmQgcHJvcGVydGllcy4gUmVxdWlyZWQgZm9yIHNlYXJjaCBpbmRleGVzIGlmICoqbWFwcGluZ3MuZHluYW1pYyoqIGlzIG9taXR0ZWQgb3Igc2V0IHRvICoqZmFsc2UqKi5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU01hcHBpbmdzVmlld01hbnVhbCNGaWVsZHNcbiAgICovXG4gIHJlYWRvbmx5IGZpZWxkcz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaUF0bGFzRnRzTWFwcGluZ3NWaWV3TWFudWFsKFxuICBvYmo6IEFwaUF0bGFzRnRzTWFwcGluZ3NWaWV3TWFudWFsIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRHluYW1pYzogb2JqLmR5bmFtaWMsXG4gICAgRmllbGRzOiBvYmouZmllbGRzLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIEFwaUF0bGFzRlRTU3lub255bU1hcHBpbmdEZWZpbml0aW9uVmlld1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwaUF0bGFzRnRzU3lub255bU1hcHBpbmdEZWZpbml0aW9uVmlldyB7XG4gIC8qKlxuICAgKiBTcGVjaWZpYyBwcmUtZGVmaW5lZCBtZXRob2QgY2hvc2VuIHRvIGFwcGx5IHRvIHRoZSBzeW5vbnltcyB0byBiZSBzZWFyY2hlZC5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcjQW5hbHl6ZXJcbiAgICovXG4gIHJlYWRvbmx5IGFuYWx5emVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc3lub255bSBkZWZpbml0aW9uLiBFYWNoICoqc3lub255bS5uYW1lKiogbXVzdCBiZSB1bmlxdWUgd2l0aGluIHRoZSBzYW1lIGluZGV4IGRlZmluaXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNTeW5vbnltTWFwcGluZ0RlZmluaXRpb25WaWV3I05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogRGF0YSBzZXQgdGhhdCBzdG9yZXMgdGhlIG1hcHBpbmcgb25lIG9yIG1vcmUgd29yZHMgbWFwIHRvIG9uZSBvciBtb3JlIHN5bm9ueW1zIG9mIHRob3NlIHdvcmRzLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTU3lub255bU1hcHBpbmdEZWZpbml0aW9uVmlldyNTb3VyY2VcbiAgICovXG4gIHJlYWRvbmx5IHNvdXJjZTogU3lub255bVNvdXJjZTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpQXRsYXNGdHNTeW5vbnltTWFwcGluZ0RlZmluaXRpb25WaWV3JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9BcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcoXG4gIG9iajogQXBpQXRsYXNGdHNTeW5vbnltTWFwcGluZ0RlZmluaXRpb25WaWV3IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQW5hbHl6ZXI6IG9iai5hbmFseXplcixcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBTb3VyY2U6IHRvSnNvbl9TeW5vbnltU291cmNlKG9iai5zb3VyY2UpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBUb2tlbml6ZXIgdGhhdCB5b3Ugd2FudCB0byB1c2UgdG8gY3JlYXRlIHRva2Vucy4gVG9rZW5zIGRldGVybWluZSBob3cgQXRsYXMgU2VhcmNoIHNwbGl0cyB1cCB0ZXh0IGludG8gZGlzY3JldGUgY2h1bmtzIGZvciBpbmRleGluZy5cbiAqXG4gKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVG9rZW5pemVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpQXRsYXNGdHNBbmFseXplcnNUb2tlbml6ZXIge1xuICAvKipcbiAgICogQ2hhcmFjdGVycyB0byBpbmNsdWRlIGluIHRoZSBsb25nZXN0IHRva2VuIHRoYXQgQXRsYXMgU2VhcmNoIGNyZWF0ZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNBbmFseXplcnNUb2tlbml6ZXIjTWF4R3JhbVxuICAgKi9cbiAgcmVhZG9ubHkgbWF4R3JhbT86IG51bWJlcjtcblxuICAvKipcbiAgICogQ2hhcmFjdGVycyB0byBpbmNsdWRlIGluIHRoZSBzaG9ydGVzdCB0b2tlbiB0aGF0IEF0bGFzIFNlYXJjaCBjcmVhdGVzLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVG9rZW5pemVyI01pbkdyYW1cbiAgICovXG4gIHJlYWRvbmx5IG1pbkdyYW0/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGlzIHRva2VuaXplciB0eXBlLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVG9rZW5pemVyI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEluZGV4IG9mIHRoZSBjaGFyYWN0ZXIgZ3JvdXAgd2l0aGluIHRoZSBtYXRjaGluZyBleHByZXNzaW9uIHRvIGV4dHJhY3QgaW50byB0b2tlbnMuIFVzZSBgMGAgdG8gZXh0cmFjdCBhbGwgY2hhcmFjdGVyIGdyb3Vwcy5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1Rva2VuaXplciNHcm91cFxuICAgKi9cbiAgcmVhZG9ubHkgZ3JvdXA/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFJlZ3VsYXIgZXhwcmVzc2lvbiB0byBtYXRjaCBhZ2FpbnN0LlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVG9rZW5pemVyI1BhdHRlcm5cbiAgICovXG4gIHJlYWRvbmx5IHBhdHRlcm4/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1heGltdW0gbnVtYmVyIG9mIGNoYXJhY3RlcnMgaW4gYSBzaW5nbGUgdG9rZW4uIFRva2VucyBncmVhdGVyIHRoYW4gdGhpcyBsZW5ndGggYXJlIHNwbGl0IGF0IHRoaXMgbGVuZ3RoIGludG8gbXVsdGlwbGUgdG9rZW5zLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVG9rZW5pemVyI01heFRva2VuTGVuZ3RoXG4gICAqL1xuICByZWFkb25seSBtYXhUb2tlbkxlbmd0aD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpQXRsYXNGdHNBbmFseXplcnNUb2tlbml6ZXInIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaUF0bGFzRnRzQW5hbHl6ZXJzVG9rZW5pemVyKFxuICBvYmo6IEFwaUF0bGFzRnRzQW5hbHl6ZXJzVG9rZW5pemVyIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgTWF4R3JhbTogb2JqLm1heEdyYW0sXG4gICAgTWluR3JhbTogb2JqLm1pbkdyYW0sXG4gICAgVHlwZTogb2JqLnR5cGUsXG4gICAgR3JvdXA6IG9iai5ncm91cCxcbiAgICBQYXR0ZXJuOiBvYmoucGF0dGVybixcbiAgICBNYXhUb2tlbkxlbmd0aDogb2JqLm1heFRva2VuTGVuZ3RoLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFN5bm9ueW1Tb3VyY2VcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTeW5vbnltU291cmNlIHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgTW9uZ29EQiBjb2xsZWN0aW9uIHRoYXQgc3RvcmVzIHdvcmRzIGFuZCB0aGVpciBhcHBsaWNhYmxlIHN5bm9ueW1zLlxuICAgKlxuICAgKiBAc2NoZW1hIFN5bm9ueW1Tb3VyY2UjQ29sbGVjdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbjogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTeW5vbnltU291cmNlJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TeW5vbnltU291cmNlKFxuICBvYmo6IFN5bm9ueW1Tb3VyY2UgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDb2xsZWN0aW9uOiBvYmouY29sbGVjdGlvbixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlNlYXJjaEluZGV4YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpTZWFyY2hJbmRleFxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuU2VhcmNoSW5kZXggZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9IFwiTW9uZ29EQjo6QXRsYXM6OlNlYXJjaEluZGV4XCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5TZWFyY2hJbmRleFByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpTZWFyY2hJbmRleC5JbmRleElkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJbmRleElkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpTZWFyY2hJbmRleC5TdGF0dXNgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clN0YXR1czogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpTZWFyY2hJbmRleGAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5TZWFyY2hJbmRleFByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuU2VhcmNoSW5kZXguQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5TZWFyY2hJbmRleFByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJbmRleElkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSW5kZXhJZFwiKSk7XG4gICAgdGhpcy5hdHRyU3RhdHVzID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdHVzXCIpKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3NlYXJjaC1pbmRleC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUE4R25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLDBCQUEwQixDQUN4QyxHQUFvQztJQUVwQyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtRQUN0QixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNsQyxxQ0FBcUMsQ0FBQyxDQUFDLENBQUMsQ0FDekM7UUFDRCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1FBQzVCLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztRQUNsQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLFFBQVEsRUFBRSxvQ0FBb0MsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQzVELElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtRQUNkLGNBQWMsRUFBRSxHQUFHLENBQUMsY0FBYztRQUNsQyxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUNoQyw4Q0FBOEMsQ0FBQyxDQUFDLENBQUMsQ0FDbEQ7UUFDRCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07S0FDbkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENB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Q0EwQ0M7OztBQXpDQzs7R0FFRztBQUNvQixxQ0FBc0IsR0FBRyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogUmV0dXJucywgYWRkcywgZWRpdHMsIGFuZCByZW1vdmVzIEF0bGFzIFNlYXJjaCBpbmRleGVzLiBBbHNvIHJldHVybnMgYW5kIHVwZGF0ZXMgdXNlci1kZWZpbmVkIGFuYWx5emVycy5cbiAqXG4gKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5TZWFyY2hJbmRleFByb3BzIHtcbiAgLyoqXG4gICAqIFNwZWNpZmljIHByZS1kZWZpbmVkIG1ldGhvZCBjaG9zZW4gdG8gY29udmVydCBkYXRhYmFzZSBmaWVsZCB0ZXh0IGludG8gc2VhcmNoYWJsZSB3b3Jkcy4gVGhpcyBjb252ZXJzaW9uIHJlZHVjZXMgdGhlIHRleHQgb2YgZmllbGRzIGludG8gdGhlIHNtYWxsZXN0IHVuaXRzIG9mIHRleHQuIFRoZXNlIHVuaXRzIGFyZSBjYWxsZWQgYSAqKnRlcm0qKiBvciAqKnRva2VuKiouIFRoaXMgcHJvY2Vzcywga25vd24gYXMgdG9rZW5pemF0aW9uLCBpbnZvbHZlcyBhIHZhcmlldHkgb2YgY2hhbmdlcyBtYWRlIHRvIHRoZSB0ZXh0IGluIGZpZWxkczpcbiAgICpcbiAgICogLSBleHRyYWN0aW5nIHdvcmRzXG4gICAqIC0gcmVtb3ZpbmcgcHVuY3R1YXRpb25cbiAgICogLSByZW1vdmluZyBhY2NlbnRzXG4gICAqIC0gY2hhbmdpbmcgdG8gbG93ZXJjYXNlXG4gICAqIC0gcmVtb3ZpbmcgY29tbW9uIHdvcmRzXG4gICAqIC0gcmVkdWNpbmcgd29yZHMgdG8gdGhlaXIgcm9vdCBmb3JtIChzdGVtbWluZylcbiAgICogLSBjaGFuZ2luZyB3b3JkcyB0byB0aGVpciBiYXNlIGZvcm0gKGxlbW1hdGl6YXRpb24pXG4gICAqIE1vbmdvREIgQ2xvdWQgdXNlcyB0aGUgc2VsZWN0ZWQgcHJvY2VzcyB0byBidWlsZCB0aGUgQXRsYXMgU2VhcmNoIGluZGV4LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHMjQW5hbHl6ZXJcbiAgICovXG4gIHJlYWRvbmx5IGFuYWx5emVyPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IG9mIHVzZXItZGVmaW5lZCBtZXRob2RzIHRvIGNvbnZlcnQgZGF0YWJhc2UgZmllbGQgdGV4dCBpbnRvIHNlYXJjaGFibGUgd29yZHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNBbmFseXplcnNcbiAgICovXG4gIHJlYWRvbmx5IGFuYWx5emVycz86IEFwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGNsdXN0ZXIgdGhhdCBjb250YWlucyB0aGUgZGF0YWJhc2UgYW5kIGNvbGxlY3Rpb24gd2l0aCBvbmUgb3IgbW9yZSBBcHBsaWNhdGlvbiBTZWFyY2ggaW5kZXhlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0NsdXN0ZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBjbHVzdGVyTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNvbGxlY3Rpb24gdGhhdCBjb250YWlucyBvbmUgb3IgbW9yZSBBdGxhcyBTZWFyY2ggaW5kZXhlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0NvbGxlY3Rpb25OYW1lXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGRhdGFiYXNlIHRoYXQgY29udGFpbnMgdGhlIGNvbGxlY3Rpb24gd2l0aCBvbmUgb3IgbW9yZSBBdGxhcyBTZWFyY2ggaW5kZXhlcy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0RhdGFiYXNlXG4gICAqL1xuICByZWFkb25seSBkYXRhYmFzZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kZXggc3BlY2lmaWNhdGlvbnMgZm9yIHRoZSBjb2xsZWN0aW9uJ3MgZmllbGRzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHMjTWFwcGluZ3NcbiAgICovXG4gIHJlYWRvbmx5IG1hcHBpbmdzPzogQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWw7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGlzIGluZGV4LiBXaXRoaW4gZWFjaCBuYW1lc3BhY2UsIG5hbWVzIG9mIGFsbCBpbmRleGVzIGluIHRoZSBuYW1lc3BhY2UgbXVzdCBiZSB1bmlxdWUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUeXBlIG9mIGluZGV4OiAqKnNlYXJjaCoqIG9yICoqdmVjdG9yU2VhcmNoKiouIERlZmF1bHQgdHlwZSBpcyAqKnNlYXJjaCoqLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlYXJjaEluZGV4UHJvcHMjVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IHN0cmluZztcblxuICAvKipcbiAgICogTWV0aG9kIGFwcGxpZWQgdG8gaWRlbnRpZnkgd29yZHMgd2hlbiBzZWFyY2hpbmcgdGhpcyBpbmRleC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI1NlYXJjaEFuYWx5emVyXG4gICAqL1xuICByZWFkb25seSBzZWFyY2hBbmFseXplcj86IHN0cmluZztcblxuICAvKipcbiAgICogUnVsZSBzZXRzIHRoYXQgbWFwIHdvcmRzIHRvIHRoZWlyIHN5bm9ueW1zIGluIHRoaXMgaW5kZXguXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VhcmNoSW5kZXhQcm9wcyNTeW5vbnltc1xuICAgKi9cbiAgcmVhZG9ubHkgc3lub255bXM/OiBBcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXdbXTtcblxuICAvKipcbiAgICogQXJyYXkgb2YgW0ZpZWxkc10oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9hdGxhcy1zZWFyY2gvZmllbGQtdHlwZXMva25uLXZlY3Rvci8jc3RkLWxhYmVsLWZ0cy1kYXRhLXR5cGVzLWtubi12ZWN0b3IpIHRvIGNvbmZpZ3VyZSB0aGlzIHZlY3RvclNlYXJjaCBpbmRleC4gU3RyaW5naWZ5IGpzb24gcmVwcmVzZW50YXRpb24gb2YgZmllbGQgd2l0aCB0eXBlcyBhbmQgcHJvcGVydGllcy4gUmVxdWlyZWQgZm9yIHZlY3RvciBpbmRleGVzLiBJdCBtdXN0IGNvbnRhaW4gYXQgbGVhc3Qgb25lICoqdmVjdG9yKiogdHlwZSBmaWVsZC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZWFyY2hJbmRleFByb3BzI0ZpZWxkc1xuICAgKi9cbiAgcmVhZG9ubHkgZmllbGRzPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5TZWFyY2hJbmRleFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5TZWFyY2hJbmRleFByb3BzKFxuICBvYmo6IENmblNlYXJjaEluZGV4UHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBBbmFseXplcjogb2JqLmFuYWx5emVyLFxuICAgIEFuYWx5emVyczogb2JqLmFuYWx5emVycz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX0FwaUF0bGFzRnRzQW5hbHl6ZXJzVmlld01hbnVhbCh5KVxuICAgICksXG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgQ2x1c3Rlck5hbWU6IG9iai5jbHVzdGVyTmFtZSxcbiAgICBDb2xsZWN0aW9uTmFtZTogb2JqLmNvbGxlY3Rpb25OYW1lLFxuICAgIERhdGFiYXNlOiBvYmouZGF0YWJhc2UsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIE1hcHBpbmdzOiB0b0pzb25fQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwob2JqLm1hcHBpbmdzKSxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBTZWFyY2hBbmFseXplcjogb2JqLnNlYXJjaEFuYWx5emVyLFxuICAgIFN5bm9ueW1zOiBvYmouc3lub255bXM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9BcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcoeSlcbiAgICApLFxuICAgIEZpZWxkczogb2JqLmZpZWxkcyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1ZpZXdNYW51YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlBdGxhc0Z0c0FuYWx5emVyc1ZpZXdNYW51YWwge1xuICAvKipcbiAgICogRmlsdGVycyB0aGF0IGV4YW1pbmUgdGV4dCBvbmUgY2hhcmFjdGVyIGF0IGEgdGltZSBhbmQgcGVyZm9ybSBmaWx0ZXJpbmcgb3BlcmF0aW9ucy5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1ZpZXdNYW51YWwjQ2hhckZpbHRlcnNcbiAgICovXG4gIHJlYWRvbmx5IGNoYXJGaWx0ZXJzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIG5hbWUgdGhhdCBpZGVudGlmaWVzIHRoZSBjdXN0b20gYW5hbHl6ZXIuIE5hbWVzIG11c3QgYmUgdW5pcXVlIHdpdGhpbiBhbiBpbmRleCwgYW5kIG11c3Qgbm90IHN0YXJ0IHdpdGggYW55IG9mIHRoZSBmb2xsb3dpbmcgc3RyaW5nczpcbiAgICogLSBgbHVjZW5lLmBcbiAgICogLSBgYnVpbHRpbi5gXG4gICAqIC0gYG1vbmdvZGIuYFxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVmlld01hbnVhbCNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBGaWx0ZXIgdGhhdCBwZXJmb3JtcyBvcGVyYXRpb25zIHN1Y2ggYXM6XG4gICAqXG4gICAqIC0gU3RlbW1pbmcsIHdoaWNoIHJlZHVjZXMgcmVsYXRlZCB3b3Jkcywgc3VjaCBhcyBcInRhbGtpbmdcIiwgXCJ0YWxrZWRcIiwgYW5kIFwidGFsa3NcIiB0byB0aGVpciByb290IHdvcmQgXCJ0YWxrXCIuXG4gICAqXG4gICAqIC0gUmVkYWN0aW9uLCB0aGUgcmVtb3ZhbCBvZiBzZW5zaXRpdmUgaW5mb3JtYXRpb24gZnJvbSBwdWJsaWMgZG9jdW1lbnRzLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVmlld01hbnVhbCNUb2tlbkZpbHRlcnNcbiAgICovXG4gIHJlYWRvbmx5IHRva2VuRmlsdGVycz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBUb2tlbml6ZXIgdGhhdCB5b3Ugd2FudCB0byB1c2UgdG8gY3JlYXRlIHRva2Vucy4gVG9rZW5zIGRldGVybWluZSBob3cgQXRsYXMgU2VhcmNoIHNwbGl0cyB1cCB0ZXh0IGludG8gZGlzY3JldGUgY2h1bmtzIGZvciBpbmRleGluZy5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1ZpZXdNYW51YWwjVG9rZW5pemVyXG4gICAqL1xuICByZWFkb25seSB0b2tlbml6ZXI/OiBBcGlBdGxhc0Z0c0FuYWx5emVyc1Rva2VuaXplcjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXBpQXRsYXNGdHNBbmFseXplcnNWaWV3TWFudWFsJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9BcGlBdGxhc0Z0c0FuYWx5emVyc1ZpZXdNYW51YWwoXG4gIG9iajogQXBpQXRsYXNGdHNBbmFseXplcnNWaWV3TWFudWFsIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2hhckZpbHRlcnM6IG9iai5jaGFyRmlsdGVycz8ubWFwKCh5KSA9PiB5KSxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUb2tlbkZpbHRlcnM6IG9iai50b2tlbkZpbHRlcnM/Lm1hcCgoeSkgPT4geSksXG4gICAgVG9rZW5pemVyOiB0b0pzb25fQXBpQXRsYXNGdHNBbmFseXplcnNUb2tlbml6ZXIob2JqLnRva2VuaXplciksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQXBpQXRsYXNGVFNNYXBwaW5nc1ZpZXdNYW51YWxcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlBdGxhc0Z0c01hcHBpbmdzVmlld01hbnVhbCB7XG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIGluZGV4IHVzZXMgZHluYW1pYyBvciBzdGF0aWMgbWFwcGluZ3MuIFJlcXVpcmVkIGZvciBzZWFyY2ggaW5kZXhlcyBpZiAqKm1hcHBpbmdzLmZpZWxkcyoqIGlzIG9taXR0ZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNNYXBwaW5nc1ZpZXdNYW51YWwjRHluYW1pY1xuICAgKi9cbiAgcmVhZG9ubHkgZHluYW1pYz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE9uZSBvciBtb3JlIGZpZWxkIHNwZWNpZmljYXRpb25zIGZvciB0aGUgQXRsYXMgU2VhcmNoIGluZGV4LiBTdHJpbmdpZnkganNvbiByZXByZXNlbnRhdGlvbiBvZiBmaWVsZCB3aXRoIHR5cGVzIGFuZCBwcm9wZXJ0aWVzLiBSZXF1aXJlZCBmb3Igc2VhcmNoIGluZGV4ZXMgaWYgKiptYXBwaW5ncy5keW5hbWljKiogaXMgb21pdHRlZCBvciBzZXQgdG8gKipmYWxzZSoqLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTTWFwcGluZ3NWaWV3TWFudWFsI0ZpZWxkc1xuICAgKi9cbiAgcmVhZG9ubHkgZmllbGRzPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBcGlBdGxhc0Z0c01hcHBpbmdzVmlld01hbnVhbCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwoXG4gIG9iajogQXBpQXRsYXNGdHNNYXBwaW5nc1ZpZXdNYW51YWwgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBEeW5hbWljOiBvYmouZHluYW1pYyxcbiAgICBGaWVsZHM6IG9iai5maWVsZHMsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgQXBpQXRsYXNGVFNTeW5vbnltTWFwcGluZ0RlZmluaXRpb25WaWV3XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBpQXRsYXNGdHNTeW5vbnltTWFwcGluZ0RlZmluaXRpb25WaWV3IHtcbiAgLyoqXG4gICAqIFNwZWNpZmljIHByZS1kZWZpbmVkIG1ldGhvZCBjaG9zZW4gdG8gYXBwbHkgdG8gdGhlIHN5bm9ueW1zIHRvIGJlIHNlYXJjaGVkLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTU3lub255bU1hcHBpbmdEZWZpbml0aW9uVmlldyNBbmFseXplclxuICAgKi9cbiAgcmVhZG9ubHkgYW5hbHl6ZXI6IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBzeW5vbnltIGRlZmluaXRpb24uIEVhY2ggKipzeW5vbnltLm5hbWUqKiBtdXN0IGJlIHVuaXF1ZSB3aXRoaW4gdGhlIHNhbWUgaW5kZXggZGVmaW5pdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEYXRhIHNldCB0aGF0IHN0b3JlcyB0aGUgbWFwcGluZyBvbmUgb3IgbW9yZSB3b3JkcyBtYXAgdG8gb25lIG9yIG1vcmUgc3lub255bXMgb2YgdGhvc2Ugd29yZHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNTeW5vbnltTWFwcGluZ0RlZmluaXRpb25WaWV3I1NvdXJjZVxuICAgKi9cbiAgcmVhZG9ubHkgc291cmNlOiBTeW5vbnltU291cmNlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0FwaUF0bGFzRnRzU3lub255bU1hcHBpbmdEZWZpbml0aW9uVmlldyhcbiAgb2JqOiBBcGlBdGxhc0Z0c1N5bm9ueW1NYXBwaW5nRGVmaW5pdGlvblZpZXcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBBbmFseXplcjogb2JqLmFuYWx5emVyLFxuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIFNvdXJjZTogdG9Kc29uX1N5bm9ueW1Tb3VyY2Uob2JqLnNvdXJjZSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIFRva2VuaXplciB0aGF0IHlvdSB3YW50IHRvIHVzZSB0byBjcmVhdGUgdG9rZW5zLiBUb2tlbnMgZGV0ZXJtaW5lIGhvdyBBdGxhcyBTZWFyY2ggc3BsaXRzIHVwIHRleHQgaW50byBkaXNjcmV0ZSBjaHVua3MgZm9yIGluZGV4aW5nLlxuICpcbiAqIEBzY2hlbWEgQXBpQXRsYXNGVFNBbmFseXplcnNUb2tlbml6ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcGlBdGxhc0Z0c0FuYWx5emVyc1Rva2VuaXplciB7XG4gIC8qKlxuICAgKiBDaGFyYWN0ZXJzIHRvIGluY2x1ZGUgaW4gdGhlIGxvbmdlc3QgdG9rZW4gdGhhdCBBdGxhcyBTZWFyY2ggY3JlYXRlcy5cbiAgICpcbiAgICogQHNjaGVtYSBBcGlBdGxhc0ZUU0FuYWx5emVyc1Rva2VuaXplciNNYXhHcmFtXG4gICAqL1xuICByZWFkb25seSBtYXhHcmFtPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBDaGFyYWN0ZXJzIHRvIGluY2x1ZGUgaW4gdGhlIHNob3J0ZXN0IHRva2VuIHRoYXQgQXRsYXMgU2VhcmNoIGNyZWF0ZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNBbmFseXplcnNUb2tlbml6ZXIjTWluR3JhbVxuICAgKi9cbiAgcmVhZG9ubHkgbWluR3JhbT86IG51bWJlcjtcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoaXMgdG9rZW5pemVyIHR5cGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNBbmFseXplcnNUb2tlbml6ZXIjVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IHN0cmluZztcblxuICAvKipcbiAgICogSW5kZXggb2YgdGhlIGNoYXJhY3RlciBncm91cCB3aXRoaW4gdGhlIG1hdGNoaW5nIGV4cHJlc3Npb24gdG8gZXh0cmFjdCBpbnRvIHRva2Vucy4gVXNlIGAwYCB0byBleHRyYWN0IGFsbCBjaGFyYWN0ZXIgZ3JvdXBzLlxuICAgKlxuICAgKiBAc2NoZW1hIEFwaUF0bGFzRlRTQW5hbHl6ZXJzVG9rZW5pemVyI0dyb3VwXG4gICAqL1xuICByZWFkb25seSBncm91cD86IG51bWJlcjtcblxuICAvKipcbiAgICogUmVndWxhciBleHByZXNzaW9uIHRvIG1hdGNoIGFnYWluc3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNBbmFseXplcnNUb2tlbml6ZXIjUGF0dGVyblxuICAgKi9cbiAgcmVhZG9ubHkgcGF0dGVybj86IHN0cmluZztcblxuICAvKipcbiAgICogTWF4aW11bSBudW1iZXIgb2YgY2hhcmFjdGVycyBpbiBhIHNpbmdsZSB0b2tlbi4gVG9rZW5zIGdyZWF0ZXIgdGhhbiB0aGlzIGxlbmd0aCBhcmUgc3BsaXQgYXQgdGhpcyBsZW5ndGggaW50byBtdWx0aXBsZSB0b2tlbnMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXBpQXRsYXNGVFNBbmFseXplcnNUb2tlbml6ZXIjTWF4VG9rZW5MZW5ndGhcbiAgICovXG4gIHJlYWRvbmx5IG1heFRva2VuTGVuZ3RoPzogbnVtYmVyO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdBcGlBdGxhc0Z0c0FuYWx5emVyc1Rva2VuaXplcicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXBpQXRsYXNGdHNBbmFseXplcnNUb2tlbml6ZXIoXG4gIG9iajogQXBpQXRsYXNGdHNBbmFseXplcnNUb2tlbml6ZXIgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBNYXhHcmFtOiBvYmoubWF4R3JhbSxcbiAgICBNaW5HcmFtOiBvYmoubWluR3JhbSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBHcm91cDogb2JqLmdyb3VwLFxuICAgIFBhdHRlcm46IG9iai5wYXR0ZXJuLFxuICAgIE1heFRva2VuTGVuZ3RoOiBvYmoubWF4VG9rZW5MZW5ndGgsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgU3lub255bVNvdXJjZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN5bm9ueW1Tb3VyY2Uge1xuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBNb25nb0RCIGNvbGxlY3Rpb24gdGhhdCBzdG9yZXMgd29yZHMgYW5kIHRoZWlyIGFwcGxpY2FibGUgc3lub255bXMuXG4gICAqXG4gICAqIEBzY2hlbWEgU3lub255bVNvdXJjZSNDb2xsZWN0aW9uXG4gICAqL1xuICByZWFkb25seSBjb2xsZWN0aW9uOiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N5bm9ueW1Tb3VyY2UnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1N5bm9ueW1Tb3VyY2UoXG4gIG9iajogU3lub255bVNvdXJjZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENvbGxlY3Rpb246IG9iai5jb2xsZWN0aW9uLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6U2VhcmNoSW5kZXhgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OlNlYXJjaEluZGV4XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5TZWFyY2hJbmRleCBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID0gXCJNb25nb0RCOjpBdGxhczo6U2VhcmNoSW5kZXhcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblNlYXJjaEluZGV4UHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlYXJjaEluZGV4LkluZGV4SWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckluZGV4SWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlYXJjaEluZGV4LlN0YXR1c2BcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyU3RhdHVzOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlNlYXJjaEluZGV4YC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblNlYXJjaEluZGV4UHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5TZWFyY2hJbmRleC5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0NmblNlYXJjaEluZGV4UHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0ckluZGV4SWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJbmRleElkXCIpKTtcbiAgICB0aGlzLmF0dHJTdGF0dXMgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJTdGF0dXNcIikpO1xuICB9XG59XG4iXX0=

@@ -150,3 +150,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnServerlessInstance[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnServerlessInstance", version: "3.7.2" };
CfnServerlessInstance[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnServerlessInstance", version: "3.8.0" };
/**

@@ -156,2 +156,2 @@ * The CloudFormation resource type name for this resource class.

CfnServerlessInstance.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::ServerlessInstance";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3NlcnZlcmxlc3MtaW5zdGFuY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBZ0ZuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixpQ0FBaUMsQ0FDL0MsR0FBMkM7SUFFM0MsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixpQkFBaUIsRUFBRSwwQ0FBMEMsQ0FDM0QsR0FBRyxDQUFDLGlCQUFpQixDQUN0QjtRQUNELHVCQUF1QixFQUFFLEdBQUcsQ0FBQyx1QkFBdUI7UUFDcEQsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLGdCQUFnQixFQUFFLHlDQUF5QyxDQUN6RCxHQUFHLENBQUMsZ0JBQWdCLENBQ3JCO1FBQ0QsNEJBQTRCLEVBQUUsR0FBRyxDQUFDLDRCQUE0QjtRQUM5RCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87S0FDckIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVB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QztRQUVqQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxzQkFBc0I7WUFDbEQsVUFBVSxFQUFFLGlDQUFpQyxDQUFDLEtBQUssQ0FBRTtTQUN0RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7QUF6REgsc0RBMERDOzs7QUF6REM7O0dBRUc7QUFDb0IsNENBQXNCLEdBQzNDLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgc2VydmVybGVzcyBpbnN0YW5jZXMuXG4gKlxuICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIENvbGxlY3Rpb24gb2YgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9ycyB0aGF0IHBvaW50IHRvIHRoZSBNb25nb0RCIGRhdGFiYXNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzI0Nvbm5lY3Rpb25TdHJpbmdzXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uU3RyaW5ncz86IFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHNlcnZlcmxlc3MgaW5zdGFuY2VzIHVzZXMgU2VydmVybGVzcyBDb250aW51b3VzIEJhY2t1cC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgZmFsc2UsIHRoZSBzZXJ2ZXJsZXNzIGluc3RhbmNlIHVzZXMgQmFzaWMgQmFja3VwLiB8IE9wdGlvbiB8IERlc2NyaXB0aW9uIHwgfC0tLXwtLS18IHwgU2VydmVybGVzcyBDb250aW51b3VzIEJhY2t1cCB8IEF0bGFzIHRha2VzIGluY3JlbWVudGFsIHNuYXBzaG90cyBvZiB0aGUgZGF0YSBpbiB5b3VyIHNlcnZlcmxlc3MgaW5zdGFuY2UgZXZlcnkgc2l4IGhvdXJzIGFuZCBsZXRzIHlvdSByZXN0b3JlIHRoZSBkYXRhIGZyb20gYSBzZWxlY3RlZCBwb2ludCBpbiB0aW1lIHdpdGhpbiB0aGUgbGFzdCA3MiBob3Vycy4gQXRsYXMgYWxzbyB0YWtlcyBkYWlseSBzbmFwc2hvdHMgYW5kIHJldGFpbnMgdGhlc2UgZGFpbHkgc25hcHNob3RzIGZvciAzNSBkYXlzLiBUbyBsZWFybiBtb3JlLCBzZWUgU2VydmVybGVzcyBJbnN0YW5jZSBDb3N0cy4gfCB8IEJhc2ljIEJhY2t1cCB8IEF0bGFzIHRha2VzIGluY3JlbWVudGFsIHNuYXBzaG90cyBvZiB0aGUgZGF0YSBpbiB5b3VyIHNlcnZlcmxlc3MgaW5zdGFuY2UgZXZlcnkgc2l4IGhvdXJzIGFuZCByZXRhaW5zIG9ubHkgdGhlIHR3byBtb3N0IHJlY2VudCBzbmFwc2hvdHMuIFlvdSBjYW4gdXNlIHRoaXMgb3B0aW9uIGZvciBmcmVlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzI0NvbnRpbnVvdXNCYWNrdXBFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBjb250aW51b3VzQmFja3VwRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgcmVzcG9uc2UgcmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zICgqKnRvdGFsQ291bnQqKikgaW4gdGhlIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzI0luY2x1ZGVDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW5jbHVkZUNvdW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgdGhlIHJlc3BvbnNlIHJldHVybnMgcGVyIHBhZ2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjSXRlbXNQZXJQYWdlXG4gICAqL1xuICByZWFkb25seSBpdGVtc1BlclBhZ2U/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc2VydmVybGVzcyBpbnN0YW5jZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGhlIHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgY3VycmVudCBzZXQgb2YgdGhlIHRvdGFsIG9iamVjdHMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyNQYWdlTnVtXG4gICAqL1xuICByZWFkb25seSBwYWdlTnVtPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjUHJvamVjdElEXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyb3VwIG9mIHNldHRpbmdzIHRoYXQgY29uZmlndXJlIHRoZSBwcm92aXNpb25lZCBNb25nb0RCIHNlcnZlcmxlc3MgaW5zdGFuY2UuIFRoZSBvcHRpb25zIGF2YWlsYWJsZSByZWxhdGUgdG8gdGhlIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjUHJvdmlkZXJTZXR0aW5nc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJTZXR0aW5ncz86IFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3M7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0ZXJtaW5hdGlvbiBwcm90ZWN0aW9uIGlzIGVuYWJsZWQgb24gdGhlIHNlcnZlcmxlc3MgaW5zdGFuY2UuIElmIHNldCB0byB0cnVlLCBNb25nb0RCIENsb3VkIHdvbid0IGRlbGV0ZSB0aGUgc2VydmVybGVzcyBpbnN0YW5jZS4gSWYgc2V0IHRvIGZhbHNlLCBNb25nb0RCIGNsb3VkIHdpbGwgZGVsZXRlIHRoZSBzZXJ2ZXJsZXNzIGluc3RhbmNlLlwiXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjVGVybWluYXRpb25Qcm90ZWN0aW9uRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgdGVybWluYXRpb25Qcm90ZWN0aW9uRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFByb2ZpbGUgdXNlZCB0byBwcm92aWRlIGNyZWRlbnRpYWxzIGluZm9ybWF0aW9uLCAoYSBzZWNyZXQgd2l0aCB0aGUgY2ZuL2F0bGFzL3Byb2ZpbGUve1Byb2ZpbGV9LCBpcyByZXF1aXJlZCksIGlmIG5vdCBwcm92aWRlZCBkZWZhdWx0IGlzIHVzZWRcbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMoXG4gIG9iajogQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDb25uZWN0aW9uU3RyaW5nczogdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzKFxuICAgICAgb2JqLmNvbm5lY3Rpb25TdHJpbmdzXG4gICAgKSxcbiAgICBDb250aW51b3VzQmFja3VwRW5hYmxlZDogb2JqLmNvbnRpbnVvdXNCYWNrdXBFbmFibGVkLFxuICAgIEluY2x1ZGVDb3VudDogb2JqLmluY2x1ZGVDb3VudCxcbiAgICBJdGVtc1BlclBhZ2U6IG9iai5pdGVtc1BlclBhZ2UsXG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgUGFnZU51bTogb2JqLnBhZ2VOdW0sXG4gICAgUHJvamVjdElEOiBvYmoucHJvamVjdElkLFxuICAgIFByb3ZpZGVyU2V0dGluZ3M6IHRvSnNvbl9TZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzKFxuICAgICAgb2JqLnByb3ZpZGVyU2V0dGluZ3NcbiAgICApLFxuICAgIFRlcm1pbmF0aW9uUHJvdGVjdGlvbkVuYWJsZWQ6IG9iai50ZXJtaW5hdGlvblByb3RlY3Rpb25FbmFibGVkLFxuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmVybGVzc0luc3RhbmNlQ29ubmVjdGlvblN0cmluZ3Mge1xuICAvKipcbiAgICogTGlzdCBvZiBwcml2YXRlIGVuZHBvaW50IGNvbm5lY3Rpb24gc3RyaW5ncyB0aGF0IHlvdSBjYW4gdXNlIHRvIGNvbm5lY3QgdG8gdGhpcyBzZXJ2ZXJsZXNzIGluc3RhbmNlIHRocm91Z2ggYSBwcml2YXRlIGVuZHBvaW50LiBUaGlzIHBhcmFtZXRlciByZXR1cm5zIG9ubHkgaWYgeW91IGNyZWF0ZWQgYSBwcml2YXRlIGVuZHBvaW50IGZvciB0aGlzIHNlcnZlcmxlc3MgaW5zdGFuY2UgYW5kIGl0IGlzIEFWQUlMQUJMRS5cbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VDb25uZWN0aW9uU3RyaW5ncyNQcml2YXRlRW5kcG9pbnRcbiAgICovXG4gIHJlYWRvbmx5IHByaXZhdGVFbmRwb2ludD86IFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFtdO1xuXG4gIC8qKlxuICAgKiBQdWJsaWMgY29ubmVjdGlvbiBzdHJpbmcgdGhhdCB5b3UgY2FuIHVzZSB0byBjb25uZWN0IHRvIHRoaXMgc2VydmVybGVzcyBpbnN0YW5jZS4gVGhpcyBjb25uZWN0aW9uIHN0cmluZyB1c2VzIHRoZSBgbW9uZ29kYitzcnY6Ly9gIHByb3RvY29sLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzI1N0YW5kYXJkU3J2XG4gICAqL1xuICByZWFkb25seSBzdGFuZGFyZFNydj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU2VydmVybGVzc0luc3RhbmNlQ29ubmVjdGlvblN0cmluZ3MnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzKFxuICBvYmo6IFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJpdmF0ZUVuZHBvaW50OiBvYmoucHJpdmF0ZUVuZHBvaW50Py5tYXAoKHkpID0+XG4gICAgICB0b0pzb25fU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50KHkpXG4gICAgKSxcbiAgICBTdGFuZGFyZFNydjogb2JqLnN0YW5kYXJkU3J2LFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cblxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5nc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3Mge1xuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjbG91ZCBzZXJ2aWNlIHByb3ZpZGVyLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3MjUHJvdmlkZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlck5hbWU/OiBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzUHJvdmlkZXJOYW1lO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGdlb2dyYXBoaWMgbG9jYXRpb24gb2YgeW91ciBNb25nb0RCIHNlcnZlcmxlc3MgaW5zdGFuY2UuIFRoZSByZWdpb24geW91IGNob29zZSBjYW4gYWZmZWN0IG5ldHdvcmsgbGF0ZW5jeSBmb3IgY2xpZW50cyBhY2Nlc3NpbmcgeW91ciBkYXRhYmFzZXMuIEZvciBhIGNvbXBsZXRlIGxpc3Qgb2YgcmVnaW9uIG5hbWVzLCBzZWUgW0FXU10oaHR0cHM6Ly9kb2NzLmF0bGFzLm1vbmdvZGIuY29tL3JlZmVyZW5jZS9hbWF6b24tYXdzLyNzdGQtbGFiZWwtYW1hem9uLWF3cyksIFtHQ1BdKGh0dHBzOi8vZG9jcy5hdGxhcy5tb25nb2RiLmNvbS9yZWZlcmVuY2UvZ29vZ2xlLWdjcC8pLCBhbmQgW0F6dXJlXShodHRwczovL2RvY3MuYXRsYXMubW9uZ29kYi5jb20vcmVmZXJlbmNlL21pY3Jvc29mdC1henVyZS8pLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3MjUmVnaW9uTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5ncycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5ncyhcbiAgb2JqOiBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvdmlkZXJOYW1lOiBvYmoucHJvdmlkZXJOYW1lLFxuICAgIFJlZ2lvbk5hbWU6IG9iai5yZWdpb25OYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludCB7XG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIHByaXZhdGUgZW5kcG9pbnRzIHRocm91Z2ggd2hpY2ggeW91IGNvbm5lY3QgdG8gTW9uZ29EQiBDbG91ZCB3aGVuIHlvdSB1c2UgKipjb25uZWN0aW9uU3RyaW5ncy5wcml2YXRlRW5kcG9pbnRbbl0uc3J2Q29ubmVjdGlvblN0cmluZyoqLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludCNFbmRwb2ludHNcbiAgICovXG4gIHJlYWRvbmx5IGVuZHBvaW50cz86IFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50W107XG5cbiAgLyoqXG4gICAqIFByaXZhdGUgZW5kcG9pbnQtYXdhcmUgY29ubmVjdGlvbiBzdHJpbmcgdGhhdCB1c2VzIHRoZSBgbW9uZ29kYitzcnY6Ly9gIHByb3RvY29sIHRvIGNvbm5lY3QgdG8gTW9uZ29EQiBDbG91ZCB0aHJvdWdoIGEgcHJpdmF0ZSBlbmRwb2ludC4gVGhlIGBtb25nb2RiK3NydmAgcHJvdG9jb2wgdGVsbHMgdGhlIGRyaXZlciB0byBsb29rIHVwIHRoZSBzZWVkIGxpc3Qgb2YgaG9zdHMgaW4gdGhlIERvbWFpbiBOYW1lIFN5c3RlbSAoRE5TKS5cbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQjU3J2Q29ubmVjdGlvblN0cmluZ1xuICAgKi9cbiAgcmVhZG9ubHkgc3J2Q29ubmVjdGlvblN0cmluZz86IHN0cmluZztcblxuICAvKipcbiAgICogTW9uZ29EQiBwcm9jZXNzIHR5cGUgdG8gd2hpY2ggeW91ciBhcHBsaWNhdGlvbiBjb25uZWN0cy5cbiAgICpcbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQjVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZT86IFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFR5cGU7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1NlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50KFxuICBvYmo6IFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludCB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEVuZHBvaW50czogb2JqLmVuZHBvaW50cz8ubWFwKCh5KSA9PlxuICAgICAgdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50KHkpXG4gICAgKSxcbiAgICBTcnZDb25uZWN0aW9uU3RyaW5nOiBvYmouc3J2Q29ubmVjdGlvblN0cmluZyxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjbG91ZCBzZXJ2aWNlIHByb3ZpZGVyLlxuICpcbiAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5nc1Byb3ZpZGVyTmFtZVxuICovXG5leHBvcnQgZW51bSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzUHJvdmlkZXJOYW1lIHtcbiAgLyoqIFNFUlZFUkxFU1MgKi9cbiAgU0VSVkVSTEVTUyA9IFwiU0VSVkVSTEVTU1wiLFxufVxuXG4vKipcbiAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludCB7XG4gIC8qKlxuICAgKiBVbmlxdWUgcHJvdmlkZXIgaWRlbnRpZmllciBvZiB0aGUgcHJpdmF0ZSBlbmRwb2ludC5cbiAgICpcbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludCNFbmRwb2ludElkXG4gICAqL1xuICByZWFkb25seSBlbmRwb2ludElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDbG91ZCBwcm92aWRlciB3aGVyZSB0aGUgcHJpdmF0ZSBlbmRwb2ludCBpcyBkZXBsb3llZC5cbiAgICpcbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludCNQcm92aWRlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHByb3ZpZGVyTmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogUmVnaW9uIHdoZXJlIHRoZSBwcml2YXRlIGVuZHBvaW50IGlzIGRlcGxveWVkLlxuICAgKlxuICAgKlxuICAgKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50I1JlZ2lvblxuICAgKi9cbiAgcmVhZG9ubHkgcmVnaW9uPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludCcgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQoXG4gIG9iajogU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBFbmRwb2ludElkOiBvYmouZW5kcG9pbnRJZCxcbiAgICBQcm92aWRlck5hbWU6IG9iai5wcm92aWRlck5hbWUsXG4gICAgUmVnaW9uOiBvYmoucmVnaW9uLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBNb25nb0RCIHByb2Nlc3MgdHlwZSB0byB3aGljaCB5b3VyIGFwcGxpY2F0aW9uIGNvbm5lY3RzLlxuICpcbiAqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFR5cGVcbiAqL1xuZXhwb3J0IGVudW0gU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50VHlwZSB7XG4gIC8qKiBNT05HT1MgKi9cbiAgTU9OR09TID0gXCJNT05HT1NcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzSW5zdGFuY2VcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmblNlcnZlcmxlc3NJbnN0YW5jZSBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzSW5zdGFuY2VcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzSW5zdGFuY2UuQ3JlYXRlRGF0ZWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQ3JlYXRlRGF0ZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlLklkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlLlRvdGFsQ291bnRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clRvdGFsQ291bnQ6IG51bWJlcjtcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NJbnN0YW5jZS5TdGF0ZU5hbWVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clN0YXRlTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlLk1vbmdvREJWZXJzaW9uYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJNb25nb0RCVmVyc2lvbjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzSW5zdGFuY2VgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2UuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRyQ3JlYXRlRGF0ZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIkNyZWF0ZURhdGVcIikpO1xuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICAgIHRoaXMuYXR0clRvdGFsQ291bnQgPSBjZGsuVG9rZW4uYXNOdW1iZXIodGhpcy5nZXRBdHQoXCJUb3RhbENvdW50XCIpKTtcbiAgICB0aGlzLmF0dHJTdGF0ZU5hbWUgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJTdGF0ZU5hbWVcIikpO1xuICAgIHRoaXMuYXR0ck1vbmdvREJWZXJzaW9uID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiTW9uZ29EQlZlcnNpb25cIikpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3NlcnZlcmxlc3MtaW5zdGFuY2UvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBZ0ZuQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixpQ0FBaUMsQ0FDL0MsR0FBMkM7SUFFM0MsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixpQkFBaUIsRUFBRSwwQ0FBMEMsQ0FDM0QsR0FBRyxDQUFDLGlCQUFpQixDQUN0QjtRQUNELHVCQUF1QixFQUFFLEdBQUcsQ0FBQyx1QkFBdUI7UUFDcEQsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1FBQzlCLFlBQVksRUFBRSxHQUFHLENBQUMsWUFBWTtRQUM5QixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLGdCQUFnQixFQUFFLHlDQUF5QyxDQUN6RCxHQUFHLENBQUMsZ0JBQWdCLENBQ3JCO1FBQ0QsNEJBQTRCLEVBQUUsR0FBRyxDQUFDLDRCQUE0QjtRQUM5RCxPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87S0FDckIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVB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QztRQUVqQyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxxQkFBcUIsQ0FBQyxzQkFBc0I7WUFDbEQsVUFBVSxFQUFFLGlDQUFpQyxDQUFDLEtBQUssQ0FBRTtTQUN0RCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsY0FBYyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUNwRSxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUNsRSxJQUFJLENBQUMsa0JBQWtCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUM7SUFDOUUsQ0FBQzs7QUF6REgsc0RBMERDOzs7QUF6REM7O0dBRUc7QUFDb0IsNENBQXNCLEdBQzNDLG9DQUFvQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgc2VydmVybGVzcyBpbnN0YW5jZXMuXG4gKlxuICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzIHtcbiAgLyoqXG4gICAqIENvbGxlY3Rpb24gb2YgVW5pZm9ybSBSZXNvdXJjZSBMb2NhdG9ycyB0aGF0IHBvaW50IHRvIHRoZSBNb25nb0RCIGRhdGFiYXNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzI0Nvbm5lY3Rpb25TdHJpbmdzXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uU3RyaW5ncz86IFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzO1xuXG4gIC8qKlxuICAgKiBGbGFnIHRoYXQgaW5kaWNhdGVzIHdoZXRoZXIgdGhlIHNlcnZlcmxlc3MgaW5zdGFuY2VzIHVzZXMgU2VydmVybGVzcyBDb250aW51b3VzIEJhY2t1cC4gSWYgdGhpcyBwYXJhbWV0ZXIgaXMgZmFsc2UsIHRoZSBzZXJ2ZXJsZXNzIGluc3RhbmNlIHVzZXMgQmFzaWMgQmFja3VwLiB8IE9wdGlvbiB8IERlc2NyaXB0aW9uIHwgfC0tLXwtLS18IHwgU2VydmVybGVzcyBDb250aW51b3VzIEJhY2t1cCB8IEF0bGFzIHRha2VzIGluY3JlbWVudGFsIHNuYXBzaG90cyBvZiB0aGUgZGF0YSBpbiB5b3VyIHNlcnZlcmxlc3MgaW5zdGFuY2UgZXZlcnkgc2l4IGhvdXJzIGFuZCBsZXRzIHlvdSByZXN0b3JlIHRoZSBkYXRhIGZyb20gYSBzZWxlY3RlZCBwb2ludCBpbiB0aW1lIHdpdGhpbiB0aGUgbGFzdCA3MiBob3Vycy4gQXRsYXMgYWxzbyB0YWtlcyBkYWlseSBzbmFwc2hvdHMgYW5kIHJldGFpbnMgdGhlc2UgZGFpbHkgc25hcHNob3RzIGZvciAzNSBkYXlzLiBUbyBsZWFybiBtb3JlLCBzZWUgU2VydmVybGVzcyBJbnN0YW5jZSBDb3N0cy4gfCB8IEJhc2ljIEJhY2t1cCB8IEF0bGFzIHRha2VzIGluY3JlbWVudGFsIHNuYXBzaG90cyBvZiB0aGUgZGF0YSBpbiB5b3VyIHNlcnZlcmxlc3MgaW5zdGFuY2UgZXZlcnkgc2l4IGhvdXJzIGFuZCByZXRhaW5zIG9ubHkgdGhlIHR3byBtb3N0IHJlY2VudCBzbmFwc2hvdHMuIFlvdSBjYW4gdXNlIHRoaXMgb3B0aW9uIGZvciBmcmVlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzI0NvbnRpbnVvdXNCYWNrdXBFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBjb250aW51b3VzQmFja3VwRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgcmVzcG9uc2UgcmV0dXJucyB0aGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zICgqKnRvdGFsQ291bnQqKikgaW4gdGhlIHJlc3BvbnNlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzI0luY2x1ZGVDb3VudFxuICAgKi9cbiAgcmVhZG9ubHkgaW5jbHVkZUNvdW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogTnVtYmVyIG9mIGl0ZW1zIHRoYXQgdGhlIHJlc3BvbnNlIHJldHVybnMgcGVyIHBhZ2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjSXRlbXNQZXJQYWdlXG4gICAqL1xuICByZWFkb25seSBpdGVtc1BlclBhZ2U/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc2VydmVybGVzcyBpbnN0YW5jZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBOdW1iZXIgb2YgdGhlIHBhZ2UgdGhhdCBkaXNwbGF5cyB0aGUgY3VycmVudCBzZXQgb2YgdGhlIHRvdGFsIG9iamVjdHMgdGhhdCB0aGUgcmVzcG9uc2UgcmV0dXJucy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyNQYWdlTnVtXG4gICAqL1xuICByZWFkb25seSBwYWdlTnVtPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjUHJvamVjdElEXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEdyb3VwIG9mIHNldHRpbmdzIHRoYXQgY29uZmlndXJlIHRoZSBwcm92aXNpb25lZCBNb25nb0RCIHNlcnZlcmxlc3MgaW5zdGFuY2UuIFRoZSBvcHRpb25zIGF2YWlsYWJsZSByZWxhdGUgdG8gdGhlIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjUHJvdmlkZXJTZXR0aW5nc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJTZXR0aW5ncz86IFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3M7XG5cbiAgLyoqXG4gICAqIEZsYWcgdGhhdCBpbmRpY2F0ZXMgd2hldGhlciB0ZXJtaW5hdGlvbiBwcm90ZWN0aW9uIGlzIGVuYWJsZWQgb24gdGhlIHNlcnZlcmxlc3MgaW5zdGFuY2UuIElmIHNldCB0byB0cnVlLCBNb25nb0RCIENsb3VkIHdvbid0IGRlbGV0ZSB0aGUgc2VydmVybGVzcyBpbnN0YW5jZS4gSWYgc2V0IHRvIGZhbHNlLCBNb25nb0RCIGNsb3VkIHdpbGwgZGVsZXRlIHRoZSBzZXJ2ZXJsZXNzIGluc3RhbmNlLlwiXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMjVGVybWluYXRpb25Qcm90ZWN0aW9uRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgdGVybWluYXRpb25Qcm90ZWN0aW9uRW5hYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFByb2ZpbGUgdXNlZCB0byBwcm92aWRlIGNyZWRlbnRpYWxzIGluZm9ybWF0aW9uLCAoYSBzZWNyZXQgd2l0aCB0aGUgY2ZuL2F0bGFzL3Byb2ZpbGUve1Byb2ZpbGV9LCBpcyByZXF1aXJlZCksIGlmIG5vdCBwcm92aWRlZCBkZWZhdWx0IGlzIHVzZWRcbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMoXG4gIG9iajogQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBDb25uZWN0aW9uU3RyaW5nczogdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzKFxuICAgICAgb2JqLmNvbm5lY3Rpb25TdHJpbmdzXG4gICAgKSxcbiAgICBDb250aW51b3VzQmFja3VwRW5hYmxlZDogb2JqLmNvbnRpbnVvdXNCYWNrdXBFbmFibGVkLFxuICAgIEluY2x1ZGVDb3VudDogb2JqLmluY2x1ZGVDb3VudCxcbiAgICBJdGVtc1BlclBhZ2U6IG9iai5pdGVtc1BlclBhZ2UsXG4gICAgTmFtZTogb2JqLm5hbWUsXG4gICAgUGFnZU51bTogb2JqLnBhZ2VOdW0sXG4gICAgUHJvamVjdElEOiBvYmoucHJvamVjdElkLFxuICAgIFByb3ZpZGVyU2V0dGluZ3M6IHRvSnNvbl9TZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzKFxuICAgICAgb2JqLnByb3ZpZGVyU2V0dGluZ3NcbiAgICApLFxuICAgIFRlcm1pbmF0aW9uUHJvdGVjdGlvbkVuYWJsZWQ6IG9iai50ZXJtaW5hdGlvblByb3RlY3Rpb25FbmFibGVkLFxuICAgIFByb2ZpbGU6IG9iai5wcm9maWxlLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmVybGVzc0luc3RhbmNlQ29ubmVjdGlvblN0cmluZ3Mge1xuICAvKipcbiAgICogTGlzdCBvZiBwcml2YXRlIGVuZHBvaW50IGNvbm5lY3Rpb24gc3RyaW5ncyB0aGF0IHlvdSBjYW4gdXNlIHRvIGNvbm5lY3QgdG8gdGhpcyBzZXJ2ZXJsZXNzIGluc3RhbmNlIHRocm91Z2ggYSBwcml2YXRlIGVuZHBvaW50LiBUaGlzIHBhcmFtZXRlciByZXR1cm5zIG9ubHkgaWYgeW91IGNyZWF0ZWQgYSBwcml2YXRlIGVuZHBvaW50IGZvciB0aGlzIHNlcnZlcmxlc3MgaW5zdGFuY2UgYW5kIGl0IGlzIEFWQUlMQUJMRS5cbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VDb25uZWN0aW9uU3RyaW5ncyNQcml2YXRlRW5kcG9pbnRcbiAgICovXG4gIHJlYWRvbmx5IHByaXZhdGVFbmRwb2ludD86IFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFtdO1xuXG4gIC8qKlxuICAgKiBQdWJsaWMgY29ubmVjdGlvbiBzdHJpbmcgdGhhdCB5b3UgY2FuIHVzZSB0byBjb25uZWN0IHRvIHRoaXMgc2VydmVybGVzcyBpbnN0YW5jZS4gVGhpcyBjb25uZWN0aW9uIHN0cmluZyB1c2VzIHRoZSBgbW9uZ29kYitzcnY6Ly9gIHByb3RvY29sLlxuICAgKlxuICAgKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzI1N0YW5kYXJkU3J2XG4gICAqL1xuICByZWFkb25seSBzdGFuZGFyZFNydj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU2VydmVybGVzc0luc3RhbmNlQ29ubmVjdGlvblN0cmluZ3MnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzKFxuICBvYmo6IFNlcnZlcmxlc3NJbnN0YW5jZUNvbm5lY3Rpb25TdHJpbmdzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJpdmF0ZUVuZHBvaW50OiBvYmoucHJpdmF0ZUVuZHBvaW50Py5tYXAoKHkpID0+XG4gICAgICB0b0pzb25fU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50KHkpXG4gICAgKSxcbiAgICBTdGFuZGFyZFNydjogb2JqLnN0YW5kYXJkU3J2LFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3NcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzIHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY2xvdWQgc2VydmljZSBwcm92aWRlci5cbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzI1Byb3ZpZGVyTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJOYW1lPzogU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5nc1Byb3ZpZGVyTmFtZTtcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBnZW9ncmFwaGljIGxvY2F0aW9uIG9mIHlvdXIgTW9uZ29EQiBzZXJ2ZXJsZXNzIGluc3RhbmNlLiBUaGUgcmVnaW9uIHlvdSBjaG9vc2UgY2FuIGFmZmVjdCBuZXR3b3JrIGxhdGVuY3kgZm9yIGNsaWVudHMgYWNjZXNzaW5nIHlvdXIgZGF0YWJhc2VzLiBGb3IgYSBjb21wbGV0ZSBsaXN0IG9mIHJlZ2lvbiBuYW1lcywgc2VlIFtBV1NdKGh0dHBzOi8vZG9jcy5hdGxhcy5tb25nb2RiLmNvbS9yZWZlcmVuY2UvYW1hem9uLWF3cy8jc3RkLWxhYmVsLWFtYXpvbi1hd3MpLCBbR0NQXShodHRwczovL2RvY3MuYXRsYXMubW9uZ29kYi5jb20vcmVmZXJlbmNlL2dvb2dsZS1nY3AvKSwgYW5kIFtBenVyZV0oaHR0cHM6Ly9kb2NzLmF0bGFzLm1vbmdvZGIuY29tL3JlZmVyZW5jZS9taWNyb3NvZnQtYXp1cmUvKS5cbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcm92aWRlclNldHRpbmdzI1JlZ2lvbk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbk5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1NlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3MnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3MoXG4gIG9iajogU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5ncyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb3ZpZGVyTmFtZTogb2JqLnByb3ZpZGVyTmFtZSxcbiAgICBSZWdpb25OYW1lOiBvYmoucmVnaW9uTmFtZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQge1xuICAvKipcbiAgICogTGlzdCB0aGF0IGNvbnRhaW5zIHRoZSBwcml2YXRlIGVuZHBvaW50cyB0aHJvdWdoIHdoaWNoIHlvdSBjb25uZWN0IHRvIE1vbmdvREIgQ2xvdWQgd2hlbiB5b3UgdXNlICoqY29ubmVjdGlvblN0cmluZ3MucHJpdmF0ZUVuZHBvaW50W25dLnNydkNvbm5lY3Rpb25TdHJpbmcqKi5cbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQjRW5kcG9pbnRzXG4gICAqL1xuICByZWFkb25seSBlbmRwb2ludHM/OiBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludFtdO1xuXG4gIC8qKlxuICAgKiBQcml2YXRlIGVuZHBvaW50LWF3YXJlIGNvbm5lY3Rpb24gc3RyaW5nIHRoYXQgdXNlcyB0aGUgYG1vbmdvZGIrc3J2Oi8vYCBwcm90b2NvbCB0byBjb25uZWN0IHRvIE1vbmdvREIgQ2xvdWQgdGhyb3VnaCBhIHByaXZhdGUgZW5kcG9pbnQuIFRoZSBgbW9uZ29kYitzcnZgIHByb3RvY29sIHRlbGxzIHRoZSBkcml2ZXIgdG8gbG9vayB1cCB0aGUgc2VlZCBsaXN0IG9mIGhvc3RzIGluIHRoZSBEb21haW4gTmFtZSBTeXN0ZW0gKEROUykuXG4gICAqXG4gICAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50I1NydkNvbm5lY3Rpb25TdHJpbmdcbiAgICovXG4gIHJlYWRvbmx5IHNydkNvbm5lY3Rpb25TdHJpbmc/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE1vbmdvREIgcHJvY2VzcyB0eXBlIHRvIHdoaWNoIHlvdXIgYXBwbGljYXRpb24gY29ubmVjdHMuXG4gICAqXG4gICAqXG4gICAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50I1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRUeXBlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludChcbiAgb2JqOiBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnQgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBFbmRwb2ludHM6IG9iai5lbmRwb2ludHM/Lm1hcCgoeSkgPT5cbiAgICAgIHRvSnNvbl9TZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludCh5KVxuICAgICksXG4gICAgU3J2Q29ubmVjdGlvblN0cmluZzogb2JqLnNydkNvbm5lY3Rpb25TdHJpbmcsXG4gICAgVHlwZTogb2JqLnR5cGUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY2xvdWQgc2VydmljZSBwcm92aWRlci5cbiAqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByb3ZpZGVyU2V0dGluZ3NQcm92aWRlck5hbWVcbiAqL1xuZXhwb3J0IGVudW0gU2VydmVybGVzc0luc3RhbmNlUHJvdmlkZXJTZXR0aW5nc1Byb3ZpZGVyTmFtZSB7XG4gIC8qKiBTRVJWRVJMRVNTICovXG4gIFNFUlZFUkxFU1MgPSBcIlNFUlZFUkxFU1NcIixcbn1cblxuLyoqXG4gKiBAc2NoZW1hIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQge1xuICAvKipcbiAgICogVW5pcXVlIHByb3ZpZGVyIGlkZW50aWZpZXIgb2YgdGhlIHByaXZhdGUgZW5kcG9pbnQuXG4gICAqXG4gICAqXG4gICAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQjRW5kcG9pbnRJZFxuICAgKi9cbiAgcmVhZG9ubHkgZW5kcG9pbnRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogQ2xvdWQgcHJvdmlkZXIgd2hlcmUgdGhlIHByaXZhdGUgZW5kcG9pbnQgaXMgZGVwbG95ZWQuXG4gICAqXG4gICAqXG4gICAqIEBzY2hlbWEgU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQjUHJvdmlkZXJOYW1lXG4gICAqL1xuICByZWFkb25seSBwcm92aWRlck5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFJlZ2lvbiB3aGVyZSB0aGUgcHJpdmF0ZSBlbmRwb2ludCBpcyBkZXBsb3llZC5cbiAgICpcbiAgICpcbiAgICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRFbmRwb2ludCNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU2VydmVybGVzc0luc3RhbmNlUHJpdmF0ZUVuZHBvaW50RW5kcG9pbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1NlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50KFxuICBvYmo6IFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludEVuZHBvaW50IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRW5kcG9pbnRJZDogb2JqLmVuZHBvaW50SWQsXG4gICAgUHJvdmlkZXJOYW1lOiBvYmoucHJvdmlkZXJOYW1lLFxuICAgIFJlZ2lvbjogb2JqLnJlZ2lvbixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogTW9uZ29EQiBwcm9jZXNzIHR5cGUgdG8gd2hpY2ggeW91ciBhcHBsaWNhdGlvbiBjb25uZWN0cy5cbiAqXG4gKlxuICogQHNjaGVtYSBTZXJ2ZXJsZXNzSW5zdGFuY2VQcml2YXRlRW5kcG9pbnRUeXBlXG4gKi9cbmV4cG9ydCBlbnVtIFNlcnZlcmxlc3NJbnN0YW5jZVByaXZhdGVFbmRwb2ludFR5cGUge1xuICAvKiogTU9OR09TICovXG4gIE1PTkdPUyA9IFwiTU9OR09TXCIsXG59XG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NJbnN0YW5jZWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2UgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5TZXJ2ZXJsZXNzSW5zdGFuY2VQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlLkNyZWF0ZURhdGVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckNyZWF0ZURhdGU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NJbnN0YW5jZS5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NJbnN0YW5jZS5Ub3RhbENvdW50YFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJUb3RhbENvdW50OiBudW1iZXI7XG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzSW5zdGFuY2UuU3RhdGVOYW1lYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJTdGF0ZU5hbWU6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NJbnN0YW5jZS5Nb25nb0RCVmVyc2lvbmBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyTW9uZ29EQlZlcnNpb246IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc0luc3RhbmNlYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblNlcnZlcmxlc3NJbnN0YW5jZVByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuU2VydmVybGVzc0luc3RhbmNlLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuU2VydmVybGVzc0luc3RhbmNlUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0ckNyZWF0ZURhdGUgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJDcmVhdGVEYXRlXCIpKTtcbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgICB0aGlzLmF0dHJUb3RhbENvdW50ID0gY2RrLlRva2VuLmFzTnVtYmVyKHRoaXMuZ2V0QXR0KFwiVG90YWxDb3VudFwiKSk7XG4gICAgdGhpcy5hdHRyU3RhdGVOYW1lID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdGVOYW1lXCIpKTtcbiAgICB0aGlzLmF0dHJNb25nb0RCVmVyc2lvbiA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIk1vbmdvREJWZXJzaW9uXCIpKTtcbiAgfVxufVxuIl19

@@ -151,42 +151,1 @@ import * as cdk from "aws-cdk-lib";

}
/**
* @schema PrivateEndpoint
*/
export interface ServerlessPrivateEndpoint {
/**
* String Representing the AWS VPC ID (like: vpc-xxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint)
*
* @schema PrivateEndpoint#VpcId
*/
readonly vpcId?: string;
/**
* List of string representing the AWS VPC Subnet ID (like: subnet-xxxxxxxxxxxxxxxxx) (Used For Creating the AWS VPC Endpoint)
*
* @schema PrivateEndpoint#SubnetIds
*/
readonly subnetIds?: string[];
/**
* Unique identifiers of the interface endpoints in your VPC that you added to the AWS PrivateLink connection.
*
* @schema PrivateEndpoint#InterfaceEndpointId
*/
readonly interfaceEndpointId?: string;
/**
* string to represent the comment
* @schema PrivateEndpoint#comment
*/
readonly comment?: string;
/**
* Status of the AWS PrivateEndpoint connection.
*
* @schema PrivateEndpoint#AWSPrivateEndpointStatus
*/
readonly awsPrivateEndpointStatus?: string;
/**
* Status of the Atlas PrivateEndpoint connection.
*
* @schema PrivateEndpoint#AtlasPrivateEndpointStatus
*/
readonly atlasPrivateEndpointStatus?: string;
readonly createAndAssignAWSPrivateEndpoint?: boolean;
}

@@ -80,3 +80,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnServerlessPrivateEndpoint[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnServerlessPrivateEndpoint", version: "3.7.2" };
CfnServerlessPrivateEndpoint[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnServerlessPrivateEndpoint", version: "3.8.0" };
/**

@@ -86,2 +86,2 @@ * The CloudFormation resource type name for this resource class.

CfnServerlessPrivateEndpoint.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::ServerlessPrivateEndpoint";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3NlcnZlcmxlc3MtcHJpdmF0ZS1lbmRwb2ludC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFrRW5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHdDQUF3QyxDQUN0RCxHQUFrRDtJQUVsRCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQix1QkFBdUIsRUFBRSxHQUFHLENBQUMsdUJBQXVCO1FBQ3BELHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7UUFDdEQsaUNBQWlDLEVBQUUsR0FBRyxDQUFDLGlDQUFpQztRQUN4RSx5Q0FBeUMsRUFBRSwrQkFBK0IsQ0FDeEUsR0FBRyxDQUFDLHlDQUF5QyxDQUM5QztLQUNGLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQXZCRCw0RkF1QkM7QUE2Q0Q7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsK0JBQStCLENBQzdDLEdBQXlDO0lBRXpDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO1FBQ2hCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxtQkFBbUI7UUFDNUMsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLHdCQUF3QjtRQUN0RCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07S0FDbkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBbEJELDBFQWtCQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFxQy9EOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQXdDO1FBRXhDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLDRCQUE0QixDQUFDLHNCQUFzQjtZQUN6RCxVQUFVLEVBQUUsd0NBQXdDLENBQUMsS0FBSyxDQUFFO1NBQzdELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyx1QkFBdUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUNuQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyw4QkFBOEIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUMxQyxDQUFDO0lBQ0osQ0FBQzs7QUFsRUgsb0VBbUVDOzs7QUFsRUM7O0dBRUc7QUFDb0IsbURBQXNCLEdBQzNDLDJDQUEyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgcHJpdmF0ZSBlbmRwb2ludHMgZm9yIHNlcnZlcmxlc3MgaW5zdGFuY2VzLiBUbyBsZWFybiBtb3JlLCBzZWUgdGhlIEF0bGFzIEFkbWluaXN0cmF0aW9uIEFQSSB0YWIgb24gdGhlIGZvbGxvd2luZyB0dXRvcmlhbC5cbiAqXG4gKiBAc2NoZW1hIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcyB7XG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc2VydmVybGVzcyBpbnN0YW5jZSBmb3Igd2hpY2ggdGhlIHRlbmFudCBlbmRwb2ludCB3aWxsIGJlIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI0luc3RhbmNlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGNvbW1lbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBwcml2YXRlIGVuZHBvaW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcyNDb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBwcml2YXRlIGVuZHBvaW50J3MgbmV0d29yayBpbnRlcmZhY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI0Nsb3VkUHJvdmlkZXJFbmRwb2ludElkXG4gICAqL1xuICByZWFkb25seSBjbG91ZFByb3ZpZGVyRW5kcG9pbnRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSVB2NCBhZGRyZXNzIG9mIHRoZSBwcml2YXRlIGVuZHBvaW50IGluIHlvdXIgQXp1cmUgVk5ldCB0aGF0IHNvbWVvbmUgYWRkZWQgdG8gdGhpcyBwcml2YXRlIGVuZHBvaW50IHNlcnZpY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI1ByaXZhdGVFbmRwb2ludElwQWRkcmVzc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJpdmF0ZUVuZHBvaW50SXBBZGRyZXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlIHRoZSByZXNvdXJjZSB3aWxsIGNyZWF0ZSB0aGUgYXdzIHByaXZhdGUgZW5kcG9pbnQgYW5kIGFzc2lnbiB0aGUgRW5kcG9pbnQgSURcbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHMjQ3JlYXRlQW5kQXNzaWduQVdTUHJpdmF0ZUVuZHBvaW50XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVBbmRBc3NpZ25Bd3NQcml2YXRlRW5kcG9pbnQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHVzZWQgdG8gY29uZmlndXJlIEF3cyBwcml2YXRlIGVuZHBvaW50XG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI0F3c1ByaXZhdGVFbmRwb2ludENvbmZpZ3VyYXRpb25Qcm9wZXJ0aWVzXG4gICAqL1xuICByZWFkb25seSBhd3NQcml2YXRlRW5kcG9pbnRDb25maWd1cmF0aW9uUHJvcGVydGllcz86IEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHMoXG4gIG9iajogQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIEluc3RhbmNlTmFtZTogb2JqLmluc3RhbmNlTmFtZSxcbiAgICBDb21tZW50OiBvYmouY29tbWVudCxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBDbG91ZFByb3ZpZGVyRW5kcG9pbnRJZDogb2JqLmNsb3VkUHJvdmlkZXJFbmRwb2ludElkLFxuICAgIFByaXZhdGVFbmRwb2ludElwQWRkcmVzczogb2JqLnByaXZhdGVFbmRwb2ludElwQWRkcmVzcyxcbiAgICBDcmVhdGVBbmRBc3NpZ25BV1NQcml2YXRlRW5kcG9pbnQ6IG9iai5jcmVhdGVBbmRBc3NpZ25Bd3NQcml2YXRlRW5kcG9pbnQsXG4gICAgQXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlndXJhdGlvblByb3BlcnRpZXM6IHRvSnNvbl9Bd3NQcml2YXRlRW5kcG9pbnRDb25maWcoXG4gICAgICBvYmouYXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlndXJhdGlvblByb3BlcnRpZXNcbiAgICApLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBV1MgUHJpdmF0ZSBlbmRwb2ludCBjb25maWd1cmF0aW9uIHByb3BlcnRpZXNcbiAqXG4gKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyB7XG4gIC8qKlxuICAgKiBTdHJpbmcgUmVwcmVzZW50aW5nIHRoZSBBV1MgVlBDIElEIChsaWtlOiB2cGMteHh4eHh4eHh4eHh4eHh4eCkgKFVzZWQgRm9yIENyZWF0aW5nIHRoZSBBV1MgVlBDIEVuZHBvaW50KVxuICAgKlxuICAgKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyNWcGNJZFxuICAgKi9cbiAgcmVhZG9ubHkgdnBjSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2Ygc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVdTIFZQQyBTdWJuZXQgSUQgKGxpa2U6IHN1Ym5ldC14eHh4eHh4eHh4eHh4eHh4eCkgKFVzZWQgRm9yIENyZWF0aW5nIHRoZSBBV1MgVlBDIEVuZHBvaW50KVxuICAgKlxuICAgKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyNTdWJuZXRJZHNcbiAgICovXG4gIHJlYWRvbmx5IHN1Ym5ldElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgaWRlbnRpZmllcnMgb2YgdGhlIGludGVyZmFjZSBlbmRwb2ludHMgaW4geW91ciBWUEMgdGhhdCB5b3UgYWRkZWQgdG8gdGhlIEFXUyBQcml2YXRlTGluayBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyNJbnRlcmZhY2VFbmRwb2ludElkXG4gICAqL1xuICByZWFkb25seSBpbnRlcmZhY2VFbmRwb2ludElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgb2YgdGhlIEFXUyBQcml2YXRlRW5kcG9pbnQgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBhd3NQcml2YXRlRW5kcG9pbnRDb25maWcjQVdTUHJpdmF0ZUVuZHBvaW50U3RhdHVzXG4gICAqL1xuICByZWFkb25seSBhd3NQcml2YXRlRW5kcG9pbnRTdGF0dXM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEF3cyBSZWdpb25cbiAgICpcbiAgICogQHNjaGVtYSBhd3NQcml2YXRlRW5kcG9pbnRDb25maWcjUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F3c1ByaXZhdGVFbmRwb2ludENvbmZpZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlnKFxuICBvYmo6IEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFZwY0lkOiBvYmoudnBjSWQsXG4gICAgU3VibmV0SWRzOiBvYmouc3VibmV0SWRzPy5tYXAoKHkpID0+IHkpLFxuICAgIEludGVyZmFjZUVuZHBvaW50SWQ6IG9iai5pbnRlcmZhY2VFbmRwb2ludElkLFxuICAgIEFXU1ByaXZhdGVFbmRwb2ludFN0YXR1czogb2JqLmF3c1ByaXZhdGVFbmRwb2ludFN0YXR1cyxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50IGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnQuRW5kcG9pbnRTZXJ2aWNlTmFtZWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRW5kcG9pbnRTZXJ2aWNlTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5FcnJvck1lc3NhZ2VgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckVycm9yTWVzc2FnZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5Qcm92aWRlck5hbWVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clByb3ZpZGVyTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5TdGF0dXNgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clN0YXR1czogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5Bd3NQcml2YXRlRW5kcG9pbnRNZXRhRGF0YWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQXdzUHJpdmF0ZUVuZHBvaW50TWV0YURhdGE6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludGAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgICB0aGlzLmF0dHJFbmRwb2ludFNlcnZpY2VOYW1lID0gY2RrLlRva2VuLmFzU3RyaW5nKFxuICAgICAgdGhpcy5nZXRBdHQoXCJFbmRwb2ludFNlcnZpY2VOYW1lXCIpXG4gICAgKTtcbiAgICB0aGlzLmF0dHJFcnJvck1lc3NhZ2UgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJFcnJvck1lc3NhZ2VcIikpO1xuICAgIHRoaXMuYXR0clByb3ZpZGVyTmFtZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIlByb3ZpZGVyTmFtZVwiKSk7XG4gICAgdGhpcy5hdHRyU3RhdHVzID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdHVzXCIpKTtcbiAgICB0aGlzLmF0dHJBd3NQcml2YXRlRW5kcG9pbnRNZXRhRGF0YSA9IGNkay5Ub2tlbi5hc1N0cmluZyhcbiAgICAgIHRoaXMuZ2V0QXR0KFwiQXdzUHJpdmF0ZUVuZHBvaW50TWV0YURhdGFcIilcbiAgICApO1xuICB9XG59XG5cbi8qKlxuICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50IHtcbiAgLyoqXG4gICAqIFN0cmluZyBSZXByZXNlbnRpbmcgdGhlIEFXUyBWUEMgSUQgKGxpa2U6IHZwYy14eHh4eHh4eHh4eHh4eHh4KSAoVXNlZCBGb3IgQ3JlYXRpbmcgdGhlIEFXUyBWUEMgRW5kcG9pbnQpXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I1ZwY0lkXG4gICAqL1xuICByZWFkb25seSB2cGNJZD86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBzdHJpbmcgcmVwcmVzZW50aW5nIHRoZSBBV1MgVlBDIFN1Ym5ldCBJRCAobGlrZTogc3VibmV0LXh4eHh4eHh4eHh4eHh4eHh4KSAoVXNlZCBGb3IgQ3JlYXRpbmcgdGhlIEFXUyBWUEMgRW5kcG9pbnQpXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I1N1Ym5ldElkc1xuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0SWRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBpZGVudGlmaWVycyBvZiB0aGUgaW50ZXJmYWNlIGVuZHBvaW50cyBpbiB5b3VyIFZQQyB0aGF0IHlvdSBhZGRlZCB0byB0aGUgQVdTIFByaXZhdGVMaW5rIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I0ludGVyZmFjZUVuZHBvaW50SWRcbiAgICovXG4gIHJlYWRvbmx5IGludGVyZmFjZUVuZHBvaW50SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIHN0cmluZyB0byByZXByZXNlbnQgdGhlIGNvbW1lbnRcbiAgICogQHNjaGVtYSBQcml2YXRlRW5kcG9pbnQjY29tbWVudFxuICAgKi9cbiAgcmVhZG9ubHkgY29tbWVudD86IHN0cmluZztcblxuICAvKipcbiAgICogU3RhdHVzIG9mIHRoZSBBV1MgUHJpdmF0ZUVuZHBvaW50IGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgUHJpdmF0ZUVuZHBvaW50I0FXU1ByaXZhdGVFbmRwb2ludFN0YXR1c1xuICAgKi9cbiAgcmVhZG9ubHkgYXdzUHJpdmF0ZUVuZHBvaW50U3RhdHVzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgb2YgdGhlIEF0bGFzIFByaXZhdGVFbmRwb2ludCBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIFByaXZhdGVFbmRwb2ludCNBdGxhc1ByaXZhdGVFbmRwb2ludFN0YXR1c1xuICAgKi9cbiAgcmVhZG9ubHkgYXRsYXNQcml2YXRlRW5kcG9pbnRTdGF0dXM/OiBzdHJpbmc7XG5cbiAgcmVhZG9ubHkgY3JlYXRlQW5kQXNzaWduQVdTUHJpdmF0ZUVuZHBvaW50PzogYm9vbGVhbjtcbn1cbiJdfQ==
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3NlcnZlcmxlc3MtcHJpdmF0ZS1lbmRwb2ludC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUFrRW5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLHdDQUF3QyxDQUN0RCxHQUFrRDtJQUVsRCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUztRQUN4QixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQix1QkFBdUIsRUFBRSxHQUFHLENBQUMsdUJBQXVCO1FBQ3BELHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0I7UUFDdEQsaUNBQWlDLEVBQUUsR0FBRyxDQUFDLGlDQUFpQztRQUN4RSx5Q0FBeUMsRUFBRSwrQkFBK0IsQ0FDeEUsR0FBRyxDQUFDLHlDQUF5QyxDQUM5QztLQUNGLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQXZCRCw0RkF1QkM7QUE2Q0Q7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsK0JBQStCLENBQzdDLEdBQXlDO0lBRXpDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLO1FBQ2hCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLG1CQUFtQixFQUFFLEdBQUcsQ0FBQyxtQkFBbUI7UUFDNUMsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLHdCQUF3QjtRQUN0RCxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07S0FDbkIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDM0QsRUFBRSxDQUNILENBQUM7QUFDSixDQUFDO0FBbEJELDBFQWtCQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsNEJBQTZCLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFxQy9EOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQXdDO1FBRXhDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLDRCQUE0QixDQUFDLHNCQUFzQjtZQUN6RCxVQUFVLEVBQUUsd0NBQXdDLENBQUMsS0FBSyxDQUFFO1NBQzdELENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyx1QkFBdUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUNuQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDO1FBQ3hFLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyw4QkFBOEIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUMxQyxDQUFDO0lBQ0osQ0FBQzs7QUFsRUgsb0VBbUVDOzs7QUFsRUM7O0dBRUc7QUFDb0IsbURBQXNCLEdBQzNDLDJDQUEyQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBSZXR1cm5zLCBhZGRzLCBlZGl0cywgYW5kIHJlbW92ZXMgcHJpdmF0ZSBlbmRwb2ludHMgZm9yIHNlcnZlcmxlc3MgaW5zdGFuY2VzLiBUbyBsZWFybiBtb3JlLCBzZWUgdGhlIEF0bGFzIEFkbWluaXN0cmF0aW9uIEFQSSB0YWIgb24gdGhlIGZvbGxvd2luZyB0dXRvcmlhbC5cbiAqXG4gKiBAc2NoZW1hIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcyB7XG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB5b3VyIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc2VydmVybGVzcyBpbnN0YW5jZSBmb3Igd2hpY2ggdGhlIHRlbmFudCBlbmRwb2ludCB3aWxsIGJlIGNyZWF0ZWQuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI0luc3RhbmNlTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgaW5zdGFuY2VOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGNvbW1lbnQgYXNzb2NpYXRlZCB3aXRoIHRoZSBwcml2YXRlIGVuZHBvaW50LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcyNDb21tZW50XG4gICAqL1xuICByZWFkb25seSBjb21tZW50Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBwcml2YXRlIGVuZHBvaW50J3MgbmV0d29yayBpbnRlcmZhY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI0Nsb3VkUHJvdmlkZXJFbmRwb2ludElkXG4gICAqL1xuICByZWFkb25seSBjbG91ZFByb3ZpZGVyRW5kcG9pbnRJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSVB2NCBhZGRyZXNzIG9mIHRoZSBwcml2YXRlIGVuZHBvaW50IGluIHlvdXIgQXp1cmUgVk5ldCB0aGF0IHNvbWVvbmUgYWRkZWQgdG8gdGhpcyBwcml2YXRlIGVuZHBvaW50IHNlcnZpY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI1ByaXZhdGVFbmRwb2ludElwQWRkcmVzc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJpdmF0ZUVuZHBvaW50SXBBZGRyZXNzPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiB0cnVlIHRoZSByZXNvdXJjZSB3aWxsIGNyZWF0ZSB0aGUgYXdzIHByaXZhdGUgZW5kcG9pbnQgYW5kIGFzc2lnbiB0aGUgRW5kcG9pbnQgSURcbiAgICpcbiAgICogQHNjaGVtYSBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHMjQ3JlYXRlQW5kQXNzaWduQVdTUHJpdmF0ZUVuZHBvaW50XG4gICAqL1xuICByZWFkb25seSBjcmVhdGVBbmRBc3NpZ25Bd3NQcml2YXRlRW5kcG9pbnQ/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBQcm9wZXJ0aWVzIHVzZWQgdG8gY29uZmlndXJlIEF3cyBwcml2YXRlIGVuZHBvaW50XG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzI0F3c1ByaXZhdGVFbmRwb2ludENvbmZpZ3VyYXRpb25Qcm9wZXJ0aWVzXG4gICAqL1xuICByZWFkb25seSBhd3NQcml2YXRlRW5kcG9pbnRDb25maWd1cmF0aW9uUHJvcGVydGllcz86IEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHMoXG4gIG9iajogQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIEluc3RhbmNlTmFtZTogb2JqLmluc3RhbmNlTmFtZSxcbiAgICBDb21tZW50OiBvYmouY29tbWVudCxcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBDbG91ZFByb3ZpZGVyRW5kcG9pbnRJZDogb2JqLmNsb3VkUHJvdmlkZXJFbmRwb2ludElkLFxuICAgIFByaXZhdGVFbmRwb2ludElwQWRkcmVzczogb2JqLnByaXZhdGVFbmRwb2ludElwQWRkcmVzcyxcbiAgICBDcmVhdGVBbmRBc3NpZ25BV1NQcml2YXRlRW5kcG9pbnQ6IG9iai5jcmVhdGVBbmRBc3NpZ25Bd3NQcml2YXRlRW5kcG9pbnQsXG4gICAgQXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlndXJhdGlvblByb3BlcnRpZXM6IHRvSnNvbl9Bd3NQcml2YXRlRW5kcG9pbnRDb25maWcoXG4gICAgICBvYmouYXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlndXJhdGlvblByb3BlcnRpZXNcbiAgICApLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBV1MgUHJpdmF0ZSBlbmRwb2ludCBjb25maWd1cmF0aW9uIHByb3BlcnRpZXNcbiAqXG4gKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyB7XG4gIC8qKlxuICAgKiBTdHJpbmcgUmVwcmVzZW50aW5nIHRoZSBBV1MgVlBDIElEIChsaWtlOiB2cGMteHh4eHh4eHh4eHh4eHh4eCkgKFVzZWQgRm9yIENyZWF0aW5nIHRoZSBBV1MgVlBDIEVuZHBvaW50KVxuICAgKlxuICAgKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyNWcGNJZFxuICAgKi9cbiAgcmVhZG9ubHkgdnBjSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExpc3Qgb2Ygc3RyaW5nIHJlcHJlc2VudGluZyB0aGUgQVdTIFZQQyBTdWJuZXQgSUQgKGxpa2U6IHN1Ym5ldC14eHh4eHh4eHh4eHh4eHh4eCkgKFVzZWQgRm9yIENyZWF0aW5nIHRoZSBBV1MgVlBDIEVuZHBvaW50KVxuICAgKlxuICAgKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyNTdWJuZXRJZHNcbiAgICovXG4gIHJlYWRvbmx5IHN1Ym5ldElkcz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgaWRlbnRpZmllcnMgb2YgdGhlIGludGVyZmFjZSBlbmRwb2ludHMgaW4geW91ciBWUEMgdGhhdCB5b3UgYWRkZWQgdG8gdGhlIEFXUyBQcml2YXRlTGluayBjb25uZWN0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIGF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyNJbnRlcmZhY2VFbmRwb2ludElkXG4gICAqL1xuICByZWFkb25seSBpbnRlcmZhY2VFbmRwb2ludElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTdGF0dXMgb2YgdGhlIEFXUyBQcml2YXRlRW5kcG9pbnQgY29ubmVjdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBhd3NQcml2YXRlRW5kcG9pbnRDb25maWcjQVdTUHJpdmF0ZUVuZHBvaW50U3RhdHVzXG4gICAqL1xuICByZWFkb25seSBhd3NQcml2YXRlRW5kcG9pbnRTdGF0dXM/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEF3cyBSZWdpb25cbiAgICpcbiAgICogQHNjaGVtYSBhd3NQcml2YXRlRW5kcG9pbnRDb25maWcjUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb24/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F3c1ByaXZhdGVFbmRwb2ludENvbmZpZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXdzUHJpdmF0ZUVuZHBvaW50Q29uZmlnKFxuICBvYmo6IEF3c1ByaXZhdGVFbmRwb2ludENvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFZwY0lkOiBvYmoudnBjSWQsXG4gICAgU3VibmV0SWRzOiBvYmouc3VibmV0SWRzPy5tYXAoKHkpID0+IHkpLFxuICAgIEludGVyZmFjZUVuZHBvaW50SWQ6IG9iai5pbnRlcmZhY2VFbmRwb2ludElkLFxuICAgIEFXU1ByaXZhdGVFbmRwb2ludFN0YXR1czogb2JqLmF3c1ByaXZhdGVFbmRwb2ludFN0YXR1cyxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50YFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpTZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50XG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50IGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnRQcm9wcztcblxuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlNlcnZlcmxlc3NQcml2YXRlRW5kcG9pbnQuRW5kcG9pbnRTZXJ2aWNlTmFtZWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyRW5kcG9pbnRTZXJ2aWNlTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5FcnJvck1lc3NhZ2VgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0ckVycm9yTWVzc2FnZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5Qcm92aWRlck5hbWVgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clByb3ZpZGVyTmFtZTogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5TdGF0dXNgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0clN0YXR1czogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludC5Bd3NQcml2YXRlRW5kcG9pbnRNZXRhRGF0YWBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyQXdzUHJpdmF0ZUVuZHBvaW50TWV0YURhdGE6IHN0cmluZztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6U2VydmVybGVzc1ByaXZhdGVFbmRwb2ludGAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50UHJvcHNcbiAgKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICB0eXBlOiBDZm5TZXJ2ZXJsZXNzUHJpdmF0ZUVuZHBvaW50LkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuU2VydmVybGVzc1ByaXZhdGVFbmRwb2ludFByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgICB0aGlzLmF0dHJFbmRwb2ludFNlcnZpY2VOYW1lID0gY2RrLlRva2VuLmFzU3RyaW5nKFxuICAgICAgdGhpcy5nZXRBdHQoXCJFbmRwb2ludFNlcnZpY2VOYW1lXCIpXG4gICAgKTtcbiAgICB0aGlzLmF0dHJFcnJvck1lc3NhZ2UgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJFcnJvck1lc3NhZ2VcIikpO1xuICAgIHRoaXMuYXR0clByb3ZpZGVyTmFtZSA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIlByb3ZpZGVyTmFtZVwiKSk7XG4gICAgdGhpcy5hdHRyU3RhdHVzID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiU3RhdHVzXCIpKTtcbiAgICB0aGlzLmF0dHJBd3NQcml2YXRlRW5kcG9pbnRNZXRhRGF0YSA9IGNkay5Ub2tlbi5hc1N0cmluZyhcbiAgICAgIHRoaXMuZ2V0QXR0KFwiQXdzUHJpdmF0ZUVuZHBvaW50TWV0YURhdGFcIilcbiAgICApO1xuICB9XG59XG4iXX0=

@@ -134,3 +134,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnStreamConnection[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnStreamConnection", version: "3.7.2" };
CfnStreamConnection[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnStreamConnection", version: "3.8.0" };
/**

@@ -137,0 +137,0 @@ * The CloudFormation resource type name for this resource class.

@@ -235,3 +235,3 @@ import * as cdk from "aws-cdk-lib";

/** BUILT_IN */
BUILT_UNDERSCORE_IN = "BUILT_IN",
BUILT_IN = "BUILT_IN",
/** CUSTOM */

@@ -238,0 +238,0 @@ CUSTOM = "CUSTOM"

@@ -170,3 +170,3 @@ "use strict";

/** BUILT_IN */
DbRoleToExecuteType["BUILT_UNDERSCORE_IN"] = "BUILT_IN";
DbRoleToExecuteType["BUILT_IN"] = "BUILT_IN";
/** CUSTOM */

@@ -201,3 +201,3 @@ DbRoleToExecuteType["CUSTOM"] = "CUSTOM";

_a = JSII_RTTI_SYMBOL_1;
CfnStreamInstance[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnStreamInstance", version: "3.7.2" };
CfnStreamInstance[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnStreamInstance", version: "3.8.0" };
/**

@@ -207,2 +207,2 @@ * The CloudFormation resource type name for this resource class.

CfnStreamInstance.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::StreamInstance";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3N0cmVhbS1pbnN0YW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUE4Q25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLDZCQUE2QixDQUMzQyxHQUF1QztJQUV2QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsaUJBQWlCLEVBQUUsK0JBQStCLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDO1FBQ3pFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQ25ELFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQW5CRCxzRUFt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LEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCx3REFlQztBQUNELHdDQUF3QztBQUV4Qzs7OztHQUlHO0FBQ0gsSUFBWSxtQkFLWDtBQUxELFdBQVksbUJBQW1CO0lBQzdCLGVBQWU7SUFDZix1REFBZ0MsQ0FBQTtJQUNoQyxhQUFhO0lBQ2Isd0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUxXLG1CQUFtQixHQUFuQiwyQkFBbUIsS0FBbkIsMkJBQW1CLFFBSzlCO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGlCQUFrQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBcUJwRDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUE2QjtRQUU3QixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxzQkFBc0I7WUFDOUMsVUFBVSxFQUFFLDZCQUE2QixDQUFDLEtBQUssQ0FBRTtTQUNsRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDOztBQTFDSCw4Q0EyQ0M7OztBQTFDQzs7R0FFRztBQUNvQix3Q0FBc0IsR0FDM0MsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGVkaXRzLCBhbmQgcmVtb3ZlcyBBdGxhcyBTdHJlYW0gUHJvY2Vzc2luZyBJbnN0YW5jZXMuXG4gKlxuICogQHNjaGVtYSBDZm5TdHJlYW1JbnN0YW5jZVByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TdHJlYW1JbnN0YW5jZVByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc3RyZWFtIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyNJbnN0YW5jZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblN0cmVhbUluc3RhbmNlUHJvcHMjRGF0YVByb2Nlc3NSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IGRhdGFQcm9jZXNzUmVnaW9uOiBTdHJlYW1zRGF0YVByb2Nlc3NSZWdpb247XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyNTdHJlYW1Db25maWdcbiAgICovXG4gIHJlYWRvbmx5IHN0cmVhbUNvbmZpZzogU3RyZWFtQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblN0cmVhbUluc3RhbmNlUHJvcHMjQ29ubmVjdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGNvbm5lY3Rpb25zPzogU3RyZWFtc0Nvbm5lY3Rpb25bXTtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGNoYXJhY3RlciBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblN0cmVhbUluc3RhbmNlUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyhcbiAgb2JqOiBDZm5TdHJlYW1JbnN0YW5jZVByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgSW5zdGFuY2VOYW1lOiBvYmouaW5zdGFuY2VOYW1lLFxuICAgIERhdGFQcm9jZXNzUmVnaW9uOiB0b0pzb25fU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uKG9iai5kYXRhUHJvY2Vzc1JlZ2lvbiksXG4gICAgU3RyZWFtQ29uZmlnOiB0b0pzb25fU3RyZWFtQ29uZmlnKG9iai5zdHJlYW1Db25maWcpLFxuICAgIENvbm5lY3Rpb25zOiBvYmouY29ubmVjdGlvbnM/Lm1hcCgoeSkgPT4gdG9Kc29uX1N0cmVhbXNDb25uZWN0aW9uKHkpKSxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSBjbG91ZCBwcm92aWRlciByZWdpb24gaW4gd2hpY2ggTW9uZ29EQiBDbG91ZCBwcm9jZXNzZXMgdGhlIHN0cmVhbS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvbiB7XG4gIC8qKlxuICAgKiBMYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIgd2hlcmUgTW9uZ29EQiBDbG91ZCBwZXJmb3JtcyBzdHJlYW0gcHJvY2Vzc2luZy4gQ3VycmVudGx5LCB0aGlzIHBhcmFtZXRlciBzdXBwb3J0cyBBV1Mgb25seS5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zRGF0YVByb2Nlc3NSZWdpb24jQ2xvdWRQcm92aWRlclxuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRQcm92aWRlcjogU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uQ2xvdWRQcm92aWRlcjtcblxuICAvKipcbiAgICogQHNjaGVtYSBTdHJlYW1zRGF0YVByb2Nlc3NSZWdpb24jUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdHJlYW1zRGF0YVByb2Nlc3NSZWdpb24oXG4gIG9iajogU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2xvdWRQcm92aWRlcjogb2JqLmNsb3VkUHJvdmlkZXIsXG4gICAgUmVnaW9uOiBvYmoucmVnaW9uLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGFuIEF0bGFzIFN0cmVhbSBQcm9jZXNzaW5nIEluc3RhbmNlLlxuICpcbiAqIEBzY2hlbWEgU3RyZWFtQ29uZmlnXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyZWFtQ29uZmlnIHtcbiAgLyoqXG4gICAqIFNlbGVjdGVkIHRpZXIgZm9yIHRoZSBTdHJlYW0gSW5zdGFuY2UuIENvbmZpZ3VyZXMgTWVtb3J5IC8gVkNQVSBhbGxvd2FuY2VzLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0cmVhbUNvbmZpZyNUaWVyXG4gICAqL1xuICByZWFkb25seSB0aWVyPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTdHJlYW1Db25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1N0cmVhbUNvbmZpZyhcbiAgb2JqOiBTdHJlYW1Db25maWcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBUaWVyOiBvYmoudGllcixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogU2V0dGluZ3MgdGhhdCBkZWZpbmUgYSBjb25uZWN0aW9uIHRvIGFuIGV4dGVybmFsIGRhdGEgc3RvcmUuXG4gKlxuICogQHNjaGVtYSBTdHJlYW1zQ29ubmVjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbXNDb25uZWN0aW9uIHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc3RyZWFtIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiB0aGUgY29ubmVjdGlvbi4gQ2FuIGJlIGVpdGhlciBDbHVzdGVyIG9yIEthZmthLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0cmVhbXNDb25uZWN0aW9uI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBTdHJlYW1zQ29ubmVjdGlvblR5cGU7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jQXV0aGVudGljYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhlbnRpY2F0aW9uPzogU3RyZWFtc0thZmthQXV0aGVudGljYXRpb247XG5cbiAgLyoqXG4gICAqIENvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHNlcnZlciBhZGRyZXNzZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jQm9vdHN0cmFwU2VydmVyc1xuICAgKi9cbiAgcmVhZG9ubHkgYm9vdHN0cmFwU2VydmVycz86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSBTdHJlYW1zQ29ubmVjdGlvbiNTZWN1cml0eVxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHk/OiBTdHJlYW1zS2Fma2FTZWN1cml0eTtcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgY2x1c3RlciBjb25maWd1cmVkIGZvciB0aGlzIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jQ2x1c3Rlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGNsdXN0ZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIFN0cmVhbXNDb25uZWN0aW9uI0RiUm9sZVRvRXhlY3V0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGJSb2xlVG9FeGVjdXRlPzogRGJSb2xlVG9FeGVjdXRlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTdHJlYW1zQ29ubmVjdGlvbicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU3RyZWFtc0Nvbm5lY3Rpb24oXG4gIG9iajogU3RyZWFtc0Nvbm5lY3Rpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBBdXRoZW50aWNhdGlvbjogdG9Kc29uX1N0cmVhbXNLYWZrYUF1dGhlbnRpY2F0aW9uKG9iai5hdXRoZW50aWNhdGlvbiksXG4gICAgQm9vdHN0cmFwU2VydmVyczogb2JqLmJvb3RzdHJhcFNlcnZlcnMsXG4gICAgU2VjdXJpdHk6IHRvSnNvbl9TdHJlYW1zS2Fma2FTZWN1cml0eShvYmouc2VjdXJpdHkpLFxuICAgIENsdXN0ZXJOYW1lOiBvYmouY2x1c3Rlck5hbWUsXG4gICAgRGJSb2xlVG9FeGVjdXRlOiB0b0pzb25fRGJSb2xlVG9FeGVjdXRlKG9iai5kYlJvbGVUb0V4ZWN1dGUpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBMYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIgd2hlcmUgTW9uZ29EQiBDbG91ZCBwZXJmb3JtcyBzdHJlYW0gcHJvY2Vzc2luZy4gQ3VycmVudGx5LCB0aGlzIHBhcmFtZXRlciBzdXBwb3J0cyBBV1Mgb25seS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvbkNsb3VkUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGVudW0gU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uQ2xvdWRQcm92aWRlciB7XG4gIC8qKiBBV1MgKi9cbiAgQVdTID0gXCJBV1NcIixcbiAgLyoqIEdDUCAqL1xuICBHQ1AgPSBcIkdDUFwiLFxuICAvKiogQVpVUkUgKi9cbiAgQVpVUkUgPSBcIkFaVVJFXCIsXG4gIC8qKiBURU5BTlQgKi9cbiAgVEVOQU5UID0gXCJURU5BTlRcIixcbiAgLyoqIFNFUlZFUkxFU1MgKi9cbiAgU0VSVkVSTEVTUyA9IFwiU0VSVkVSTEVTU1wiLFxufVxuXG4vKipcbiAqIFR5cGUgb2YgdGhlIGNvbm5lY3Rpb24uIENhbiBiZSBlaXRoZXIgQ2x1c3RlciBvciBLYWZrYS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNDb25uZWN0aW9uVHlwZVxuICovXG5leHBvcnQgZW51bSBTdHJlYW1zQ29ubmVjdGlvblR5cGUge1xuICAvKiogS2Fma2EgKi9cbiAgS0FGS0EgPSBcIkthZmthXCIsXG4gIC8qKiBDbHVzdGVyICovXG4gIENMVVNURVIgPSBcIkNsdXN0ZXJcIixcbiAgLyoqIFNhbXBsZSAqL1xuICBTQU1QTEUgPSBcIlNhbXBsZVwiLFxufVxuXG4vKipcbiAqIFVzZXIgY3JlZGVudGlhbHMgcmVxdWlyZWQgdG8gY29ubmVjdCB0byBhIEthZmthIENsdXN0ZXIuIEluY2x1ZGVzIHRoZSBhdXRoZW50aWNhdGlvbiB0eXBlLCBhcyB3ZWxsIGFzIHRoZSBwYXJhbWV0ZXJzIGZvciB0aGF0IGF1dGhlbnRpY2F0aW9uIG1vZGUuXG4gKlxuICogQHNjaGVtYSBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbXNLYWZrYUF1dGhlbnRpY2F0aW9uIHtcbiAgLyoqXG4gICAqIFN0eWxlIG9mIGF1dGhlbnRpY2F0aW9uLiBDYW4gYmUgb25lIG9mIFBMQUlOLCBTQ1JBTS0yNTYsIG9yIFNDUkFNLTUxMi5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbiNNZWNoYW5pc21cbiAgICovXG4gIHJlYWRvbmx5IG1lY2hhbmlzbT86IHN0cmluZztcblxuICAvKipcbiAgICogVXNlcm5hbWUgb2YgdGhlIGFjY291bnQgdG8gY29ubmVjdCB0byB0aGUgS2Fma2EgY2x1c3Rlci5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbiNVc2VybmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdXNlcm5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N0cmVhbXNLYWZrYUF1dGhlbnRpY2F0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbihcbiAgb2JqOiBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE1lY2hhbmlzbTogb2JqLm1lY2hhbmlzbSxcbiAgICBVc2VybmFtZTogb2JqLnVzZXJuYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUgc2VjdXJlIHRyYW5zcG9ydCBjb25uZWN0aW9uIHRvIEthZmthLiBGb3IgU1NMLCB0aGlzIGNhbiBpbmNsdWRlIHRoZSB0cnVzdGVkIGNlcnRpZmljYXRlIHRvIHVzZS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNLYWZrYVNlY3VyaXR5XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyZWFtc0thZmthU2VjdXJpdHkge1xuICAvKipcbiAgICogQSB0cnVzdGVkLCBwdWJsaWMgeDUwOSBjZXJ0aWZpY2F0ZSBmb3IgY29ubmVjdGluZyB0byBLYWZrYSBvdmVyIFNTTC5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FTZWN1cml0eSNCcm9rZXJQdWJsaWNDZXJ0aWZpY2F0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYnJva2VyUHVibGljQ2VydGlmaWNhdGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlc2NyaWJlcyB0aGUgdHJhbnNwb3J0IHR5cGUuIENhbiBiZSBlaXRoZXIgUExBSU5URVhUIG9yIFNTTC5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FTZWN1cml0eSNQcm90b2NvbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdG9jb2w/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N0cmVhbXNLYWZrYVNlY3VyaXR5JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdHJlYW1zS2Fma2FTZWN1cml0eShcbiAgb2JqOiBTdHJlYW1zS2Fma2FTZWN1cml0eSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEJyb2tlclB1YmxpY0NlcnRpZmljYXRlOiBvYmouYnJva2VyUHVibGljQ2VydGlmaWNhdGUsXG4gICAgUHJvdG9jb2w6IG9iai5wcm90b2NvbCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogVGhlIG5hbWUgb2YgYSBCdWlsdCBpbiBvciBDdXN0b20gREIgUm9sZSB0byBjb25uZWN0IHRvIGFuIEF0bGFzIENsdXN0ZXIuXG4gKlxuICogQHNjaGVtYSBEQlJvbGVUb0V4ZWN1dGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYlJvbGVUb0V4ZWN1dGUge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJvbGUgdG8gdXNlLiBDYW4gYmUgYSBidWlsdCBpbiByb2xlIG9yIGEgY3VzdG9tIHJvbGUuXG4gICAqXG4gICAqIEBzY2hlbWEgREJSb2xlVG9FeGVjdXRlI1JvbGVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgdGhlIERCIHJvbGUuIENhbiBiZSBlaXRoZXIgQnVpbHRJbiBvciBDdXN0b20uXG4gICAqXG4gICAqIEBzY2hlbWEgREJSb2xlVG9FeGVjdXRlI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBEYlJvbGVUb0V4ZWN1dGVUeXBlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdEYlJvbGVUb0V4ZWN1dGUnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0RiUm9sZVRvRXhlY3V0ZShcbiAgb2JqOiBEYlJvbGVUb0V4ZWN1dGUgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBSb2xlOiBvYmoucm9sZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogVHlwZSBvZiB0aGUgREIgcm9sZS4gQ2FuIGJlIGVpdGhlciBCdWlsdEluIG9yIEN1c3RvbS5cbiAqXG4gKiBAc2NoZW1hIERiUm9sZVRvRXhlY3V0ZVR5cGVcbiAqL1xuZXhwb3J0IGVudW0gRGJSb2xlVG9FeGVjdXRlVHlwZSB7XG4gIC8qKiBCVUlMVF9JTiAqL1xuICBCVUlMVF9VTkRFUlNDT1JFX0lOID0gXCJCVUlMVF9JTlwiLFxuICAvKiogQ1VTVE9NICovXG4gIENVU1RPTSA9IFwiQ1VTVE9NXCIsXG59XG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6OlN0cmVhbUluc3RhbmNlYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpTdHJlYW1JbnN0YW5jZVxuICogQHN0YWJpbGl0eSBleHRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgQ2ZuU3RyZWFtSW5zdGFuY2UgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6U3RyZWFtSW5zdGFuY2VcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblN0cmVhbUluc3RhbmNlUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlN0cmVhbUluc3RhbmNlLklkYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJJZDogc3RyaW5nO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6U3RyZWFtSW5zdGFuY2UuSG9zdG5hbWVzYFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGF0dHJIb3N0bmFtZXM6IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgYE1vbmdvREI6OkF0bGFzOjpTdHJlYW1JbnN0YW5jZWAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5TdHJlYW1JbnN0YW5jZVByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuU3RyZWFtSW5zdGFuY2UuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5TdHJlYW1JbnN0YW5jZVByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJJZCA9IGNkay5Ub2tlbi5hc1N0cmluZyh0aGlzLmdldEF0dChcIklkXCIpKTtcbiAgICB0aGlzLmF0dHJIb3N0bmFtZXMgPSBjZGsuVG9rZW4uYXNMaXN0KHRoaXMuZ2V0QXR0KFwiSG9zdG5hbWVzXCIpKTtcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3N0cmVhbS1pbnN0YW5jZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUE4Q25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLDZCQUE2QixDQUMzQyxHQUF1QztJQUV2QyxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsaUJBQWlCLEVBQUUsK0JBQStCLENBQUMsR0FBRyxDQUFDLGlCQUFpQixDQUFDO1FBQ3pFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDO1FBQ25ELFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsd0JBQXdCLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckUsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQW5CRCxzRUFtQkM7QUFzQkQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsK0JBQStCLENBQzdDLEdBQXlDO0lBRXpDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsYUFBYSxFQUFFLEdBQUcsQ0FBQyxhQUFhO1FBQ2hDLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtLQUNuQixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCwwRUFlQztBQWlCRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixtQkFBbUIsQ0FDakMsR0FBNkI7SUFFN0IsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7S0FDZixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFkRCxrREFjQztBQXFERDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQix3QkFBd0IsQ0FDdEMsR0FBa0M7SUFFbEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxjQUFjLEVBQUUsaUNBQWlDLENBQUMsR0FBRyxDQUFDLGNBQWMsQ0FBQztRQUNyRSxnQkFBZ0IsRUFBRSxHQUFHLENBQUMsZ0JBQWdCO1FBQ3RDLFFBQVEsRUFBRSwyQkFBMkIsQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDO1FBQ25ELFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztRQUM1QixlQUFlLEVBQUUsc0JBQXNCLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQztLQUM3RCxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFwQkQsNERBb0JDO0FBQ0Qsd0NBQXdDO0FBRXhDOzs7O0dBSUc7QUFDSCxJQUFZLHFDQVdYO0FBWEQsV0FBWSxxQ0FBcUM7SUFDL0MsVUFBVTtJQUNWLG9EQUFXLENBQUE7SUFDWCxVQUFVO0lBQ1Ysb0RBQVcsQ0FBQTtJQUNYLFlBQVk7SUFDWix3REFBZSxDQUFBO0lBQ2YsYUFBYTtJQUNiLDBEQUFpQixDQUFBO0lBQ2pCLGlCQUFpQjtJQUNqQixrRUFBeUIsQ0FBQTtBQUMzQixDQUFDLEVBWFcscUNBQXFDLEdBQXJDLDZDQUFxQyxLQUFyQyw2Q0FBcUMsUUFXaEQ7QUFFRDs7OztHQUlHO0FBQ0gsSUFBWSxxQkFPWDtBQVBELFdBQVkscUJBQXFCO0lBQy9CLFlBQVk7SUFDWix3Q0FBZSxDQUFBO0lBQ2YsY0FBYztJQUNkLDRDQUFtQixDQUFBO0lBQ25CLGFBQWE7SUFDYiwwQ0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBUFcscUJBQXFCLEdBQXJCLDZCQUFxQixLQUFyQiw2QkFBcUIsUUFPaEM7QUF1QkQ7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0IsaUNBQWlDLENBQy9DLEdBQTJDO0lBRTNDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO1FBQ3hCLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtLQUN2QixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCw4RUFlQztBQXdCRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQiwyQkFBMkIsQ0FDekMsR0FBcUM7SUFFckMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYix1QkFBdUIsRUFBRSxHQUFHLENBQUMsdUJBQXVCO1FBQ3BELFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtLQUN2QixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCxrRUFlQztBQXdCRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixzQkFBc0IsQ0FDcEMsR0FBZ0M7SUFFaEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7UUFDZCxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7S0FDZixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFmRCx3REFlQztBQUNELHdDQUF3QztBQUV4Qzs7OztHQUlHO0FBQ0gsSUFBWSxtQkFLWDtBQUxELFdBQVksbUJBQW1CO0lBQzdCLGVBQWU7SUFDZiw0Q0FBcUIsQ0FBQTtJQUNyQixhQUFhO0lBQ2Isd0NBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUxXLG1CQUFtQixHQUFuQiwyQkFBbUIsS0FBbkIsMkJBQW1CLFFBSzlCO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFhLGlCQUFrQixTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBcUJwRDs7Ozs7O09BTUc7SUFDSCxZQUNFLEtBQTJCLEVBQzNCLEVBQVUsRUFDVixLQUE2QjtRQUU3QixLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxpQkFBaUIsQ0FBQyxzQkFBc0I7WUFDOUMsVUFBVSxFQUFFLDZCQUE2QixDQUFDLEtBQUssQ0FBRTtTQUNsRCxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUNwRCxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNsRSxDQUFDOztBQTFDSCw4Q0EyQ0M7OztBQTFDQzs7R0FFRztBQUNvQix3Q0FBc0IsR0FDM0MsZ0NBQWdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFJldHVybnMsIGFkZHMsIGVkaXRzLCBhbmQgcmVtb3ZlcyBBdGxhcyBTdHJlYW0gUHJvY2Vzc2luZyBJbnN0YW5jZXMuXG4gKlxuICogQHNjaGVtYSBDZm5TdHJlYW1JbnN0YW5jZVByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgcHJvZmlsZSBpcyBkZWZpbmVkIGluIEFXUyBTZWNyZXQgbWFuYWdlci4gU2VlIFtTZWNyZXQgTWFuYWdlciBQcm9maWxlIHNldHVwXSguLi8uLi8uLi9leGFtcGxlcy9wcm9maWxlLXNlY3JldC55YW1sKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5TdHJlYW1JbnN0YW5jZVByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc3RyZWFtIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyNJbnN0YW5jZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblN0cmVhbUluc3RhbmNlUHJvcHMjRGF0YVByb2Nlc3NSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IGRhdGFQcm9jZXNzUmVnaW9uOiBTdHJlYW1zRGF0YVByb2Nlc3NSZWdpb247XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyNTdHJlYW1Db25maWdcbiAgICovXG4gIHJlYWRvbmx5IHN0cmVhbUNvbmZpZzogU3RyZWFtQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblN0cmVhbUluc3RhbmNlUHJvcHMjQ29ubmVjdGlvbnNcbiAgICovXG4gIHJlYWRvbmx5IGNvbm5lY3Rpb25zPzogU3RyZWFtc0Nvbm5lY3Rpb25bXTtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGNoYXJhY3RlciBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblN0cmVhbUluc3RhbmNlUHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyhcbiAgb2JqOiBDZm5TdHJlYW1JbnN0YW5jZVByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgSW5zdGFuY2VOYW1lOiBvYmouaW5zdGFuY2VOYW1lLFxuICAgIERhdGFQcm9jZXNzUmVnaW9uOiB0b0pzb25fU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uKG9iai5kYXRhUHJvY2Vzc1JlZ2lvbiksXG4gICAgU3RyZWFtQ29uZmlnOiB0b0pzb25fU3RyZWFtQ29uZmlnKG9iai5zdHJlYW1Db25maWcpLFxuICAgIENvbm5lY3Rpb25zOiBvYmouY29ubmVjdGlvbnM/Lm1hcCgoeSkgPT4gdG9Kc29uX1N0cmVhbXNDb25uZWN0aW9uKHkpKSxcbiAgICBQcm9qZWN0SWQ6IG9iai5wcm9qZWN0SWQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEluZm9ybWF0aW9uIGFib3V0IHRoZSBjbG91ZCBwcm92aWRlciByZWdpb24gaW4gd2hpY2ggTW9uZ29EQiBDbG91ZCBwcm9jZXNzZXMgdGhlIHN0cmVhbS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvbiB7XG4gIC8qKlxuICAgKiBMYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIgd2hlcmUgTW9uZ29EQiBDbG91ZCBwZXJmb3JtcyBzdHJlYW0gcHJvY2Vzc2luZy4gQ3VycmVudGx5LCB0aGlzIHBhcmFtZXRlciBzdXBwb3J0cyBBV1Mgb25seS5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zRGF0YVByb2Nlc3NSZWdpb24jQ2xvdWRQcm92aWRlclxuICAgKi9cbiAgcmVhZG9ubHkgY2xvdWRQcm92aWRlcjogU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uQ2xvdWRQcm92aWRlcjtcblxuICAvKipcbiAgICogQHNjaGVtYSBTdHJlYW1zRGF0YVByb2Nlc3NSZWdpb24jUmVnaW9uXG4gICAqL1xuICByZWFkb25seSByZWdpb246IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdHJlYW1zRGF0YVByb2Nlc3NSZWdpb24oXG4gIG9iajogU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2xvdWRQcm92aWRlcjogb2JqLmNsb3VkUHJvdmlkZXIsXG4gICAgUmVnaW9uOiBvYmoucmVnaW9uLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIG9wdGlvbnMgZm9yIGFuIEF0bGFzIFN0cmVhbSBQcm9jZXNzaW5nIEluc3RhbmNlLlxuICpcbiAqIEBzY2hlbWEgU3RyZWFtQ29uZmlnXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyZWFtQ29uZmlnIHtcbiAgLyoqXG4gICAqIFNlbGVjdGVkIHRpZXIgZm9yIHRoZSBTdHJlYW0gSW5zdGFuY2UuIENvbmZpZ3VyZXMgTWVtb3J5IC8gVkNQVSBhbGxvd2FuY2VzLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0cmVhbUNvbmZpZyNUaWVyXG4gICAqL1xuICByZWFkb25seSB0aWVyPzogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTdHJlYW1Db25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX1N0cmVhbUNvbmZpZyhcbiAgb2JqOiBTdHJlYW1Db25maWcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBUaWVyOiBvYmoudGllcixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogU2V0dGluZ3MgdGhhdCBkZWZpbmUgYSBjb25uZWN0aW9uIHRvIGFuIGV4dGVybmFsIGRhdGEgc3RvcmUuXG4gKlxuICogQHNjaGVtYSBTdHJlYW1zQ29ubmVjdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbXNDb25uZWN0aW9uIHtcbiAgLyoqXG4gICAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgc3RyZWFtIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogVHlwZSBvZiB0aGUgY29ubmVjdGlvbi4gQ2FuIGJlIGVpdGhlciBDbHVzdGVyIG9yIEthZmthLlxuICAgKlxuICAgKiBAc2NoZW1hIFN0cmVhbXNDb25uZWN0aW9uI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBTdHJlYW1zQ29ubmVjdGlvblR5cGU7XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jQXV0aGVudGljYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGF1dGhlbnRpY2F0aW9uPzogU3RyZWFtc0thZmthQXV0aGVudGljYXRpb247XG5cbiAgLyoqXG4gICAqIENvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIHNlcnZlciBhZGRyZXNzZXMuXG4gICAqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jQm9vdHN0cmFwU2VydmVyc1xuICAgKi9cbiAgcmVhZG9ubHkgYm9vdHN0cmFwU2VydmVycz86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSBTdHJlYW1zQ29ubmVjdGlvbiNTZWN1cml0eVxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHk/OiBTdHJlYW1zS2Fma2FTZWN1cml0eTtcblxuICAvKipcbiAgICogTmFtZSBvZiB0aGUgY2x1c3RlciBjb25maWd1cmVkIGZvciB0aGlzIGNvbm5lY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgU3RyZWFtc0Nvbm5lY3Rpb24jQ2x1c3Rlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGNsdXN0ZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIFN0cmVhbXNDb25uZWN0aW9uI0RiUm9sZVRvRXhlY3V0ZVxuICAgKi9cbiAgcmVhZG9ubHkgZGJSb2xlVG9FeGVjdXRlPzogRGJSb2xlVG9FeGVjdXRlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTdHJlYW1zQ29ubmVjdGlvbicgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU3RyZWFtc0Nvbm5lY3Rpb24oXG4gIG9iajogU3RyZWFtc0Nvbm5lY3Rpb24gfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBBdXRoZW50aWNhdGlvbjogdG9Kc29uX1N0cmVhbXNLYWZrYUF1dGhlbnRpY2F0aW9uKG9iai5hdXRoZW50aWNhdGlvbiksXG4gICAgQm9vdHN0cmFwU2VydmVyczogb2JqLmJvb3RzdHJhcFNlcnZlcnMsXG4gICAgU2VjdXJpdHk6IHRvSnNvbl9TdHJlYW1zS2Fma2FTZWN1cml0eShvYmouc2VjdXJpdHkpLFxuICAgIENsdXN0ZXJOYW1lOiBvYmouY2x1c3Rlck5hbWUsXG4gICAgRGJSb2xlVG9FeGVjdXRlOiB0b0pzb25fRGJSb2xlVG9FeGVjdXRlKG9iai5kYlJvbGVUb0V4ZWN1dGUpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBMYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIGNsb3VkIHNlcnZpY2UgcHJvdmlkZXIgd2hlcmUgTW9uZ29EQiBDbG91ZCBwZXJmb3JtcyBzdHJlYW0gcHJvY2Vzc2luZy4gQ3VycmVudGx5LCB0aGlzIHBhcmFtZXRlciBzdXBwb3J0cyBBV1Mgb25seS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNEYXRhUHJvY2Vzc1JlZ2lvbkNsb3VkUHJvdmlkZXJcbiAqL1xuZXhwb3J0IGVudW0gU3RyZWFtc0RhdGFQcm9jZXNzUmVnaW9uQ2xvdWRQcm92aWRlciB7XG4gIC8qKiBBV1MgKi9cbiAgQVdTID0gXCJBV1NcIixcbiAgLyoqIEdDUCAqL1xuICBHQ1AgPSBcIkdDUFwiLFxuICAvKiogQVpVUkUgKi9cbiAgQVpVUkUgPSBcIkFaVVJFXCIsXG4gIC8qKiBURU5BTlQgKi9cbiAgVEVOQU5UID0gXCJURU5BTlRcIixcbiAgLyoqIFNFUlZFUkxFU1MgKi9cbiAgU0VSVkVSTEVTUyA9IFwiU0VSVkVSTEVTU1wiLFxufVxuXG4vKipcbiAqIFR5cGUgb2YgdGhlIGNvbm5lY3Rpb24uIENhbiBiZSBlaXRoZXIgQ2x1c3RlciBvciBLYWZrYS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNDb25uZWN0aW9uVHlwZVxuICovXG5leHBvcnQgZW51bSBTdHJlYW1zQ29ubmVjdGlvblR5cGUge1xuICAvKiogS2Fma2EgKi9cbiAgS0FGS0EgPSBcIkthZmthXCIsXG4gIC8qKiBDbHVzdGVyICovXG4gIENMVVNURVIgPSBcIkNsdXN0ZXJcIixcbiAgLyoqIFNhbXBsZSAqL1xuICBTQU1QTEUgPSBcIlNhbXBsZVwiLFxufVxuXG4vKipcbiAqIFVzZXIgY3JlZGVudGlhbHMgcmVxdWlyZWQgdG8gY29ubmVjdCB0byBhIEthZmthIENsdXN0ZXIuIEluY2x1ZGVzIHRoZSBhdXRoZW50aWNhdGlvbiB0eXBlLCBhcyB3ZWxsIGFzIHRoZSBwYXJhbWV0ZXJzIGZvciB0aGF0IGF1dGhlbnRpY2F0aW9uIG1vZGUuXG4gKlxuICogQHNjaGVtYSBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvblxuICovXG5leHBvcnQgaW50ZXJmYWNlIFN0cmVhbXNLYWZrYUF1dGhlbnRpY2F0aW9uIHtcbiAgLyoqXG4gICAqIFN0eWxlIG9mIGF1dGhlbnRpY2F0aW9uLiBDYW4gYmUgb25lIG9mIFBMQUlOLCBTQ1JBTS0yNTYsIG9yIFNDUkFNLTUxMi5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbiNNZWNoYW5pc21cbiAgICovXG4gIHJlYWRvbmx5IG1lY2hhbmlzbT86IHN0cmluZztcblxuICAvKipcbiAgICogVXNlcm5hbWUgb2YgdGhlIGFjY291bnQgdG8gY29ubmVjdCB0byB0aGUgS2Fma2EgY2x1c3Rlci5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbiNVc2VybmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdXNlcm5hbWU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N0cmVhbXNLYWZrYUF1dGhlbnRpY2F0aW9uJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbihcbiAgb2JqOiBTdHJlYW1zS2Fma2FBdXRoZW50aWNhdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE1lY2hhbmlzbTogb2JqLm1lY2hhbmlzbSxcbiAgICBVc2VybmFtZTogb2JqLnVzZXJuYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBQcm9wZXJ0aWVzIGZvciB0aGUgc2VjdXJlIHRyYW5zcG9ydCBjb25uZWN0aW9uIHRvIEthZmthLiBGb3IgU1NMLCB0aGlzIGNhbiBpbmNsdWRlIHRoZSB0cnVzdGVkIGNlcnRpZmljYXRlIHRvIHVzZS5cbiAqXG4gKiBAc2NoZW1hIFN0cmVhbXNLYWZrYVNlY3VyaXR5XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgU3RyZWFtc0thZmthU2VjdXJpdHkge1xuICAvKipcbiAgICogQSB0cnVzdGVkLCBwdWJsaWMgeDUwOSBjZXJ0aWZpY2F0ZSBmb3IgY29ubmVjdGluZyB0byBLYWZrYSBvdmVyIFNTTC5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FTZWN1cml0eSNCcm9rZXJQdWJsaWNDZXJ0aWZpY2F0ZVxuICAgKi9cbiAgcmVhZG9ubHkgYnJva2VyUHVibGljQ2VydGlmaWNhdGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIERlc2NyaWJlcyB0aGUgdHJhbnNwb3J0IHR5cGUuIENhbiBiZSBlaXRoZXIgUExBSU5URVhUIG9yIFNTTC5cbiAgICpcbiAgICogQHNjaGVtYSBTdHJlYW1zS2Fma2FTZWN1cml0eSNQcm90b2NvbFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvdG9jb2w/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ1N0cmVhbXNLYWZrYVNlY3VyaXR5JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9TdHJlYW1zS2Fma2FTZWN1cml0eShcbiAgb2JqOiBTdHJlYW1zS2Fma2FTZWN1cml0eSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEJyb2tlclB1YmxpY0NlcnRpZmljYXRlOiBvYmouYnJva2VyUHVibGljQ2VydGlmaWNhdGUsXG4gICAgUHJvdG9jb2w6IG9iai5wcm90b2NvbCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogVGhlIG5hbWUgb2YgYSBCdWlsdCBpbiBvciBDdXN0b20gREIgUm9sZSB0byBjb25uZWN0IHRvIGFuIEF0bGFzIENsdXN0ZXIuXG4gKlxuICogQHNjaGVtYSBEQlJvbGVUb0V4ZWN1dGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYlJvbGVUb0V4ZWN1dGUge1xuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIHJvbGUgdG8gdXNlLiBDYW4gYmUgYSBidWlsdCBpbiByb2xlIG9yIGEgY3VzdG9tIHJvbGUuXG4gICAqXG4gICAqIEBzY2hlbWEgREJSb2xlVG9FeGVjdXRlI1JvbGVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFR5cGUgb2YgdGhlIERCIHJvbGUuIENhbiBiZSBlaXRoZXIgQnVpbHRJbiBvciBDdXN0b20uXG4gICAqXG4gICAqIEBzY2hlbWEgREJSb2xlVG9FeGVjdXRlI1R5cGVcbiAgICovXG4gIHJlYWRvbmx5IHR5cGU/OiBEYlJvbGVUb0V4ZWN1dGVUeXBlO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdEYlJvbGVUb0V4ZWN1dGUnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0RiUm9sZVRvRXhlY3V0ZShcbiAgb2JqOiBEYlJvbGVUb0V4ZWN1dGUgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBSb2xlOiBvYmoucm9sZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogVHlwZSBvZiB0aGUgREIgcm9sZS4gQ2FuIGJlIGVpdGhlciBCdWlsdEluIG9yIEN1c3RvbS5cbiAqXG4gKiBAc2NoZW1hIERiUm9sZVRvRXhlY3V0ZVR5cGVcbiAqL1xuZXhwb3J0IGVudW0gRGJSb2xlVG9FeGVjdXRlVHlwZSB7XG4gIC8qKiBCVUlMVF9JTiAqL1xuICBCVUlMVF9JTiA9IFwiQlVJTFRfSU5cIixcbiAgLyoqIENVU1RPTSAqL1xuICBDVVNUT00gPSBcIkNVU1RPTVwiLFxufVxuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpTdHJlYW1JbnN0YW5jZWBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6U3RyZWFtSW5zdGFuY2VcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmblN0cmVhbUluc3RhbmNlIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPVxuICAgIFwiTW9uZ29EQjo6QXRsYXM6OlN0cmVhbUluc3RhbmNlXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5TdHJlYW1JbnN0YW5jZVByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpTdHJlYW1JbnN0YW5jZS5JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySWQ6IHN0cmluZztcbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlN0cmVhbUluc3RhbmNlLkhvc3RuYW1lc2BcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRySG9zdG5hbWVzOiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6U3RyZWFtSW5zdGFuY2VgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihcbiAgICBzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblN0cmVhbUluc3RhbmNlLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuU3RyZWFtSW5zdGFuY2VQcm9wcyhwcm9wcykhLFxuICAgIH0pO1xuXG4gICAgdGhpcy5wcm9wcyA9IHByb3BzO1xuXG4gICAgdGhpcy5hdHRySWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJJZFwiKSk7XG4gICAgdGhpcy5hdHRySG9zdG5hbWVzID0gY2RrLlRva2VuLmFzTGlzdCh0aGlzLmdldEF0dChcIkhvc3RuYW1lc1wiKSk7XG4gIH1cbn1cbiJdfQ==

@@ -22,3 +22,3 @@ import * as cdk from "aws-cdk-lib";

/**
* Unique 24-hexadecimal character string that identifies the team.
* Unique 24-hexadecimal character string that identifies the organization.
*

@@ -35,3 +35,3 @@ * @schema CfnTeamsProps#OrgId

/**
* Unique 24-hexadecimal character string that identifies the team.
* Human-readable label that identifies the team.
*

@@ -42,3 +42,3 @@ * @schema CfnTeamsProps#Name

/**
* One or more organization- or project-level roles to assign to the MongoDB Cloud user.
* List that contains the MongoDB Cloud users in this team.
*

@@ -45,0 +45,0 @@ * @schema CfnTeamsProps#Usernames

@@ -181,3 +181,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnTeams[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnTeams", version: "3.7.2" };
CfnTeams[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnTeams", version: "3.8.0" };
/**

@@ -187,2 +187,2 @@ * The CloudFormation resource type name for this resource class.

CfnTeams.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::Teams";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3RlYW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTJEbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isb0JBQW9CLENBQ2xDLEdBQThCO0lBRTlCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNsRCxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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a0M7SUFDbEMsZ0ZBQTJELENBQUE7SUFDM0QsbUNBQW1DO0lBQ25DLGtGQUE2RCxDQUFBO0lBQzdELGtCQUFrQjtJQUNsQixnREFBMkIsQ0FBQTtJQUMzQixzQkFBc0I7SUFDdEIsd0RBQW1DLENBQUE7QUFDckMsQ0FBQyxFQXZCVyxpQkFBaUIsR0FBakIseUJBQWlCLEtBQWpCLHlCQUFpQixRQXVCNUI7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsUUFBUyxTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBZ0IzQzs7Ozs7O09BTUc7SUFDSCxZQUFZLEtBQTJCLEVBQUUsRUFBVSxFQUFFLEtBQW9CO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLFFBQVEsQ0FBQyxzQkFBc0I7WUFDckMsVUFBVSxFQUFFLG9CQUFvQixDQUFDLEtBQUssQ0FBRTtTQUN6QyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDOztBQWhDSCw0QkFpQ0M7OztBQWhDQzs7R0FFRztBQUNvQiwrQkFBc0IsR0FBRyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQWRkcyBvbmUgdGVhbSB0byB0aGUgc3BlY2lmaWVkIHByb2plY3QuIEFsbCBtZW1iZXJzIG9mIHRoZSB0ZWFtIHNoYXJlIHRoZSBzYW1lIHByb2plY3QgYWNjZXNzLiBUbyB1c2UgdGhpcyByZXNvdXJjZSwgdGhlIHJlcXVlc3RpbmcgQVBJIEtleSBtdXN0IGhhdmUgdGhlIFByb2plY3QgVXNlciBBZG1pbiByb2xlLiBUaGlzIHJlc291cmNlIGRvZXNuJ3QgcmVxdWlyZSB0aGUgQVBJIEtleSB0byBoYXZlIGFuIEFjY2VzcyBMaXN0LlxuICpcbiAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblRlYW1zUHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPbmUgb3IgbW9yZSBvcmdhbml6YXRpb24tIG9yIHByb2plY3QtbGV2ZWwgcm9sZXMgdG8gYXNzaWduIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNSb2xlTmFtZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lcz86IENmblRlYW1zUHJvcHNSb2xlTmFtZXNbXTtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGNoYXJhY3RlciBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSB0ZWFtLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRlYW1zUHJvcHMjT3JnSWRcbiAgICovXG4gIHJlYWRvbmx5IG9yZ0lkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgY2hhcmFjdGVyIHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGNoYXJhY3RlciBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSB0ZWFtLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRlYW1zUHJvcHMjTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgbmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogT25lIG9yIG1vcmUgb3JnYW5pemF0aW9uLSBvciBwcm9qZWN0LWxldmVsIHJvbGVzIHRvIGFzc2lnbiB0byB0aGUgTW9uZ29EQiBDbG91ZCB1c2VyLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRlYW1zUHJvcHMjVXNlcm5hbWVzXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiByZXR1cm5lZCBkb2N1bWVudHMgdGhhdCBNb25nb0RCIENsb3VkIHByb3ZpZGVzIHdoZW4gY29tcGxldGluZyB0aGlzIHJlcXVlc3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNVc2Vyc1xuICAgKi9cbiAgcmVhZG9ubHkgdXNlcnM/OiBBdGxhc1VzZXJbXTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuVGVhbXNQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuVGVhbXNQcm9wcyhcbiAgb2JqOiBDZm5UZWFtc1Byb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgUm9sZU5hbWVzOiBvYmoucm9sZU5hbWVzPy5tYXAoKHkpID0+IHkpLFxuICAgIE9yZ0lkOiBvYmoub3JnSWQsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIFVzZXJuYW1lczogb2JqLnVzZXJuYW1lcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBVc2Vyczogb2JqLnVzZXJzPy5tYXAoKHkpID0+IHRvSnNvbl9BdGxhc1VzZXIoeSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIENmblRlYW1zUHJvcHNSb2xlTmFtZXNcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuVGVhbXNQcm9wc1JvbGVOYW1lcyB7XG4gIC8qKiBHUk9VUF9DTFVTVEVSX01BTkFHRVIgKi9cbiAgR1JPVVBfQ0xVU1RFUl9NQU5BR0VSID0gXCJHUk9VUF9DTFVTVEVSX01BTkFHRVJcIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX0FETUlOICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX0FETUlOID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTlwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWSA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEUgPSBcIkdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEVcIixcbiAgLyoqIEdST1VQX09XTkVSICovXG4gIEdST1VQX09XTkVSID0gXCJHUk9VUF9PV05FUlwiLFxuICAvKiogR1JPVVBfUkVBRF9PTkxZICovXG4gIEdST1VQX1JFQURfT05MWSA9IFwiR1JPVVBfUkVBRF9PTkxZXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBBdGxhc1VzZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdGxhc1VzZXIge1xuICAvKipcbiAgICogVHdvIGFscGhhYmV0IGNoYXJhY3RlcnMgdGhhdCBpZGVudGlmaWVzIE1vbmdvREIgQ2xvdWQgdXNlcidzIGdlb2dyYXBoaWMgbG9jYXRpb24uIFRoaXMgcGFyYW1ldGVyIHVzZXMgdGhlIElTTyAzMTY2LTFhMiBjb2RlIGZvcm1hdC5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1VzZXIjQ291bnRyeVxuICAgKi9cbiAgcmVhZG9ubHkgY291bnRyeT86IHN0cmluZztcblxuICAvKipcbiAgICogRW1haWwgYWRkcmVzcyB0aGF0IGJlbG9uZ3MgdG8gdGhlIE1vbmdvREIgQ2xvdWQgdXNlci5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1VzZXIjRW1haWxBZGRyZXNzXG4gICAqL1xuICByZWFkb25seSBlbWFpbEFkZHJlc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZpcnN0IG9yIGdpdmVuIG5hbWUgdGhhdCBiZWxvbmdzIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI0ZpcnN0TmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZmlyc3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgTW9uZ29EQiBDbG91ZCB1c2VyLlxuICAgKlxuICAgKiBAc2NoZW1hIEF0bGFzVXNlciNJZFxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExhc3QgbmFtZSwgZmFtaWx5IG5hbWUsIG9yIHN1cm5hbWUgdGhhdCBiZWxvbmdzIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI0xhc3ROYW1lXG4gICAqL1xuICByZWFkb25seSBsYXN0TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBvbmUgb3IgbW9yZSBVbmlmb3JtIFJlc291cmNlIExvY2F0b3JzIChVUkxzKSB0aGF0IHBvaW50IHRvIEFQSSBzdWItcmVzb3VyY2VzLCByZWxhdGVkIEFQSSByZXNvdXJjZXMsIG9yIGJvdGguIFJGQyA1OTg4IG91dGxpbmVzIHRoZXNlIHJlbGF0aW9uc2hpcHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI0xpbmtzXG4gICAqL1xuICByZWFkb25seSBsaW5rcz86IExpbmtbXTtcblxuICAvKipcbiAgICogTW9iaWxlIHBob25lIG51bWJlciB0aGF0IGJlbG9uZ3MgdG8gdGhlIE1vbmdvREIgQ2xvdWQgdXNlci5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1VzZXIjTW9iaWxlTnVtYmVyXG4gICAqL1xuICByZWFkb25seSBtb2JpbGVOdW1iZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBhc3N3b3JkIGFwcGxpZWQgd2l0aCB0aGUgdXNlcm5hbWUgdG8gbG9nIGluIHRvIE1vbmdvREIgQ2xvdWQuIE1vbmdvREIgQ2xvdWQgZG9lcyBub3QgcmV0dXJuIHRoaXMgcGFyYW1ldGVyIGV4Y2VwdCBpbiByZXNwb25zZSB0byBjcmVhdGluZyBhIG5ldyBNb25nb0RCIENsb3VkIHVzZXIuIE9ubHkgdGhlIE1vbmdvREIgQ2xvdWQgdXNlciBjYW4gdXBkYXRlIHRoZWlyIHBhc3N3b3JkIGFmdGVyIGl0IGhhcyBiZWVuIHNldCBmcm9tIHRoZSBNb25nb0RCIENsb3VkIGNvbnNvbGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI1Bhc3N3b3JkXG4gICAqL1xuICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBvYmplY3RzIHRoYXQgZGlzcGxheSB0aGUgTW9uZ29EQiBDbG91ZCB1c2VyJ3Mgcm9sZXMgYW5kIHRoZSBjb3JyZXNwb25kaW5nIG9yZ2FuaXphdGlvbiBvciBwcm9qZWN0IHRvIHdoaWNoIHRoYXQgcm9sZSBhcHBsaWVzLiBBIHJvbGUgY2FuIGFwcGx5IHRvIG9uZSBvcmdhbml6YXRpb24gb3Igb25lIHByb2plY3QgYnV0IG5vdCBib3RoLlxuICAgKlxuICAgKiBAc2NoZW1hIEF0bGFzVXNlciNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM/OiBBdGxhc1JvbGVbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiB1bmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5ncyB0aGF0IGlkZW50aWZpZXMgdGhlIHRlYW1zIHRvIHdoaWNoIHRoaXMgTW9uZ29EQiBDbG91ZCB1c2VyIGJlbG9uZ3MuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI1RlYW1JZHNcbiAgICovXG4gIHJlYWRvbmx5IHRlYW1JZHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRW1haWwgYWRkcmVzcyB0aGF0IHJlcHJlc2VudHMgdGhlIHVzZXJuYW1lIG9mIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI1VzZXJuYW1lXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXRsYXNVc2VyJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9BdGxhc1VzZXIoXG4gIG9iajogQXRsYXNVc2VyIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ291bnRyeTogb2JqLmNvdW50cnksXG4gICAgRW1haWxBZGRyZXNzOiBvYmouZW1haWxBZGRyZXNzLFxuICAgIEZpcnN0TmFtZTogb2JqLmZpcnN0TmFtZSxcbiAgICBJZDogb2JqLmlkLFxuICAgIExhc3ROYW1lOiBvYmoubGFzdE5hbWUsXG4gICAgTGlua3M6IG9iai5saW5rcz8ubWFwKCh5KSA9PiB0b0pzb25fTGluayh5KSksXG4gICAgTW9iaWxlTnVtYmVyOiBvYmoubW9iaWxlTnVtYmVyLFxuICAgIFBhc3N3b3JkOiBvYmoucGFzc3dvcmQsXG4gICAgUm9sZXM6IG9iai5yb2xlcz8ubWFwKCh5KSA9PiB0b0pzb25fQXRsYXNSb2xlKHkpKSxcbiAgICBUZWFtSWRzOiBvYmoudGVhbUlkcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBVc2VybmFtZTogb2JqLnVzZXJuYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBPbmUgb3IgbW9yZSBsaW5rcyB0byBzdWItcmVzb3VyY2VzIGFuZC9vciByZWxhdGVkIHJlc291cmNlcy5cbiAqXG4gKiBAc2NoZW1hIExpbmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaW5rIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgTGluayNSZWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSBMaW5rI0hyZWZcbiAgICovXG4gIHJlYWRvbmx5IGhyZWY/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0xpbmsnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0xpbmsoXG4gIG9iajogTGluayB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFJlbDogb2JqLnJlbCxcbiAgICBIcmVmOiBvYmouaHJlZixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBdGxhc1JvbGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdGxhc1JvbGUge1xuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIHByb2plY3QgdG8gd2hpY2ggdGhpcyByb2xlIGJlbG9uZ3MuIFlvdSBjYW4gc2V0IGEgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIG9yICoqb3JnSWQqKiBidXQgbm90IGJvdGggaW4gdGhlIHNhbWUgcmVxdWVzdC5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1JvbGUjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBvcmdhbml6YXRpb24gdG8gd2hpY2ggdGhpcyByb2xlIGJlbG9uZ3MuIFlvdSBjYW4gc2V0IGEgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIG9yICoqZ3JvdXBJZCoqIGJ1dCBub3QgYm90aCBpbiB0aGUgc2FtZSByZXF1ZXN0XG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNSb2xlI09yZ0lkXG4gICAqL1xuICByZWFkb25seSBvcmdJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjb2xsZWN0aW9uIG9mIHByaXZpbGVnZXMgdGhhdCBNb25nb0RCIENsb3VkIGdyYW50cyBhIHNwZWNpZmljIEFQSSBrZXksIE1vbmdvREIgQ2xvdWQgdXNlciwgb3IgTW9uZ29EQiBDbG91ZCB0ZWFtLiBUaGVzZSByb2xlcyBpbmNsdWRlIG9yZ2FuaXphdGlvbi0gYW5kIHByb2plY3QtbGV2ZWwgcm9sZXMuXG4gICAqXG4gICAqIE9yZ2FuaXphdGlvbiBSb2xlc1xuICAgKlxuICAgKiAqIE9SR19PV05FUlxuICAgKiAqIE9SR19NRU1CRVJcbiAgICogKiBPUkdfR1JPVVBfQ1JFQVRPUlxuICAgKiAqIE9SR19CSUxMSU5HX0FETUlOXG4gICAqICogT1JHX1JFQURfT05MWVxuICAgKlxuICAgKiBQcm9qZWN0IFJvbGVzXG4gICAqXG4gICAqICogR1JPVVBfQ0xVU1RFUl9NQU5BR0VSXG4gICAqICogR1JPVVBfREFUQV9BQ0NFU1NfQURNSU5cbiAgICogKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcbiAgICogKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFXG4gICAqICogR1JPVVBfT1dORVJcbiAgICogKiBHUk9VUF9SRUFEX09OTFlcbiAgICpcbiAgICpcbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1JvbGUjUm9sZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lPzogQXRsYXNSb2xlUm9sZU5hbWU7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F0bGFzUm9sZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXRsYXNSb2xlKFxuICBvYmo6IEF0bGFzUm9sZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBPcmdJZDogb2JqLm9yZ0lkLFxuICAgIFJvbGVOYW1lOiBvYmoucm9sZU5hbWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY29sbGVjdGlvbiBvZiBwcml2aWxlZ2VzIHRoYXQgTW9uZ29EQiBDbG91ZCBncmFudHMgYSBzcGVjaWZpYyBBUEkga2V5LCBNb25nb0RCIENsb3VkIHVzZXIsIG9yIE1vbmdvREIgQ2xvdWQgdGVhbS4gVGhlc2Ugcm9sZXMgaW5jbHVkZSBvcmdhbml6YXRpb24tIGFuZCBwcm9qZWN0LWxldmVsIHJvbGVzLlxuICpcbiAqIE9yZ2FuaXphdGlvbiBSb2xlc1xuICpcbiAqICogT1JHX09XTkVSXG4gKiAqIE9SR19NRU1CRVJcbiAqICogT1JHX0dST1VQX0NSRUFUT1JcbiAqICogT1JHX0JJTExJTkdfQURNSU5cbiAqICogT1JHX1JFQURfT05MWVxuICpcbiAqIFByb2plY3QgUm9sZXNcbiAqXG4gKiAqIEdST1VQX0NMVVNURVJfTUFOQUdFUlxuICogKiBHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTlxuICogKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcbiAqICogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURVxuICogKiBHUk9VUF9PV05FUlxuICogKiBHUk9VUF9SRUFEX09OTFlcbiAqXG4gKlxuICpcbiAqIEBzY2hlbWEgQXRsYXNSb2xlUm9sZU5hbWVcbiAqL1xuZXhwb3J0IGVudW0gQXRsYXNSb2xlUm9sZU5hbWUge1xuICAvKiogT1JHX09XTkVSICovXG4gIE9SR19PV05FUiA9IFwiT1JHX09XTkVSXCIsXG4gIC8qKiBPUkdfTUVNQkVSICovXG4gIE9SR19NRU1CRVIgPSBcIk9SR19NRU1CRVJcIixcbiAgLyoqIE9SR19HUk9VUF9DUkVBVE9SICovXG4gIE9SR19HUk9VUF9DUkVBVE9SID0gXCJPUkdfR1JPVVBfQ1JFQVRPUlwiLFxuICAvKiogT1JHX0JJTExJTkdfQURNSU4gKi9cbiAgT1JHX0JJTExJTkdfQURNSU4gPSBcIk9SR19CSUxMSU5HX0FETUlOXCIsXG4gIC8qKiBPUkdfUkVBRF9PTkxZICovXG4gIE9SR19SRUFEX09OTFkgPSBcIk9SR19SRUFEX09OTFlcIixcbiAgLyoqIEdST1VQX0NMVVNURVJfTUFOQUdFUiAqL1xuICBHUk9VUF9DTFVTVEVSX01BTkFHRVIgPSBcIkdST1VQX0NMVVNURVJfTUFOQUdFUlwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfQURNSU4gKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfQURNSU4gPSBcIkdST1VQX0RBVEFfQUNDRVNTX0FETUlOXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFkgKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEUgKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURSA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURVwiLFxuICAvKiogR1JPVVBfT1dORVIgKi9cbiAgR1JPVVBfT1dORVIgPSBcIkdST1VQX09XTkVSXCIsXG4gIC8qKiBHUk9VUF9SRUFEX09OTFkgKi9cbiAgR1JPVVBfUkVBRF9PTkxZID0gXCJHUk9VUF9SRUFEX09OTFlcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6VGVhbXNgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OlRlYW1zXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5UZWFtcyBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID0gXCJNb25nb0RCOjpBdGxhczo6VGVhbXNcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblRlYW1zUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlRlYW1zLlRlYW1JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyVGVhbUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlRlYW1zYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2ZuVGVhbXNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuVGVhbXMuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5UZWFtc1Byb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJUZWFtSWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJUZWFtSWRcIikpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3RlYW1zL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsMEJBQTBCO0FBQzFCLG1DQUFtQztBQTJEbkM7O0dBRUc7QUFDSCx5Q0FBeUM7QUFDekMsU0FBZ0Isb0JBQW9CLENBQ2xDLEdBQThCO0lBRTlCLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtRQUNyQixPQUFPLFNBQVMsQ0FBQztLQUNsQjtJQUNELE1BQU0sTUFBTSxHQUFHO1FBQ2IsT0FBTyxFQUFFLEdBQUcsQ0FBQyxPQUFPO1FBQ3BCLFNBQVMsRUFBRSxHQUFHLENBQUMsU0FBUyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7UUFDeEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUNsRCxDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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a0M7SUFDbEMsZ0ZBQTJELENBQUE7SUFDM0QsbUNBQW1DO0lBQ25DLGtGQUE2RCxDQUFBO0lBQzdELGtCQUFrQjtJQUNsQixnREFBMkIsQ0FBQTtJQUMzQixzQkFBc0I7SUFDdEIsd0RBQW1DLENBQUE7QUFDckMsQ0FBQyxFQXZCVyxpQkFBaUIsR0FBakIseUJBQWlCLEtBQWpCLHlCQUFpQixRQXVCNUI7QUFFRDs7Ozs7R0FLRztBQUNILE1BQWEsUUFBUyxTQUFRLEdBQUcsQ0FBQyxXQUFXO0lBZ0IzQzs7Ozs7O09BTUc7SUFDSCxZQUFZLEtBQTJCLEVBQUUsRUFBVSxFQUFFLEtBQW9CO1FBQ3ZFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLFFBQVEsQ0FBQyxzQkFBc0I7WUFDckMsVUFBVSxFQUFFLG9CQUFvQixDQUFDLEtBQUssQ0FBRTtTQUN6QyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUVuQixJQUFJLENBQUMsVUFBVSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDOztBQWhDSCw0QkFpQ0M7OztBQWhDQzs7R0FFRztBQUNvQiwrQkFBc0IsR0FBRyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIEdlbmVyYXRlZCBieSBjZGstaW1wb3J0XG5pbXBvcnQgKiBhcyBjZGsgZnJvbSBcImF3cy1jZGstbGliXCI7XG5pbXBvcnQgKiBhcyBjb25zdHJ1Y3RzIGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbi8qKlxuICogQWRkcyBvbmUgdGVhbSB0byB0aGUgc3BlY2lmaWVkIHByb2plY3QuIEFsbCBtZW1iZXJzIG9mIHRoZSB0ZWFtIHNoYXJlIHRoZSBzYW1lIHByb2plY3QgYWNjZXNzLiBUbyB1c2UgdGhpcyByZXNvdXJjZSwgdGhlIHJlcXVlc3RpbmcgQVBJIEtleSBtdXN0IGhhdmUgdGhlIFByb2plY3QgVXNlciBBZG1pbiByb2xlLiBUaGlzIHJlc291cmNlIGRvZXNuJ3QgcmVxdWlyZSB0aGUgQVBJIEtleSB0byBoYXZlIGFuIEFjY2VzcyBMaXN0LlxuICpcbiAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIENmblRlYW1zUHJvcHMge1xuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPbmUgb3IgbW9yZSBvcmdhbml6YXRpb24tIG9yIHByb2plY3QtbGV2ZWwgcm9sZXMgdG8gYXNzaWduIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNSb2xlTmFtZXNcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lcz86IENmblRlYW1zUHJvcHNSb2xlTmFtZXNbXTtcblxuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGNoYXJhY3RlciBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBvcmdhbml6YXRpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNPcmdJZFxuICAgKi9cbiAgcmVhZG9ubHkgb3JnSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBjaGFyYWN0ZXIgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgcHJvamVjdC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UZWFtc1Byb3BzI1Byb2plY3RJZFxuICAgKi9cbiAgcmVhZG9ubHkgcHJvamVjdElkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBIdW1hbi1yZWFkYWJsZSBsYWJlbCB0aGF0IGlkZW50aWZpZXMgdGhlIHRlYW0uXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNOYW1lXG4gICAqL1xuICByZWFkb25seSBuYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBMaXN0IHRoYXQgY29udGFpbnMgdGhlIE1vbmdvREIgQ2xvdWQgdXNlcnMgaW4gdGhpcyB0ZWFtLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRlYW1zUHJvcHMjVXNlcm5hbWVzXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZXM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiByZXR1cm5lZCBkb2N1bWVudHMgdGhhdCBNb25nb0RCIENsb3VkIHByb3ZpZGVzIHdoZW4gY29tcGxldGluZyB0aGlzIHJlcXVlc3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVGVhbXNQcm9wcyNVc2Vyc1xuICAgKi9cbiAgcmVhZG9ubHkgdXNlcnM/OiBBdGxhc1VzZXJbXTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuVGVhbXNQcm9wcycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ2ZuVGVhbXNQcm9wcyhcbiAgb2JqOiBDZm5UZWFtc1Byb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgUm9sZU5hbWVzOiBvYmoucm9sZU5hbWVzPy5tYXAoKHkpID0+IHkpLFxuICAgIE9yZ0lkOiBvYmoub3JnSWQsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICAgIE5hbWU6IG9iai5uYW1lLFxuICAgIFVzZXJuYW1lczogb2JqLnVzZXJuYW1lcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBVc2Vyczogb2JqLnVzZXJzPy5tYXAoKHkpID0+IHRvSnNvbl9BdGxhc1VzZXIoeSkpLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIENmblRlYW1zUHJvcHNSb2xlTmFtZXNcbiAqL1xuZXhwb3J0IGVudW0gQ2ZuVGVhbXNQcm9wc1JvbGVOYW1lcyB7XG4gIC8qKiBHUk9VUF9DTFVTVEVSX01BTkFHRVIgKi9cbiAgR1JPVVBfQ0xVU1RFUl9NQU5BR0VSID0gXCJHUk9VUF9DTFVTVEVSX01BTkFHRVJcIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX0FETUlOICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX0FETUlOID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTlwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfT05MWSA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFICovXG4gIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEUgPSBcIkdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEVcIixcbiAgLyoqIEdST1VQX09XTkVSICovXG4gIEdST1VQX09XTkVSID0gXCJHUk9VUF9PV05FUlwiLFxuICAvKiogR1JPVVBfUkVBRF9PTkxZICovXG4gIEdST1VQX1JFQURfT05MWSA9IFwiR1JPVVBfUkVBRF9PTkxZXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBBdGxhc1VzZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdGxhc1VzZXIge1xuICAvKipcbiAgICogVHdvIGFscGhhYmV0IGNoYXJhY3RlcnMgdGhhdCBpZGVudGlmaWVzIE1vbmdvREIgQ2xvdWQgdXNlcidzIGdlb2dyYXBoaWMgbG9jYXRpb24uIFRoaXMgcGFyYW1ldGVyIHVzZXMgdGhlIElTTyAzMTY2LTFhMiBjb2RlIGZvcm1hdC5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1VzZXIjQ291bnRyeVxuICAgKi9cbiAgcmVhZG9ubHkgY291bnRyeT86IHN0cmluZztcblxuICAvKipcbiAgICogRW1haWwgYWRkcmVzcyB0aGF0IGJlbG9uZ3MgdG8gdGhlIE1vbmdvREIgQ2xvdWQgdXNlci5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1VzZXIjRW1haWxBZGRyZXNzXG4gICAqL1xuICByZWFkb25seSBlbWFpbEFkZHJlc3M/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEZpcnN0IG9yIGdpdmVuIG5hbWUgdGhhdCBiZWxvbmdzIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI0ZpcnN0TmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZmlyc3ROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBVbmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5nIHRoYXQgaWRlbnRpZmllcyB0aGUgTW9uZ29EQiBDbG91ZCB1c2VyLlxuICAgKlxuICAgKiBAc2NoZW1hIEF0bGFzVXNlciNJZFxuICAgKi9cbiAgcmVhZG9ubHkgaWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIExhc3QgbmFtZSwgZmFtaWx5IG5hbWUsIG9yIHN1cm5hbWUgdGhhdCBiZWxvbmdzIHRvIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI0xhc3ROYW1lXG4gICAqL1xuICByZWFkb25seSBsYXN0TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBvbmUgb3IgbW9yZSBVbmlmb3JtIFJlc291cmNlIExvY2F0b3JzIChVUkxzKSB0aGF0IHBvaW50IHRvIEFQSSBzdWItcmVzb3VyY2VzLCByZWxhdGVkIEFQSSByZXNvdXJjZXMsIG9yIGJvdGguIFJGQyA1OTg4IG91dGxpbmVzIHRoZXNlIHJlbGF0aW9uc2hpcHMuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI0xpbmtzXG4gICAqL1xuICByZWFkb25seSBsaW5rcz86IExpbmtbXTtcblxuICAvKipcbiAgICogTW9iaWxlIHBob25lIG51bWJlciB0aGF0IGJlbG9uZ3MgdG8gdGhlIE1vbmdvREIgQ2xvdWQgdXNlci5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1VzZXIjTW9iaWxlTnVtYmVyXG4gICAqL1xuICByZWFkb25seSBtb2JpbGVOdW1iZXI/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFBhc3N3b3JkIGFwcGxpZWQgd2l0aCB0aGUgdXNlcm5hbWUgdG8gbG9nIGluIHRvIE1vbmdvREIgQ2xvdWQuIE1vbmdvREIgQ2xvdWQgZG9lcyBub3QgcmV0dXJuIHRoaXMgcGFyYW1ldGVyIGV4Y2VwdCBpbiByZXNwb25zZSB0byBjcmVhdGluZyBhIG5ldyBNb25nb0RCIENsb3VkIHVzZXIuIE9ubHkgdGhlIE1vbmdvREIgQ2xvdWQgdXNlciBjYW4gdXBkYXRlIHRoZWlyIHBhc3N3b3JkIGFmdGVyIGl0IGhhcyBiZWVuIHNldCBmcm9tIHRoZSBNb25nb0RCIENsb3VkIGNvbnNvbGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI1Bhc3N3b3JkXG4gICAqL1xuICByZWFkb25seSBwYXNzd29yZD86IHN0cmluZztcblxuICAvKipcbiAgICogTGlzdCBvZiBvYmplY3RzIHRoYXQgZGlzcGxheSB0aGUgTW9uZ29EQiBDbG91ZCB1c2VyJ3Mgcm9sZXMgYW5kIHRoZSBjb3JyZXNwb25kaW5nIG9yZ2FuaXphdGlvbiBvciBwcm9qZWN0IHRvIHdoaWNoIHRoYXQgcm9sZSBhcHBsaWVzLiBBIHJvbGUgY2FuIGFwcGx5IHRvIG9uZSBvcmdhbml6YXRpb24gb3Igb25lIHByb2plY3QgYnV0IG5vdCBib3RoLlxuICAgKlxuICAgKiBAc2NoZW1hIEF0bGFzVXNlciNSb2xlc1xuICAgKi9cbiAgcmVhZG9ubHkgcm9sZXM/OiBBdGxhc1JvbGVbXTtcblxuICAvKipcbiAgICogTGlzdCBvZiB1bmlxdWUgMjQtaGV4YWRlY2ltYWwgZGlnaXQgc3RyaW5ncyB0aGF0IGlkZW50aWZpZXMgdGhlIHRlYW1zIHRvIHdoaWNoIHRoaXMgTW9uZ29EQiBDbG91ZCB1c2VyIGJlbG9uZ3MuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI1RlYW1JZHNcbiAgICovXG4gIHJlYWRvbmx5IHRlYW1JZHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogRW1haWwgYWRkcmVzcyB0aGF0IHJlcHJlc2VudHMgdGhlIHVzZXJuYW1lIG9mIHRoZSBNb25nb0RCIENsb3VkIHVzZXIuXG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNVc2VyI1VzZXJuYW1lXG4gICAqL1xuICByZWFkb25seSB1c2VybmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQXRsYXNVc2VyJyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9BdGxhc1VzZXIoXG4gIG9iajogQXRsYXNVc2VyIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ291bnRyeTogb2JqLmNvdW50cnksXG4gICAgRW1haWxBZGRyZXNzOiBvYmouZW1haWxBZGRyZXNzLFxuICAgIEZpcnN0TmFtZTogb2JqLmZpcnN0TmFtZSxcbiAgICBJZDogb2JqLmlkLFxuICAgIExhc3ROYW1lOiBvYmoubGFzdE5hbWUsXG4gICAgTGlua3M6IG9iai5saW5rcz8ubWFwKCh5KSA9PiB0b0pzb25fTGluayh5KSksXG4gICAgTW9iaWxlTnVtYmVyOiBvYmoubW9iaWxlTnVtYmVyLFxuICAgIFBhc3N3b3JkOiBvYmoucGFzc3dvcmQsXG4gICAgUm9sZXM6IG9iai5yb2xlcz8ubWFwKCh5KSA9PiB0b0pzb25fQXRsYXNSb2xlKHkpKSxcbiAgICBUZWFtSWRzOiBvYmoudGVhbUlkcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBVc2VybmFtZTogb2JqLnVzZXJuYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBPbmUgb3IgbW9yZSBsaW5rcyB0byBzdWItcmVzb3VyY2VzIGFuZC9vciByZWxhdGVkIHJlc291cmNlcy5cbiAqXG4gKiBAc2NoZW1hIExpbmtcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBMaW5rIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgTGluayNSZWxcbiAgICovXG4gIHJlYWRvbmx5IHJlbD86IHN0cmluZztcblxuICAvKipcbiAgICogQHNjaGVtYSBMaW5rI0hyZWZcbiAgICovXG4gIHJlYWRvbmx5IGhyZWY/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0xpbmsnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0xpbmsoXG4gIG9iajogTGluayB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFJlbDogb2JqLnJlbCxcbiAgICBIcmVmOiBvYmouaHJlZixcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBdGxhc1JvbGVcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBdGxhc1JvbGUge1xuICAvKipcbiAgICogVW5pcXVlIDI0LWhleGFkZWNpbWFsIGRpZ2l0IHN0cmluZyB0aGF0IGlkZW50aWZpZXMgdGhlIHByb2plY3QgdG8gd2hpY2ggdGhpcyByb2xlIGJlbG9uZ3MuIFlvdSBjYW4gc2V0IGEgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIG9yICoqb3JnSWQqKiBidXQgbm90IGJvdGggaW4gdGhlIHNhbWUgcmVxdWVzdC5cbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1JvbGUjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFVuaXF1ZSAyNC1oZXhhZGVjaW1hbCBkaWdpdCBzdHJpbmcgdGhhdCBpZGVudGlmaWVzIHRoZSBvcmdhbml6YXRpb24gdG8gd2hpY2ggdGhpcyByb2xlIGJlbG9uZ3MuIFlvdSBjYW4gc2V0IGEgdmFsdWUgZm9yIHRoaXMgcGFyYW1ldGVyIG9yICoqZ3JvdXBJZCoqIGJ1dCBub3QgYm90aCBpbiB0aGUgc2FtZSByZXF1ZXN0XG4gICAqXG4gICAqIEBzY2hlbWEgQXRsYXNSb2xlI09yZ0lkXG4gICAqL1xuICByZWFkb25seSBvcmdJZD86IHN0cmluZztcblxuICAvKipcbiAgICogSHVtYW4tcmVhZGFibGUgbGFiZWwgdGhhdCBpZGVudGlmaWVzIHRoZSBjb2xsZWN0aW9uIG9mIHByaXZpbGVnZXMgdGhhdCBNb25nb0RCIENsb3VkIGdyYW50cyBhIHNwZWNpZmljIEFQSSBrZXksIE1vbmdvREIgQ2xvdWQgdXNlciwgb3IgTW9uZ29EQiBDbG91ZCB0ZWFtLiBUaGVzZSByb2xlcyBpbmNsdWRlIG9yZ2FuaXphdGlvbi0gYW5kIHByb2plY3QtbGV2ZWwgcm9sZXMuXG4gICAqXG4gICAqIE9yZ2FuaXphdGlvbiBSb2xlc1xuICAgKlxuICAgKiAqIE9SR19PV05FUlxuICAgKiAqIE9SR19NRU1CRVJcbiAgICogKiBPUkdfR1JPVVBfQ1JFQVRPUlxuICAgKiAqIE9SR19CSUxMSU5HX0FETUlOXG4gICAqICogT1JHX1JFQURfT05MWVxuICAgKlxuICAgKiBQcm9qZWN0IFJvbGVzXG4gICAqXG4gICAqICogR1JPVVBfQ0xVU1RFUl9NQU5BR0VSXG4gICAqICogR1JPVVBfREFUQV9BQ0NFU1NfQURNSU5cbiAgICogKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcbiAgICogKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX1dSSVRFXG4gICAqICogR1JPVVBfT1dORVJcbiAgICogKiBHUk9VUF9SRUFEX09OTFlcbiAgICpcbiAgICpcbiAgICpcbiAgICogQHNjaGVtYSBBdGxhc1JvbGUjUm9sZU5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVOYW1lPzogQXRsYXNSb2xlUm9sZU5hbWU7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F0bGFzUm9sZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQXRsYXNSb2xlKFxuICBvYmo6IEF0bGFzUm9sZSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgICBPcmdJZDogb2JqLm9yZ0lkLFxuICAgIFJvbGVOYW1lOiBvYmoucm9sZU5hbWUsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEh1bWFuLXJlYWRhYmxlIGxhYmVsIHRoYXQgaWRlbnRpZmllcyB0aGUgY29sbGVjdGlvbiBvZiBwcml2aWxlZ2VzIHRoYXQgTW9uZ29EQiBDbG91ZCBncmFudHMgYSBzcGVjaWZpYyBBUEkga2V5LCBNb25nb0RCIENsb3VkIHVzZXIsIG9yIE1vbmdvREIgQ2xvdWQgdGVhbS4gVGhlc2Ugcm9sZXMgaW5jbHVkZSBvcmdhbml6YXRpb24tIGFuZCBwcm9qZWN0LWxldmVsIHJvbGVzLlxuICpcbiAqIE9yZ2FuaXphdGlvbiBSb2xlc1xuICpcbiAqICogT1JHX09XTkVSXG4gKiAqIE9SR19NRU1CRVJcbiAqICogT1JHX0dST1VQX0NSRUFUT1JcbiAqICogT1JHX0JJTExJTkdfQURNSU5cbiAqICogT1JHX1JFQURfT05MWVxuICpcbiAqIFByb2plY3QgUm9sZXNcbiAqXG4gKiAqIEdST1VQX0NMVVNURVJfTUFOQUdFUlxuICogKiBHUk9VUF9EQVRBX0FDQ0VTU19BRE1JTlxuICogKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcbiAqICogR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURVxuICogKiBHUk9VUF9PV05FUlxuICogKiBHUk9VUF9SRUFEX09OTFlcbiAqXG4gKlxuICpcbiAqIEBzY2hlbWEgQXRsYXNSb2xlUm9sZU5hbWVcbiAqL1xuZXhwb3J0IGVudW0gQXRsYXNSb2xlUm9sZU5hbWUge1xuICAvKiogT1JHX09XTkVSICovXG4gIE9SR19PV05FUiA9IFwiT1JHX09XTkVSXCIsXG4gIC8qKiBPUkdfTUVNQkVSICovXG4gIE9SR19NRU1CRVIgPSBcIk9SR19NRU1CRVJcIixcbiAgLyoqIE9SR19HUk9VUF9DUkVBVE9SICovXG4gIE9SR19HUk9VUF9DUkVBVE9SID0gXCJPUkdfR1JPVVBfQ1JFQVRPUlwiLFxuICAvKiogT1JHX0JJTExJTkdfQURNSU4gKi9cbiAgT1JHX0JJTExJTkdfQURNSU4gPSBcIk9SR19CSUxMSU5HX0FETUlOXCIsXG4gIC8qKiBPUkdfUkVBRF9PTkxZICovXG4gIE9SR19SRUFEX09OTFkgPSBcIk9SR19SRUFEX09OTFlcIixcbiAgLyoqIEdST1VQX0NMVVNURVJfTUFOQUdFUiAqL1xuICBHUk9VUF9DTFVTVEVSX01BTkFHRVIgPSBcIkdST1VQX0NMVVNURVJfTUFOQUdFUlwiLFxuICAvKiogR1JPVVBfREFUQV9BQ0NFU1NfQURNSU4gKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfQURNSU4gPSBcIkdST1VQX0RBVEFfQUNDRVNTX0FETUlOXCIsXG4gIC8qKiBHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFkgKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9PTkxZID0gXCJHUk9VUF9EQVRBX0FDQ0VTU19SRUFEX09OTFlcIixcbiAgLyoqIEdST1VQX0RBVEFfQUNDRVNTX1JFQURfV1JJVEUgKi9cbiAgR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURSA9IFwiR1JPVVBfREFUQV9BQ0NFU1NfUkVBRF9XUklURVwiLFxuICAvKiogR1JPVVBfT1dORVIgKi9cbiAgR1JPVVBfT1dORVIgPSBcIkdST1VQX09XTkVSXCIsXG4gIC8qKiBHUk9VUF9SRUFEX09OTFkgKi9cbiAgR1JPVVBfUkVBRF9PTkxZID0gXCJHUk9VUF9SRUFEX09OTFlcIixcbn1cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6VGVhbXNgXG4gKlxuICogQGNsb3VkZm9ybWF0aW9uUmVzb3VyY2UgTW9uZ29EQjo6QXRsYXM6OlRlYW1zXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5UZWFtcyBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID0gXCJNb25nb0RCOjpBdGxhczo6VGVhbXNcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblRlYW1zUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlRlYW1zLlRlYW1JZGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyVGVhbUlkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlRlYW1zYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQ2ZuVGVhbXNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuVGVhbXMuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5UZWFtc1Byb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJUZWFtSWQgPSBjZGsuVG9rZW4uYXNTdHJpbmcodGhpcy5nZXRBdHQoXCJUZWFtSWRcIikpO1xuICB9XG59XG4iXX0=

@@ -115,3 +115,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnThirdPartyIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnThirdPartyIntegration", version: "3.7.2" };
CfnThirdPartyIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnThirdPartyIntegration", version: "3.8.0" };
/**

@@ -118,0 +118,0 @@ * The CloudFormation resource type name for this resource class.

import * as cdk from "aws-cdk-lib";
import * as constructs from "constructs";
/**
* View and manage your application's [triggers](https://www.mongodb.com/docs/atlas/app-services/triggers/overview/).
* View and manage your application's triggers: https://www.mongodb.com/docs/atlas/app-services/triggers/
*

@@ -6,0 +6,0 @@ * @schema CfnTriggerProps

@@ -247,3 +247,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
CfnTrigger[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnTrigger", version: "3.7.2" };
CfnTrigger[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnTrigger", version: "3.8.0" };
/**

@@ -253,2 +253,2 @@ * The CloudFormation resource type name for this resource class.

CfnTrigger.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::Trigger";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3RyaWdnZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBeUduQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixzQkFBc0IsQ0FDcEMsR0FBZ0M7SUFFaEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsZUFBZSxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7UUFDM0QsV0FBVyxFQUFFLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7UUFDL0MsZUFBZSxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7UUFDM0QsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsZUFBZSxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDO1FBQ2xELEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7S0FDekIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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O0dBS0c7QUFDSCxNQUFhLFVBQVcsU0FBUSxHQUFHLENBQUMsV0FBVztJQWdCN0M7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUN6RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxVQUFVLENBQUMsc0JBQXNCO1lBQ3ZDLFVBQVUsRUFBRSxzQkFBc0IsQ0FBQyxLQUFLLENBQUU7U0FDM0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7QUFoQ0gsZ0NBaUNDOzs7QUFoQ0M7O0dBRUc7QUFDb0IsaUNBQXNCLEdBQUcseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFZpZXcgYW5kIG1hbmFnZSB5b3VyIGFwcGxpY2F0aW9uJ3MgW3RyaWdnZXJzXShodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL2F0bGFzL2FwcC1zZXJ2aWNlcy90cmlnZ2Vycy9vdmVydmlldy8pLlxuICpcbiAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuVHJpZ2dlclByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBwcm9maWxlIGlzIGRlZmluZWQgaW4gQVdTIFNlY3JldCBtYW5hZ2VyLiBTZWUgW1NlY3JldCBNYW5hZ2VyIFByb2ZpbGUgc2V0dXBdKC4uLy4uLy4uL2V4YW1wbGVzL3Byb2ZpbGUtc2VjcmV0LnlhbWwpLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNEYXRhYmFzZVRyaWdnZXJcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlVHJpZ2dlcj86IERhdGFiYXNlQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNBdXRoVHJpZ2dlclxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aFRyaWdnZXI/OiBBdXRoQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNTY2hlZHVsZVRyaWdnZXJcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlVHJpZ2dlcj86IFNjaGVkdWxlQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgdHJpZ2dlcidzIG5hbWUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRyaWdnZXIncyB0eXBlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNUeXBlXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIGB0cnVlYCwgdGhlIHRyaWdnZXIgaXMgZGlzYWJsZWQgYW5kIGRvZXMgbm90IGxpc3RlbiBmb3IgZXZlbnRzIG9yIGV4ZWN1dGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI0Rpc2FibGVkXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgZnVuY3Rpb24gdGhhdCB0aGUgdHJpZ2dlciBjYWxscyB3aGVuIGl0IGZpcmVzLlxuICAgKlxuICAgKiBUaGlzIHZhbHVlIGlzIHRoZSBzYW1lIGFzIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX2lkYC5cbiAgICogWW91IGNhbiBlaXRoZXIgZGVmaW5lIHRoZSB2YWx1ZSBoZXJlIG9yIGluIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX2lkYC5cbiAgICogVGhlIEFwcCBTZXJ2aWNlcyBiYWNrZW5kIGR1cGxpY2F0ZXMgdGhlIHZhbHVlIHRvIHRoZSBjb25maWd1cmF0aW9uIGxvY2F0aW9uIHdoZXJlIHlvdSBkaWQgbm90IGRlZmluZSBpdC5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGlmIHlvdSBkZWZpbmUgYGZ1bmN0aW9uX2lkYCwgdGhlIGJhY2tlbmQgZHVwbGljYXRlcyBpdCB0byBgZXZlbnRfcHJvY2Vzc29ycy5GVU5DVElPTi5mdW5jdGlvbl9pZGAuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI0Z1bmN0aW9uSWRcbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBmdW5jdGlvbiB0aGF0IHRoZSB0cmlnZ2VyIGNhbGxzIHdoZW4gaXRcbiAgICogZmlyZXMsIGkuZS4gdGhlIGZ1bmN0aW9uIGRlc2NyaWJlZCBieSBgZnVuY3Rpb25faWRgLlxuICAgKlxuICAgKiBUaGlzIHZhbHVlIGlzIHRoZSBzYW1lIGFzIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX25hbWVgLlxuICAgKiBZb3UgY2FuIGVpdGhlciBkZWZpbmUgdGhlIHZhbHVlIGhlcmUgb3IgaW4gYGV2ZW50X3Byb2Nlc3NvcnMuRlVOQ1RJT04uZnVuY3Rpb25fbmFtZWAuXG4gICAqIFRoZSBBcHAgU2VydmljZXMgYmFja2VuZCBkdXBsaWNhdGVzIHRoZSB2YWx1ZSB0byB0aGUgY29uZmlndXJhdGlvbiBsb2NhdGlvbiB3aGVyZSB5b3UgZGlkIG5vdCBkZWZpbmUgaXQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgZGVmaW5lIGBmdW5jdGlvbl9uYW1lYCwgdGhlIGJhY2tlbmQgZHVwbGljYXRlcyBpdCB0byBgZXZlbnRfcHJvY2Vzc29ycy5GVU5DVElPTi5mdW5jdGlvbl9uYW1lYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UcmlnZ2VyUHJvcHMjRnVuY3Rpb25OYW1lXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIG9iamVjdCB3aGVyZSBlYWNoIGZpZWxkIG5hbWUgaXMgYW4gZXZlbnQgcHJvY2Vzc29yIElEIGFuZFxuICAgKiBlYWNoIHZhbHVlIGlzIGFuIG9iamVjdCB0aGF0IGNvbmZpZ3VyZXMgaXRzIGNvcnJlc3BvbmRpbmdcbiAgICogZXZlbnQgcHJvY2Vzc29yLiBGb3IgYW4gZXhhbXBsZSBjb25maWd1cmF0aW9uIG9iamVjdCwgc2VlXG4gICAqIFtTZW5kIFRyaWdnZXIgRXZlbnRzIHRvIEFXU1xuICAgKiBFdmVudEJyaWRnZV0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9yZWFsbS90cmlnZ2Vycy9leGFtcGxlcy9zZW5kLWV2ZW50cy1hd3MtZXZlbnRicmlkZ2Ujc3RkLWxhYmVsLWV2ZW50X3Byb2Nlc3Nvcl9leGFtcGxlKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UcmlnZ2VyUHJvcHMjRXZlbnRQcm9jZXNzb3JzXG4gICAqL1xuICByZWFkb25seSBldmVudFByb2Nlc3NvcnM/OiBFdmVudDtcblxuICAvKipcbiAgICogQXBwIFNlcnZpY2VzIEFwcGxpY2F0aW9uIElEXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI0FwcElkXG4gICAqL1xuICByZWFkb25seSBhcHBJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9qZWN0IElkIGZvciBhcHBsaWNhdGlvbiBzZXJ2aWNlc1xuICAgKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5UcmlnZ2VyUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmblRyaWdnZXJQcm9wcyhcbiAgb2JqOiBDZm5UcmlnZ2VyUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBEYXRhYmFzZVRyaWdnZXI6IHRvSnNvbl9EYXRhYmFzZUNvbmZpZyhvYmouZGF0YWJhc2VUcmlnZ2VyKSxcbiAgICBBdXRoVHJpZ2dlcjogdG9Kc29uX0F1dGhDb25maWcob2JqLmF1dGhUcmlnZ2VyKSxcbiAgICBTY2hlZHVsZVRyaWdnZXI6IHRvSnNvbl9TY2hlZHVsZUNvbmZpZyhvYmouc2NoZWR1bGVUcmlnZ2VyKSxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBEaXNhYmxlZDogb2JqLmRpc2FibGVkLFxuICAgIEZ1bmN0aW9uSWQ6IG9iai5mdW5jdGlvbklkLFxuICAgIEZ1bmN0aW9uTmFtZTogb2JqLmZ1bmN0aW9uTmFtZSxcbiAgICBFdmVudFByb2Nlc3NvcnM6IHRvSnNvbl9FdmVudChvYmouZXZlbnRQcm9jZXNzb3JzKSxcbiAgICBBcHBJZDogb2JqLmFwcElkLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFiYXNlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBfaWQgdmFsdWUgb2YgYSBsaW5rZWQgTW9uZ29EQiBkYXRhIHNvdXJjZS5cbiAgICpcbiAgICogU2VlIFtHZXQgYSBEYXRhIFNvdXJjZV0oI29wZXJhdGlvbi9hZG1pbkdldFNlcnZpY2UpLlxuICAgKlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI1NlcnZpY2VJZFxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZUlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiBhIGRhdGFiYXNlIGluIHRoZSBsaW5rZWQgZGF0YSBzb3VyY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWcjRGF0YWJhc2VcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiBhIGNvbGxlY3Rpb24gaW4gdGhlIHNwZWNpZmllZCBkYXRhYmFzZS4gVGhlXG4gICAqIHRyaWdnZXIgbGlzdGVucyB0byBldmVudHMgZnJvbSB0aGlzIGNvbGxlY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWcjQ29sbGVjdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHR5cGUocykgb2YgTW9uZ29EQiBjaGFuZ2UgZXZlbnQgdGhhdCB0aGUgdHJpZ2dlciBsaXN0ZW5zIGZvci5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZyNPcGVyYXRpb25UeXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0aW9uVHlwZXM/OiBEYXRhYmFzZUNvbmZpZ09wZXJhdGlvblR5cGVzW107XG5cbiAgLyoqXG4gICAqIHN0cmluZ2lmeSB2ZXJzaW9uIG9mIGEgWyRtYXRjaF0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9tYW51YWwvcmVmZXJlbmNlL29wZXJhdG9yL2FnZ3JlZ2F0aW9uL21hdGNoKSBleHByZXNzaW9uIGZpbHRlcnMgY2hhbmdlIGV2ZW50cy4gVGhlIHRyaWdnZXIgd2lsbCBvbmx5IGZpcmUgaWYgdGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUgZm9yIGEgZ2l2ZW4gY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI01hdGNoXG4gICAqL1xuICByZWFkb25seSBtYXRjaD86IHN0cmluZztcblxuICAvKipcbiAgICogc3RyaW5naWZ5IHZlcnNpb24gb2YgYSBbJHByb2plY3RdKGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvbWFudWFsL3JlZmVyZW5jZS9vcGVyYXRvci9hZ2dyZWdhdGlvbi9wcm9qZWN0LykgZXhwcmVzc2lvbnMgdG8gbGltaXQgdGhlIGRhdGEgaW5jbHVkZWQgaW4gZWFjaCBldmVudC5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZyNQcm9qZWN0XG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiBgdHJ1ZWAsIGluZGljYXRlcyB0aGF0IGBVUERBVEVgIGNoYW5nZSBldmVudHMgc2hvdWxkXG4gICAqIGluY2x1ZGUgdGhlIG1vc3QgY3VycmVudFxuICAgKiBbbWFqb3JpdHktY29tbWl0dGVkXShodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL21hbnVhbC9yZWZlcmVuY2UvcmVhZC1jb25jZXJuLW1ham9yaXR5LylcbiAgICogdmVyc2lvbiBvZiB0aGUgbW9kaWZpZWQgZG9jdW1lbnQgaW4gdGhlIGBmdWxsRG9jdW1lbnRgXG4gICAqIGZpZWxkLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI0Z1bGxEb2N1bWVudFxuICAgKi9cbiAgcmVhZG9ubHkgZnVsbERvY3VtZW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgaW5kaWNhdGVzIHRoYXQgYFVQREFURWAgY2hhbmdlIGV2ZW50cyBzaG91bGRcbiAgICogaW5jbHVkZSBhIHNuYXBzaG90IG9mIHRoZSBtb2RpZmllZCBkb2N1bWVudCBmcm9tXG4gICAqIGltbWVkaWF0ZWx5IGJlZm9yZSB0aGUgdXBkYXRlIHdhcyBhcHBsaWVkLlxuICAgKlxuICAgKiBZb3UgbXVzdCBlbmFibGUgW2RvY3VtZW50XG4gICAqIHByZWltYWdlc10oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9hcHAtc2VydmljZXMvbW9uZ29kYi9wcmVpbWFnZXMvKVxuICAgKiBmb3IgeW91ciBjbHVzdGVyIHRvIGluY2x1ZGUgdGhlc2Ugc25hcHNob3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI0Z1bGxEb2N1bWVudEJlZm9yZUNoYW5nZVxuICAgKi9cbiAgcmVhZG9ubHkgZnVsbERvY3VtZW50QmVmb3JlQ2hhbmdlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBlbmFibGluZyB0aGUgVHJpZ2dlciBhZnRlciBpdCB3YXMgZGlzYWJsZWRcbiAgICogd2lsbCBub3QgaW52b2tlIGV2ZW50cyB0aGF0IG9jY3VycmVkIHdoaWxlIHRoZSBUcmlnZ2VyXG4gICAqIHdhcyBkaXNhYmxlZC5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZyNTa2lwQ2F0Y2h1cEV2ZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgc2tpcENhdGNodXBFdmVudHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiBgdHJ1ZWAsIHdoZW4gdGhpcyBUcmlnZ2VyJ3MgcmVzdW1lIHRva2VuXG4gICAqIGNhbm5vdCBiZSBmb3VuZCBpbiB0aGUgY2x1c3RlcidzIG9wbG9nLCB0aGUgVHJpZ2dlciBhdXRvbWF0aWNhbGx5IHJlc3VtZXNcbiAgICogcHJvY2Vzc2luZyBldmVudHMgYXQgdGhlIG5leHQgcmVsZXZhbnQgY2hhbmdlIHN0cmVhbSBldmVudC5cbiAgICogQWxsIGNoYW5nZSBzdHJlYW0gZXZlbnRzIGZyb20gd2hlbiB0aGUgVHJpZ2dlciB3YXMgc3VzcGVuZGVkIHVudGlsIHRoZSBUcmlnZ2VyXG4gICAqIHJlc3VtZXMgZXhlY3V0aW9uIGRvIG5vdCBoYXZlIHRoZSBUcmlnZ2VyIGZpcmUgZm9yIHRoZW0uXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWcjVG9sZXJhdGVSZXN1bWVFcnJvcnNcbiAgICovXG4gIHJlYWRvbmx5IHRvbGVyYXRlUmVzdW1lRXJyb3JzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBldmVudCBvcmRlcmluZyBpcyBkaXNhYmxlZCBhbmQgdGhpcyBUcmlnZ2VyXG4gICAqIGNhbiBwcm9jZXNzIGV2ZW50cyBpbiBwYXJhbGxlbC4gSWYgYGZhbHNlYCwgZXZlbnRcbiAgICogb3JkZXJpbmcgaXMgZW5hYmxlZCBhbmQgdGhlIFRyaWdnZXIgZXhlY3V0ZXMgZXZlbnRzXG4gICAqIHNlcmlhbGx5LlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI1Vub3JkZXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgdW5vcmRlcmVkPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRGF0YWJhc2VDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0RhdGFiYXNlQ29uZmlnKFxuICBvYmo6IERhdGFiYXNlQ29uZmlnIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgU2VydmljZUlkOiBvYmouc2VydmljZUlkLFxuICAgIERhdGFiYXNlOiBvYmouZGF0YWJhc2UsXG4gICAgQ29sbGVjdGlvbjogb2JqLmNvbGxlY3Rpb24sXG4gICAgT3BlcmF0aW9uVHlwZXM6IG9iai5vcGVyYXRpb25UeXBlcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBNYXRjaDogb2JqLm1hdGNoLFxuICAgIFByb2plY3Q6IG9iai5wcm9qZWN0LFxuICAgIEZ1bGxEb2N1bWVudDogb2JqLmZ1bGxEb2N1bWVudCxcbiAgICBGdWxsRG9jdW1lbnRCZWZvcmVDaGFuZ2U6IG9iai5mdWxsRG9jdW1lbnRCZWZvcmVDaGFuZ2UsXG4gICAgU2tpcENhdGNodXBFdmVudHM6IG9iai5za2lwQ2F0Y2h1cEV2ZW50cyxcbiAgICBUb2xlcmF0ZVJlc3VtZUVycm9yczogb2JqLnRvbGVyYXRlUmVzdW1lRXJyb3JzLFxuICAgIFVub3JkZXJlZDogb2JqLnVub3JkZXJlZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBdXRoQ29uZmlnXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aENvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBhdXRoZW50aWNhdGlvbiBldmVudCB0aGF0IHRoZSB0cmlnZ2VyIGxpc3RlbnMgZm9yLlxuICAgKlxuICAgKiBAc2NoZW1hIEF1dGhDb25maWcjT3BlcmF0aW9uVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0aW9uVHlwZTogQXV0aENvbmZpZ09wZXJhdGlvblR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlKHMpIG9mIGF1dGhlbnRpY2F0aW9uIHByb3ZpZGVyIHRoYXQgdGhlIHRyaWdnZXIgbGlzdGVucyB0by5cbiAgICpcbiAgICogQHNjaGVtYSBBdXRoQ29uZmlnI1Byb3ZpZGVyc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJzOiBBdXRoQ29uZmlnUHJvdmlkZXJzW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F1dGhDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0F1dGhDb25maWcoXG4gIG9iajogQXV0aENvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE9wZXJhdGlvblR5cGU6IG9iai5vcGVyYXRpb25UeXBlLFxuICAgIFByb3ZpZGVyczogb2JqLnByb3ZpZGVycz8ubWFwKCh5KSA9PiB5KSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBTY2hlZHVsZUNvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlQ29uZmlnIHtcbiAgLyoqXG4gICAqIEEgW2Nyb24gZXhwcmVzc2lvbl0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9hcHAtc2VydmljZXMvdHJpZ2dlcnMvc2NoZWR1bGVkLXRyaWdnZXJzLyNjcm9uLWV4cHJlc3Npb25zKSB0aGF0IHNwZWNpZmllcyB3aGVuIHRoZSB0cmlnZ2VyIGV4ZWN1dGVzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlQ29uZmlnI1NjaGVkdWxlXG4gICAqL1xuICByZWFkb25seSBzY2hlZHVsZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBlbmFibGluZyB0aGUgdHJpZ2dlciBhZnRlciBpdCB3YXMgZGlzYWJsZWRcbiAgICogd2lsbCBub3QgaW52b2tlIGV2ZW50cyB0aGF0IG9jY3VycmVkIHdoaWxlIHRoZSB0cmlnZ2VyXG4gICAqIHdhcyBkaXNhYmxlZC5cbiAgICpcbiAgICogQHNjaGVtYSBTY2hlZHVsZUNvbmZpZyNTa2lwY2F0Y2h1cEV2ZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgc2tpcGNhdGNodXBFdmVudHM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTY2hlZHVsZUNvbmZpZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU2NoZWR1bGVDb25maWcoXG4gIG9iajogU2NoZWR1bGVDb25maWcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBTY2hlZHVsZTogb2JqLnNjaGVkdWxlLFxuICAgIFNraXBjYXRjaHVwRXZlbnRzOiBvYmouc2tpcGNhdGNodXBFdmVudHMsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRXZlbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudCB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIEV2ZW50I0ZVTkNUSU9OXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbj86IEV2ZW50RnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgRXZlbnQjQVdTRVZFTlRCUklER0VcbiAgICovXG4gIHJlYWRvbmx5IGF3c2V2ZW50YnJpZGdlPzogRXZlbnRBd3NldmVudGJyaWRnZTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRXZlbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50KFxuICBvYmo6IEV2ZW50IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRlVOQ1RJT046IHRvSnNvbl9FdmVudEZ1bmN0aW9uKG9iai5mdW5jdGlvbiksXG4gICAgQVdTRVZFTlRCUklER0U6IHRvSnNvbl9FdmVudEF3c2V2ZW50YnJpZGdlKG9iai5hd3NldmVudGJyaWRnZSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWdPcGVyYXRpb25UeXBlc1xuICovXG5leHBvcnQgZW51bSBEYXRhYmFzZUNvbmZpZ09wZXJhdGlvblR5cGVzIHtcbiAgLyoqIElOU0VSVCAqL1xuICBJTlNFUlQgPSBcIklOU0VSVFwiLFxuICAvKiogVVBEQVRFICovXG4gIFVQREFURSA9IFwiVVBEQVRFXCIsXG4gIC8qKiBSRVBMQUNFICovXG4gIFJFUExBQ0UgPSBcIlJFUExBQ0VcIixcbiAgLyoqIERFTEVURSAqL1xuICBERUxFVEUgPSBcIkRFTEVURVwiLFxufVxuXG4vKipcbiAqIFRoZSB0eXBlIG9mIGF1dGhlbnRpY2F0aW9uIGV2ZW50IHRoYXQgdGhlIHRyaWdnZXIgbGlzdGVucyBmb3IuXG4gKlxuICogQHNjaGVtYSBBdXRoQ29uZmlnT3BlcmF0aW9uVHlwZVxuICovXG5leHBvcnQgZW51bSBBdXRoQ29uZmlnT3BlcmF0aW9uVHlwZSB7XG4gIC8qKiBMT0dJTiAqL1xuICBMT0dJTiA9IFwiTE9HSU5cIixcbiAgLyoqIENSRUFURSAqL1xuICBDUkVBVEUgPSBcIkNSRUFURVwiLFxuICAvKiogREVMRVRFICovXG4gIERFTEVURSA9IFwiREVMRVRFXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBBdXRoQ29uZmlnUHJvdmlkZXJzXG4gKi9cbmV4cG9ydCBlbnVtIEF1dGhDb25maWdQcm92aWRlcnMge1xuICAvKiogYW5vbi11c2VyICovXG4gIEFOT05fVVNFUiA9IFwiYW5vbi11c2VyXCIsXG4gIC8qKiBhcGkta2V5ICovXG4gIEFQSV9LRVkgPSBcImFwaS1rZXlcIixcbiAgLyoqIGN1c3RvbS10b2tlbiAqL1xuICBDVVNUT01fVE9LRU4gPSBcImN1c3RvbS10b2tlblwiLFxuICAvKiogY3VzdG9tLWZ1bmN0aW9uICovXG4gIENVU1RPTV9GVU5DVElPTiA9IFwiY3VzdG9tLWZ1bmN0aW9uXCIsXG4gIC8qKiBsb2NhbC11c2VycGFzcyAqL1xuICBMT0NBTF9VU0VSUEFTUyA9IFwibG9jYWwtdXNlcnBhc3NcIixcbiAgLyoqIG9hdXRoMi1hcHBsZSAqL1xuICBPQVVUSDJfQVBQTEUgPSBcIm9hdXRoMi1hcHBsZVwiLFxuICAvKiogb2F1dGgyLWZhY2Vib29rICovXG4gIE9BVVRIMl9GQUNFQk9PSyA9IFwib2F1dGgyLWZhY2Vib29rXCIsXG4gIC8qKiBvYXV0aDItZ29vZ2xlICovXG4gIE9BVVRIMl9HT09HTEUgPSBcIm9hdXRoMi1nb29nbGVcIixcbn1cblxuLyoqXG4gKiBAc2NoZW1hIEV2ZW50RnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEZ1bmN0aW9uIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgRXZlbnRGdW5jdGlvbiNGdW5jQ29uZmlnXG4gICAqL1xuICByZWFkb25seSBmdW5jQ29uZmlnPzogRXZlbnRGdW5jdGlvbkZ1bmNDb25maWc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0V2ZW50RnVuY3Rpb24nIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50RnVuY3Rpb24oXG4gIG9iajogRXZlbnRGdW5jdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEZ1bmNDb25maWc6IHRvSnNvbl9FdmVudEZ1bmN0aW9uRnVuY0NvbmZpZyhvYmouZnVuY0NvbmZpZyksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRXZlbnRBd3NldmVudGJyaWRnZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50QXdzZXZlbnRicmlkZ2Uge1xuICAvKipcbiAgICogQHNjaGVtYSBFdmVudEF3c2V2ZW50YnJpZGdlI0FXU0NvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgYXdzQ29uZmlnPzogRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRXZlbnRBd3NldmVudGJyaWRnZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fRXZlbnRBd3NldmVudGJyaWRnZShcbiAgb2JqOiBFdmVudEF3c2V2ZW50YnJpZGdlIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQVdTQ29uZmlnOiB0b0pzb25fRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyhvYmouYXdzQ29uZmlnKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBFdmVudEZ1bmN0aW9uRnVuY0NvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50RnVuY3Rpb25GdW5jQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgZnVuY3Rpb24gdGhhdCB0aGUgdHJpZ2dlciBjYWxscyB3aGVuIGl0IGZpcmVzLlxuICAgKlxuICAgKiBUaGlzIHZhbHVlIGlzIHRoZSBzYW1lIGFzIHRoZSByb290LWxldmVsIGBmdW5jdGlvbl9pZGAuXG4gICAqIFlvdSBjYW4gZWl0aGVyIGRlZmluZSB0aGUgdmFsdWUgaGVyZSBvciBpbiBgZnVuY3Rpb25faWRgLlxuICAgKiBUaGUgQXBwIFNlcnZpY2VzIGJhY2tlbmQgZHVwbGljYXRlcyB0aGUgdmFsdWUgdG8gdGhlIGNvbmZpZ3VyYXRpb24gbG9jYXRpb24gd2hlcmUgeW91IGRpZCBub3QgZGVmaW5lIGl0LlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IGRlZmluZSBgZXZlbnRfcHJvY2Vzc29ycy5GVU5DVElPTi5mdW5jdGlvbl9pZGAsIHRoZSBiYWNrZW5kIGR1cGxpY2F0ZXMgaXQgdG8gYGZ1bmN0aW9uX2lkYC5cbiAgICpcbiAgICogQHNjaGVtYSBFdmVudEZ1bmN0aW9uRnVuY0NvbmZpZyNGdW5jdGlvbklkXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZnVuY3Rpb24gdGhhdCB0aGUgdHJpZ2dlciBjYWxscyB3aGVuIGl0XG4gICAqIGZpcmVzLCBpLmUuIHRoZSBmdW5jdGlvbiBkZXNjcmliZWQgYnkgYGZ1bmN0aW9uX2lkYC5cbiAgICpcbiAgICogVGhpcyB2YWx1ZSBpcyB0aGUgc2FtZSBhcyB0aGUgcm9vdC1sZXZlbCBgZnVuY3Rpb25fbmFtZWAuXG4gICAqIFlvdSBjYW4gZWl0aGVyIGRlZmluZSB0aGUgdmFsdWUgaGVyZSBvciBpbiBgZnVuY3Rpb25fbmFtZWAuXG4gICAqIFRoZSBBcHAgU2VydmljZXMgYmFja2VuZCBkdXBsaWNhdGVzIHRoZSB2YWx1ZSB0byB0aGUgY29uZmlndXJhdGlvbiBsb2NhdGlvbiB3aGVyZSB5b3UgZGlkIG5vdCBkZWZpbmUgaXQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgZGVmaW5lIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX25hbWVgLCB0aGUgYmFja2VuZCBkdXBsaWNhdGVzIGl0IHRvIGBmdW5jdGlvbl9uYW1lYC5cbiAgICpcbiAgICogQHNjaGVtYSBFdmVudEZ1bmN0aW9uRnVuY0NvbmZpZyNGdW5jdGlvbk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRXZlbnRGdW5jdGlvbkZ1bmNDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50RnVuY3Rpb25GdW5jQ29uZmlnKFxuICBvYmo6IEV2ZW50RnVuY3Rpb25GdW5jQ29uZmlnIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRnVuY3Rpb25JZDogb2JqLmZ1bmN0aW9uSWQsXG4gICAgRnVuY3Rpb25OYW1lOiBvYmouZnVuY3Rpb25OYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEF3c2V2ZW50YnJpZGdlQXdzQ29uZmlnIHtcbiAgLyoqXG4gICAqIEFuIEFXUyBBY2NvdW50IElELlxuICAgKlxuICAgKiBAc2NoZW1hIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcjQWNjb3VudElkXG4gICAqL1xuICByZWFkb25seSBhY2NvdW50SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIEFXUyByZWdpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBldmVudCBvYmplY3RzIGFyZSBzZXJpYWxpemVkIHVzaW5nIEVKU09OLlxuICAgKlxuICAgKiBAc2NoZW1hIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcjRXh0ZW5kZWRKc29uRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZXh0ZW5kZWRKc29uRW5hYmxlZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0V2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcoXG4gIG9iajogRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEFjY291bnRJZDogb2JqLmFjY291bnRJZCxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gICAgRXh0ZW5kZWRKc29uRW5hYmxlZDogb2JqLmV4dGVuZGVkSnNvbkVuYWJsZWQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpUcmlnZ2VyYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpUcmlnZ2VyXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5UcmlnZ2VyIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPSBcIk1vbmdvREI6OkF0bGFzOjpUcmlnZ2VyXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5UcmlnZ2VyUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlRyaWdnZXIuSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlRyaWdnZXJgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDZm5UcmlnZ2VyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblRyaWdnZXIuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5UcmlnZ2VyUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICB9XG59XG4iXX0=
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3RyaWdnZXIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSwwQkFBMEI7QUFDMUIsbUNBQW1DO0FBeUduQzs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixzQkFBc0IsQ0FDcEMsR0FBZ0M7SUFFaEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixPQUFPLEVBQUUsR0FBRyxDQUFDLE9BQU87UUFDcEIsZUFBZSxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7UUFDM0QsV0FBVyxFQUFFLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxXQUFXLENBQUM7UUFDL0MsZUFBZSxFQUFFLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUM7UUFDM0QsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1FBQ2QsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLFVBQVUsRUFBRSxHQUFHLENBQUMsVUFBVTtRQUMxQixZQUFZLEVBQUUsR0FBRyxDQUFDLFlBQVk7UUFDOUIsZUFBZSxFQUFFLFlBQVksQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDO1FBQ2xELEtBQUssRUFBRSxHQUFHLENBQUMsS0FBSztRQUNoQixTQUFTLEVBQUUsR0FBRyxDQUFDLFNBQVM7S0FDekIsQ0FBQztJQUNGLDBCQUEwQjtJQUMxQixPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsTUFBTSxDQUNsQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFD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O0dBS0c7QUFDSCxNQUFhLFVBQVcsU0FBUSxHQUFHLENBQUMsV0FBVztJQWdCN0M7Ozs7OztPQU1HO0lBQ0gsWUFBWSxLQUEyQixFQUFFLEVBQVUsRUFBRSxLQUFzQjtRQUN6RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLElBQUksRUFBRSxVQUFVLENBQUMsc0JBQXNCO1lBQ3ZDLFVBQVUsRUFBRSxzQkFBc0IsQ0FBQyxLQUFLLENBQUU7U0FDM0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFFbkIsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQzs7QUFoQ0gsZ0NBaUNDOzs7QUFoQ0M7O0dBRUc7QUFDb0IsaUNBQXNCLEdBQUcseUJBQXlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBHZW5lcmF0ZWQgYnkgY2RrLWltcG9ydFxuaW1wb3J0ICogYXMgY2RrIGZyb20gXCJhd3MtY2RrLWxpYlwiO1xuaW1wb3J0ICogYXMgY29uc3RydWN0cyBmcm9tIFwiY29uc3RydWN0c1wiO1xuXG4vKipcbiAqIFZpZXcgYW5kIG1hbmFnZSB5b3VyIGFwcGxpY2F0aW9uJ3MgdHJpZ2dlcnM6IGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvYXRsYXMvYXBwLXNlcnZpY2VzL3RyaWdnZXJzL1xuICpcbiAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQ2ZuVHJpZ2dlclByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBwcm9maWxlIGlzIGRlZmluZWQgaW4gQVdTIFNlY3JldCBtYW5hZ2VyLiBTZWUgW1NlY3JldCBNYW5hZ2VyIFByb2ZpbGUgc2V0dXBdKC4uLy4uLy4uL2V4YW1wbGVzL3Byb2ZpbGUtc2VjcmV0LnlhbWwpLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNQcm9maWxlXG4gICAqL1xuICByZWFkb25seSBwcm9maWxlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNEYXRhYmFzZVRyaWdnZXJcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlVHJpZ2dlcj86IERhdGFiYXNlQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNBdXRoVHJpZ2dlclxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aFRyaWdnZXI/OiBBdXRoQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNTY2hlZHVsZVRyaWdnZXJcbiAgICovXG4gIHJlYWRvbmx5IHNjaGVkdWxlVHJpZ2dlcj86IFNjaGVkdWxlQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBUaGUgdHJpZ2dlcidzIG5hbWUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI05hbWVcbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRyaWdnZXIncyB0eXBlLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNUeXBlXG4gICAqL1xuICByZWFkb25seSB0eXBlOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIElmIGB0cnVlYCwgdGhlIHRyaWdnZXIgaXMgZGlzYWJsZWQgYW5kIGRvZXMgbm90IGxpc3RlbiBmb3IgZXZlbnRzIG9yIGV4ZWN1dGUuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI0Rpc2FibGVkXG4gICAqL1xuICByZWFkb25seSBkaXNhYmxlZD86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgZnVuY3Rpb24gdGhhdCB0aGUgdHJpZ2dlciBjYWxscyB3aGVuIGl0IGZpcmVzLlxuICAgKlxuICAgKiBUaGlzIHZhbHVlIGlzIHRoZSBzYW1lIGFzIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX2lkYC5cbiAgICogWW91IGNhbiBlaXRoZXIgZGVmaW5lIHRoZSB2YWx1ZSBoZXJlIG9yIGluIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX2lkYC5cbiAgICogVGhlIEFwcCBTZXJ2aWNlcyBiYWNrZW5kIGR1cGxpY2F0ZXMgdGhlIHZhbHVlIHRvIHRoZSBjb25maWd1cmF0aW9uIGxvY2F0aW9uIHdoZXJlIHlvdSBkaWQgbm90IGRlZmluZSBpdC5cbiAgICpcbiAgICogRm9yIGV4YW1wbGUsIGlmIHlvdSBkZWZpbmUgYGZ1bmN0aW9uX2lkYCwgdGhlIGJhY2tlbmQgZHVwbGljYXRlcyBpdCB0byBgZXZlbnRfcHJvY2Vzc29ycy5GVU5DVElPTi5mdW5jdGlvbl9pZGAuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI0Z1bmN0aW9uSWRcbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uSWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBmdW5jdGlvbiB0aGF0IHRoZSB0cmlnZ2VyIGNhbGxzIHdoZW4gaXRcbiAgICogZmlyZXMsIGkuZS4gdGhlIGZ1bmN0aW9uIGRlc2NyaWJlZCBieSBgZnVuY3Rpb25faWRgLlxuICAgKlxuICAgKiBUaGlzIHZhbHVlIGlzIHRoZSBzYW1lIGFzIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX25hbWVgLlxuICAgKiBZb3UgY2FuIGVpdGhlciBkZWZpbmUgdGhlIHZhbHVlIGhlcmUgb3IgaW4gYGV2ZW50X3Byb2Nlc3NvcnMuRlVOQ1RJT04uZnVuY3Rpb25fbmFtZWAuXG4gICAqIFRoZSBBcHAgU2VydmljZXMgYmFja2VuZCBkdXBsaWNhdGVzIHRoZSB2YWx1ZSB0byB0aGUgY29uZmlndXJhdGlvbiBsb2NhdGlvbiB3aGVyZSB5b3UgZGlkIG5vdCBkZWZpbmUgaXQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgZGVmaW5lIGBmdW5jdGlvbl9uYW1lYCwgdGhlIGJhY2tlbmQgZHVwbGljYXRlcyBpdCB0byBgZXZlbnRfcHJvY2Vzc29ycy5GVU5DVElPTi5mdW5jdGlvbl9uYW1lYC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UcmlnZ2VyUHJvcHMjRnVuY3Rpb25OYW1lXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbk5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIG9iamVjdCB3aGVyZSBlYWNoIGZpZWxkIG5hbWUgaXMgYW4gZXZlbnQgcHJvY2Vzc29yIElEIGFuZFxuICAgKiBlYWNoIHZhbHVlIGlzIGFuIG9iamVjdCB0aGF0IGNvbmZpZ3VyZXMgaXRzIGNvcnJlc3BvbmRpbmdcbiAgICogZXZlbnQgcHJvY2Vzc29yLiBGb3IgYW4gZXhhbXBsZSBjb25maWd1cmF0aW9uIG9iamVjdCwgc2VlXG4gICAqIFtTZW5kIFRyaWdnZXIgRXZlbnRzIHRvIEFXU1xuICAgKiBFdmVudEJyaWRnZV0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9yZWFsbS90cmlnZ2Vycy9leGFtcGxlcy9zZW5kLWV2ZW50cy1hd3MtZXZlbnRicmlkZ2Ujc3RkLWxhYmVsLWV2ZW50X3Byb2Nlc3Nvcl9leGFtcGxlKS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5UcmlnZ2VyUHJvcHMjRXZlbnRQcm9jZXNzb3JzXG4gICAqL1xuICByZWFkb25seSBldmVudFByb2Nlc3NvcnM/OiBFdmVudDtcblxuICAvKipcbiAgICogQXBwIFNlcnZpY2VzIEFwcGxpY2F0aW9uIElEXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuVHJpZ2dlclByb3BzI0FwcElkXG4gICAqL1xuICByZWFkb25seSBhcHBJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBQcm9qZWN0IElkIGZvciBhcHBsaWNhdGlvbiBzZXJ2aWNlc1xuICAgKlxuICAgKiBAc2NoZW1hIENmblRyaWdnZXJQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdDZm5UcmlnZ2VyUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0NmblRyaWdnZXJQcm9wcyhcbiAgb2JqOiBDZm5UcmlnZ2VyUHJvcHMgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBQcm9maWxlOiBvYmoucHJvZmlsZSxcbiAgICBEYXRhYmFzZVRyaWdnZXI6IHRvSnNvbl9EYXRhYmFzZUNvbmZpZyhvYmouZGF0YWJhc2VUcmlnZ2VyKSxcbiAgICBBdXRoVHJpZ2dlcjogdG9Kc29uX0F1dGhDb25maWcob2JqLmF1dGhUcmlnZ2VyKSxcbiAgICBTY2hlZHVsZVRyaWdnZXI6IHRvSnNvbl9TY2hlZHVsZUNvbmZpZyhvYmouc2NoZWR1bGVUcmlnZ2VyKSxcbiAgICBOYW1lOiBvYmoubmFtZSxcbiAgICBUeXBlOiBvYmoudHlwZSxcbiAgICBEaXNhYmxlZDogb2JqLmRpc2FibGVkLFxuICAgIEZ1bmN0aW9uSWQ6IG9iai5mdW5jdGlvbklkLFxuICAgIEZ1bmN0aW9uTmFtZTogb2JqLmZ1bmN0aW9uTmFtZSxcbiAgICBFdmVudFByb2Nlc3NvcnM6IHRvSnNvbl9FdmVudChvYmouZXZlbnRQcm9jZXNzb3JzKSxcbiAgICBBcHBJZDogb2JqLmFwcElkLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIERhdGFiYXNlQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBfaWQgdmFsdWUgb2YgYSBsaW5rZWQgTW9uZ29EQiBkYXRhIHNvdXJjZS5cbiAgICpcbiAgICogU2VlIFtHZXQgYSBEYXRhIFNvdXJjZV0oI29wZXJhdGlvbi9hZG1pbkdldFNlcnZpY2UpLlxuICAgKlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI1NlcnZpY2VJZFxuICAgKi9cbiAgcmVhZG9ubHkgc2VydmljZUlkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiBhIGRhdGFiYXNlIGluIHRoZSBsaW5rZWQgZGF0YSBzb3VyY2UuXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWcjRGF0YWJhc2VcbiAgICovXG4gIHJlYWRvbmx5IGRhdGFiYXNlPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiBhIGNvbGxlY3Rpb24gaW4gdGhlIHNwZWNpZmllZCBkYXRhYmFzZS4gVGhlXG4gICAqIHRyaWdnZXIgbGlzdGVucyB0byBldmVudHMgZnJvbSB0aGlzIGNvbGxlY3Rpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWcjQ29sbGVjdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgY29sbGVjdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHR5cGUocykgb2YgTW9uZ29EQiBjaGFuZ2UgZXZlbnQgdGhhdCB0aGUgdHJpZ2dlciBsaXN0ZW5zIGZvci5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZyNPcGVyYXRpb25UeXBlc1xuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0aW9uVHlwZXM/OiBEYXRhYmFzZUNvbmZpZ09wZXJhdGlvblR5cGVzW107XG5cbiAgLyoqXG4gICAqIHN0cmluZ2lmeSB2ZXJzaW9uIG9mIGEgWyRtYXRjaF0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9tYW51YWwvcmVmZXJlbmNlL29wZXJhdG9yL2FnZ3JlZ2F0aW9uL21hdGNoKSBleHByZXNzaW9uIGZpbHRlcnMgY2hhbmdlIGV2ZW50cy4gVGhlIHRyaWdnZXIgd2lsbCBvbmx5IGZpcmUgaWYgdGhlIGV4cHJlc3Npb24gZXZhbHVhdGVzIHRvIHRydWUgZm9yIGEgZ2l2ZW4gY2hhbmdlIGV2ZW50LlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI01hdGNoXG4gICAqL1xuICByZWFkb25seSBtYXRjaD86IHN0cmluZztcblxuICAvKipcbiAgICogc3RyaW5naWZ5IHZlcnNpb24gb2YgYSBbJHByb2plY3RdKGh0dHBzOi8vd3d3Lm1vbmdvZGIuY29tL2RvY3MvbWFudWFsL3JlZmVyZW5jZS9vcGVyYXRvci9hZ2dyZWdhdGlvbi9wcm9qZWN0LykgZXhwcmVzc2lvbnMgdG8gbGltaXQgdGhlIGRhdGEgaW5jbHVkZWQgaW4gZWFjaCBldmVudC5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZyNQcm9qZWN0XG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBJZiBgdHJ1ZWAsIGluZGljYXRlcyB0aGF0IGBVUERBVEVgIGNoYW5nZSBldmVudHMgc2hvdWxkXG4gICAqIGluY2x1ZGUgdGhlIG1vc3QgY3VycmVudFxuICAgKiBbbWFqb3JpdHktY29tbWl0dGVkXShodHRwczovL3d3dy5tb25nb2RiLmNvbS9kb2NzL21hbnVhbC9yZWZlcmVuY2UvcmVhZC1jb25jZXJuLW1ham9yaXR5LylcbiAgICogdmVyc2lvbiBvZiB0aGUgbW9kaWZpZWQgZG9jdW1lbnQgaW4gdGhlIGBmdWxsRG9jdW1lbnRgXG4gICAqIGZpZWxkLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI0Z1bGxEb2N1bWVudFxuICAgKi9cbiAgcmVhZG9ubHkgZnVsbERvY3VtZW50PzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgaW5kaWNhdGVzIHRoYXQgYFVQREFURWAgY2hhbmdlIGV2ZW50cyBzaG91bGRcbiAgICogaW5jbHVkZSBhIHNuYXBzaG90IG9mIHRoZSBtb2RpZmllZCBkb2N1bWVudCBmcm9tXG4gICAqIGltbWVkaWF0ZWx5IGJlZm9yZSB0aGUgdXBkYXRlIHdhcyBhcHBsaWVkLlxuICAgKlxuICAgKiBZb3UgbXVzdCBlbmFibGUgW2RvY3VtZW50XG4gICAqIHByZWltYWdlc10oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9hcHAtc2VydmljZXMvbW9uZ29kYi9wcmVpbWFnZXMvKVxuICAgKiBmb3IgeW91ciBjbHVzdGVyIHRvIGluY2x1ZGUgdGhlc2Ugc25hcHNob3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI0Z1bGxEb2N1bWVudEJlZm9yZUNoYW5nZVxuICAgKi9cbiAgcmVhZG9ubHkgZnVsbERvY3VtZW50QmVmb3JlQ2hhbmdlPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBlbmFibGluZyB0aGUgVHJpZ2dlciBhZnRlciBpdCB3YXMgZGlzYWJsZWRcbiAgICogd2lsbCBub3QgaW52b2tlIGV2ZW50cyB0aGF0IG9jY3VycmVkIHdoaWxlIHRoZSBUcmlnZ2VyXG4gICAqIHdhcyBkaXNhYmxlZC5cbiAgICpcbiAgICogQHNjaGVtYSBEYXRhYmFzZUNvbmZpZyNTa2lwQ2F0Y2h1cEV2ZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgc2tpcENhdGNodXBFdmVudHM/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJZiBgdHJ1ZWAsIHdoZW4gdGhpcyBUcmlnZ2VyJ3MgcmVzdW1lIHRva2VuXG4gICAqIGNhbm5vdCBiZSBmb3VuZCBpbiB0aGUgY2x1c3RlcidzIG9wbG9nLCB0aGUgVHJpZ2dlciBhdXRvbWF0aWNhbGx5IHJlc3VtZXNcbiAgICogcHJvY2Vzc2luZyBldmVudHMgYXQgdGhlIG5leHQgcmVsZXZhbnQgY2hhbmdlIHN0cmVhbSBldmVudC5cbiAgICogQWxsIGNoYW5nZSBzdHJlYW0gZXZlbnRzIGZyb20gd2hlbiB0aGUgVHJpZ2dlciB3YXMgc3VzcGVuZGVkIHVudGlsIHRoZSBUcmlnZ2VyXG4gICAqIHJlc3VtZXMgZXhlY3V0aW9uIGRvIG5vdCBoYXZlIHRoZSBUcmlnZ2VyIGZpcmUgZm9yIHRoZW0uXG4gICAqXG4gICAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWcjVG9sZXJhdGVSZXN1bWVFcnJvcnNcbiAgICovXG4gIHJlYWRvbmx5IHRvbGVyYXRlUmVzdW1lRXJyb3JzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBldmVudCBvcmRlcmluZyBpcyBkaXNhYmxlZCBhbmQgdGhpcyBUcmlnZ2VyXG4gICAqIGNhbiBwcm9jZXNzIGV2ZW50cyBpbiBwYXJhbGxlbC4gSWYgYGZhbHNlYCwgZXZlbnRcbiAgICogb3JkZXJpbmcgaXMgZW5hYmxlZCBhbmQgdGhlIFRyaWdnZXIgZXhlY3V0ZXMgZXZlbnRzXG4gICAqIHNlcmlhbGx5LlxuICAgKlxuICAgKiBAc2NoZW1hIERhdGFiYXNlQ29uZmlnI1Vub3JkZXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgdW5vcmRlcmVkPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRGF0YWJhc2VDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0RhdGFiYXNlQ29uZmlnKFxuICBvYmo6IERhdGFiYXNlQ29uZmlnIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgU2VydmljZUlkOiBvYmouc2VydmljZUlkLFxuICAgIERhdGFiYXNlOiBvYmouZGF0YWJhc2UsXG4gICAgQ29sbGVjdGlvbjogb2JqLmNvbGxlY3Rpb24sXG4gICAgT3BlcmF0aW9uVHlwZXM6IG9iai5vcGVyYXRpb25UeXBlcz8ubWFwKCh5KSA9PiB5KSxcbiAgICBNYXRjaDogb2JqLm1hdGNoLFxuICAgIFByb2plY3Q6IG9iai5wcm9qZWN0LFxuICAgIEZ1bGxEb2N1bWVudDogb2JqLmZ1bGxEb2N1bWVudCxcbiAgICBGdWxsRG9jdW1lbnRCZWZvcmVDaGFuZ2U6IG9iai5mdWxsRG9jdW1lbnRCZWZvcmVDaGFuZ2UsXG4gICAgU2tpcENhdGNodXBFdmVudHM6IG9iai5za2lwQ2F0Y2h1cEV2ZW50cyxcbiAgICBUb2xlcmF0ZVJlc3VtZUVycm9yczogb2JqLnRvbGVyYXRlUmVzdW1lRXJyb3JzLFxuICAgIFVub3JkZXJlZDogb2JqLnVub3JkZXJlZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBBdXRoQ29uZmlnXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aENvbmZpZyB7XG4gIC8qKlxuICAgKiBUaGUgdHlwZSBvZiBhdXRoZW50aWNhdGlvbiBldmVudCB0aGF0IHRoZSB0cmlnZ2VyIGxpc3RlbnMgZm9yLlxuICAgKlxuICAgKiBAc2NoZW1hIEF1dGhDb25maWcjT3BlcmF0aW9uVHlwZVxuICAgKi9cbiAgcmVhZG9ubHkgb3BlcmF0aW9uVHlwZTogQXV0aENvbmZpZ09wZXJhdGlvblR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSB0eXBlKHMpIG9mIGF1dGhlbnRpY2F0aW9uIHByb3ZpZGVyIHRoYXQgdGhlIHRyaWdnZXIgbGlzdGVucyB0by5cbiAgICpcbiAgICogQHNjaGVtYSBBdXRoQ29uZmlnI1Byb3ZpZGVyc1xuICAgKi9cbiAgcmVhZG9ubHkgcHJvdmlkZXJzOiBBdXRoQ29uZmlnUHJvdmlkZXJzW107XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0F1dGhDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0F1dGhDb25maWcoXG4gIG9iajogQXV0aENvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIE9wZXJhdGlvblR5cGU6IG9iai5vcGVyYXRpb25UeXBlLFxuICAgIFByb3ZpZGVyczogb2JqLnByb3ZpZGVycz8ubWFwKCh5KSA9PiB5KSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBTY2hlZHVsZUNvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIFNjaGVkdWxlQ29uZmlnIHtcbiAgLyoqXG4gICAqIEEgW2Nyb24gZXhwcmVzc2lvbl0oaHR0cHM6Ly93d3cubW9uZ29kYi5jb20vZG9jcy9hdGxhcy9hcHAtc2VydmljZXMvdHJpZ2dlcnMvc2NoZWR1bGVkLXRyaWdnZXJzLyNjcm9uLWV4cHJlc3Npb25zKSB0aGF0IHNwZWNpZmllcyB3aGVuIHRoZSB0cmlnZ2VyIGV4ZWN1dGVzLlxuICAgKlxuICAgKiBAc2NoZW1hIFNjaGVkdWxlQ29uZmlnI1NjaGVkdWxlXG4gICAqL1xuICByZWFkb25seSBzY2hlZHVsZT86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBlbmFibGluZyB0aGUgdHJpZ2dlciBhZnRlciBpdCB3YXMgZGlzYWJsZWRcbiAgICogd2lsbCBub3QgaW52b2tlIGV2ZW50cyB0aGF0IG9jY3VycmVkIHdoaWxlIHRoZSB0cmlnZ2VyXG4gICAqIHdhcyBkaXNhYmxlZC5cbiAgICpcbiAgICogQHNjaGVtYSBTY2hlZHVsZUNvbmZpZyNTa2lwY2F0Y2h1cEV2ZW50c1xuICAgKi9cbiAgcmVhZG9ubHkgc2tpcGNhdGNodXBFdmVudHM/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIENvbnZlcnRzIGFuIG9iamVjdCBvZiB0eXBlICdTY2hlZHVsZUNvbmZpZycgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fU2NoZWR1bGVDb25maWcoXG4gIG9iajogU2NoZWR1bGVDb25maWcgfCB1bmRlZmluZWRcbik6IFJlY29yZDxzdHJpbmcsIGFueT4gfCB1bmRlZmluZWQge1xuICBpZiAob2JqID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHJlc3VsdCA9IHtcbiAgICBTY2hlZHVsZTogb2JqLnNjaGVkdWxlLFxuICAgIFNraXBjYXRjaHVwRXZlbnRzOiBvYmouc2tpcGNhdGNodXBFdmVudHMsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRXZlbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudCB7XG4gIC8qKlxuICAgKiBAc2NoZW1hIEV2ZW50I0ZVTkNUSU9OXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbj86IEV2ZW50RnVuY3Rpb247XG5cbiAgLyoqXG4gICAqIEBzY2hlbWEgRXZlbnQjQVdTRVZFTlRCUklER0VcbiAgICovXG4gIHJlYWRvbmx5IGF3c2V2ZW50YnJpZGdlPzogRXZlbnRBd3NldmVudGJyaWRnZTtcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRXZlbnQnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50KFxuICBvYmo6IEV2ZW50IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRlVOQ1RJT046IHRvSnNvbl9FdmVudEZ1bmN0aW9uKG9iai5mdW5jdGlvbiksXG4gICAgQVdTRVZFTlRCUklER0U6IHRvSnNvbl9FdmVudEF3c2V2ZW50YnJpZGdlKG9iai5hd3NldmVudGJyaWRnZSksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRGF0YWJhc2VDb25maWdPcGVyYXRpb25UeXBlc1xuICovXG5leHBvcnQgZW51bSBEYXRhYmFzZUNvbmZpZ09wZXJhdGlvblR5cGVzIHtcbiAgLyoqIElOU0VSVCAqL1xuICBJTlNFUlQgPSBcIklOU0VSVFwiLFxuICAvKiogVVBEQVRFICovXG4gIFVQREFURSA9IFwiVVBEQVRFXCIsXG4gIC8qKiBSRVBMQUNFICovXG4gIFJFUExBQ0UgPSBcIlJFUExBQ0VcIixcbiAgLyoqIERFTEVURSAqL1xuICBERUxFVEUgPSBcIkRFTEVURVwiLFxufVxuXG4vKipcbiAqIFRoZSB0eXBlIG9mIGF1dGhlbnRpY2F0aW9uIGV2ZW50IHRoYXQgdGhlIHRyaWdnZXIgbGlzdGVucyBmb3IuXG4gKlxuICogQHNjaGVtYSBBdXRoQ29uZmlnT3BlcmF0aW9uVHlwZVxuICovXG5leHBvcnQgZW51bSBBdXRoQ29uZmlnT3BlcmF0aW9uVHlwZSB7XG4gIC8qKiBMT0dJTiAqL1xuICBMT0dJTiA9IFwiTE9HSU5cIixcbiAgLyoqIENSRUFURSAqL1xuICBDUkVBVEUgPSBcIkNSRUFURVwiLFxuICAvKiogREVMRVRFICovXG4gIERFTEVURSA9IFwiREVMRVRFXCIsXG59XG5cbi8qKlxuICogQHNjaGVtYSBBdXRoQ29uZmlnUHJvdmlkZXJzXG4gKi9cbmV4cG9ydCBlbnVtIEF1dGhDb25maWdQcm92aWRlcnMge1xuICAvKiogYW5vbi11c2VyICovXG4gIEFOT05fVVNFUiA9IFwiYW5vbi11c2VyXCIsXG4gIC8qKiBhcGkta2V5ICovXG4gIEFQSV9LRVkgPSBcImFwaS1rZXlcIixcbiAgLyoqIGN1c3RvbS10b2tlbiAqL1xuICBDVVNUT01fVE9LRU4gPSBcImN1c3RvbS10b2tlblwiLFxuICAvKiogY3VzdG9tLWZ1bmN0aW9uICovXG4gIENVU1RPTV9GVU5DVElPTiA9IFwiY3VzdG9tLWZ1bmN0aW9uXCIsXG4gIC8qKiBsb2NhbC11c2VycGFzcyAqL1xuICBMT0NBTF9VU0VSUEFTUyA9IFwibG9jYWwtdXNlcnBhc3NcIixcbiAgLyoqIG9hdXRoMi1hcHBsZSAqL1xuICBPQVVUSDJfQVBQTEUgPSBcIm9hdXRoMi1hcHBsZVwiLFxuICAvKiogb2F1dGgyLWZhY2Vib29rICovXG4gIE9BVVRIMl9GQUNFQk9PSyA9IFwib2F1dGgyLWZhY2Vib29rXCIsXG4gIC8qKiBvYXV0aDItZ29vZ2xlICovXG4gIE9BVVRIMl9HT09HTEUgPSBcIm9hdXRoMi1nb29nbGVcIixcbn1cblxuLyoqXG4gKiBAc2NoZW1hIEV2ZW50RnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEZ1bmN0aW9uIHtcbiAgLyoqXG4gICAqIEBzY2hlbWEgRXZlbnRGdW5jdGlvbiNGdW5jQ29uZmlnXG4gICAqL1xuICByZWFkb25seSBmdW5jQ29uZmlnPzogRXZlbnRGdW5jdGlvbkZ1bmNDb25maWc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0V2ZW50RnVuY3Rpb24nIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50RnVuY3Rpb24oXG4gIG9iajogRXZlbnRGdW5jdGlvbiB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEZ1bmNDb25maWc6IHRvSnNvbl9FdmVudEZ1bmN0aW9uRnVuY0NvbmZpZyhvYmouZnVuY0NvbmZpZyksXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEBzY2hlbWEgRXZlbnRBd3NldmVudGJyaWRnZVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50QXdzZXZlbnRicmlkZ2Uge1xuICAvKipcbiAgICogQHNjaGVtYSBFdmVudEF3c2V2ZW50YnJpZGdlI0FXU0NvbmZpZ1xuICAgKi9cbiAgcmVhZG9ubHkgYXdzQ29uZmlnPzogRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRXZlbnRBd3NldmVudGJyaWRnZScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fRXZlbnRBd3NldmVudGJyaWRnZShcbiAgb2JqOiBFdmVudEF3c2V2ZW50YnJpZGdlIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQVdTQ29uZmlnOiB0b0pzb25fRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyhvYmouYXdzQ29uZmlnKSxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBFdmVudEZ1bmN0aW9uRnVuY0NvbmZpZ1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEV2ZW50RnVuY3Rpb25GdW5jQ29uZmlnIHtcbiAgLyoqXG4gICAqIFRoZSBJRCBvZiB0aGUgZnVuY3Rpb24gdGhhdCB0aGUgdHJpZ2dlciBjYWxscyB3aGVuIGl0IGZpcmVzLlxuICAgKlxuICAgKiBUaGlzIHZhbHVlIGlzIHRoZSBzYW1lIGFzIHRoZSByb290LWxldmVsIGBmdW5jdGlvbl9pZGAuXG4gICAqIFlvdSBjYW4gZWl0aGVyIGRlZmluZSB0aGUgdmFsdWUgaGVyZSBvciBpbiBgZnVuY3Rpb25faWRgLlxuICAgKiBUaGUgQXBwIFNlcnZpY2VzIGJhY2tlbmQgZHVwbGljYXRlcyB0aGUgdmFsdWUgdG8gdGhlIGNvbmZpZ3VyYXRpb24gbG9jYXRpb24gd2hlcmUgeW91IGRpZCBub3QgZGVmaW5lIGl0LlxuICAgKlxuICAgKiBGb3IgZXhhbXBsZSwgaWYgeW91IGRlZmluZSBgZXZlbnRfcHJvY2Vzc29ycy5GVU5DVElPTi5mdW5jdGlvbl9pZGAsIHRoZSBiYWNrZW5kIGR1cGxpY2F0ZXMgaXQgdG8gYGZ1bmN0aW9uX2lkYC5cbiAgICpcbiAgICogQHNjaGVtYSBFdmVudEZ1bmN0aW9uRnVuY0NvbmZpZyNGdW5jdGlvbklkXG4gICAqL1xuICByZWFkb25seSBmdW5jdGlvbklkPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgZnVuY3Rpb24gdGhhdCB0aGUgdHJpZ2dlciBjYWxscyB3aGVuIGl0XG4gICAqIGZpcmVzLCBpLmUuIHRoZSBmdW5jdGlvbiBkZXNjcmliZWQgYnkgYGZ1bmN0aW9uX2lkYC5cbiAgICpcbiAgICogVGhpcyB2YWx1ZSBpcyB0aGUgc2FtZSBhcyB0aGUgcm9vdC1sZXZlbCBgZnVuY3Rpb25fbmFtZWAuXG4gICAqIFlvdSBjYW4gZWl0aGVyIGRlZmluZSB0aGUgdmFsdWUgaGVyZSBvciBpbiBgZnVuY3Rpb25fbmFtZWAuXG4gICAqIFRoZSBBcHAgU2VydmljZXMgYmFja2VuZCBkdXBsaWNhdGVzIHRoZSB2YWx1ZSB0byB0aGUgY29uZmlndXJhdGlvbiBsb2NhdGlvbiB3aGVyZSB5b3UgZGlkIG5vdCBkZWZpbmUgaXQuXG4gICAqXG4gICAqIEZvciBleGFtcGxlLCBpZiB5b3UgZGVmaW5lIGBldmVudF9wcm9jZXNzb3JzLkZVTkNUSU9OLmZ1bmN0aW9uX25hbWVgLCB0aGUgYmFja2VuZCBkdXBsaWNhdGVzIGl0IHRvIGBmdW5jdGlvbl9uYW1lYC5cbiAgICpcbiAgICogQHNjaGVtYSBFdmVudEZ1bmN0aW9uRnVuY0NvbmZpZyNGdW5jdGlvbk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGZ1bmN0aW9uTmFtZT86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnRXZlbnRGdW5jdGlvbkZ1bmNDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50RnVuY3Rpb25GdW5jQ29uZmlnKFxuICBvYmo6IEV2ZW50RnVuY3Rpb25GdW5jQ29uZmlnIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgRnVuY3Rpb25JZDogb2JqLmZ1bmN0aW9uSWQsXG4gICAgRnVuY3Rpb25OYW1lOiBvYmouZnVuY3Rpb25OYW1lLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWdcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFdmVudEF3c2V2ZW50YnJpZGdlQXdzQ29uZmlnIHtcbiAgLyoqXG4gICAqIEFuIEFXUyBBY2NvdW50IElELlxuICAgKlxuICAgKiBAc2NoZW1hIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcjQWNjb3VudElkXG4gICAqL1xuICByZWFkb25seSBhY2NvdW50SWQ/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEFuIEFXUyByZWdpb24uXG4gICAqXG4gICAqIEBzY2hlbWEgRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogSWYgYHRydWVgLCBldmVudCBvYmplY3RzIGFyZSBzZXJpYWxpemVkIHVzaW5nIEVKU09OLlxuICAgKlxuICAgKiBAc2NoZW1hIEV2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcjRXh0ZW5kZWRKc29uRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZXh0ZW5kZWRKc29uRW5hYmxlZD86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0V2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0V2ZW50QXdzZXZlbnRicmlkZ2VBd3NDb25maWcoXG4gIG9iajogRXZlbnRBd3NldmVudGJyaWRnZUF3c0NvbmZpZyB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIEFjY291bnRJZDogb2JqLmFjY291bnRJZCxcbiAgICBSZWdpb246IG9iai5yZWdpb24sXG4gICAgRXh0ZW5kZWRKc29uRW5hYmxlZDogb2JqLmV4dGVuZGVkSnNvbkVuYWJsZWQsXG4gIH07XG4gIC8vIGZpbHRlciB1bmRlZmluZWQgdmFsdWVzXG4gIHJldHVybiBPYmplY3QuZW50cmllcyhyZXN1bHQpLnJlZHVjZShcbiAgICAociwgaSkgPT4gKGlbMV0gPT09IHVuZGVmaW5lZCA/IHIgOiB7IC4uLnIsIFtpWzBdXTogaVsxXSB9KSxcbiAgICB7fVxuICApO1xufVxuLyogZXNsaW50LWVuYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuXG4vKipcbiAqIEEgQ2xvdWRGb3JtYXRpb24gYE1vbmdvREI6OkF0bGFzOjpUcmlnZ2VyYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpUcmlnZ2VyXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5UcmlnZ2VyIGV4dGVuZHMgY2RrLkNmblJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBDbG91ZEZvcm1hdGlvbiByZXNvdXJjZSB0eXBlIG5hbWUgZm9yIHRoaXMgcmVzb3VyY2UgY2xhc3MuXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IENGTl9SRVNPVVJDRV9UWVBFX05BTUUgPSBcIk1vbmdvREI6OkF0bGFzOjpUcmlnZ2VyXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5UcmlnZ2VyUHJvcHM7XG5cbiAgLyoqXG4gICAqIEF0dHJpYnV0ZSBgTW9uZ29EQjo6QXRsYXM6OlRyaWdnZXIuSWRgXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgYXR0cklkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6OlRyaWdnZXJgLlxuICAgKlxuICAgKiBAcGFyYW0gc2NvcGUgLSBzY29wZSBpbiB3aGljaCB0aGlzIHJlc291cmNlIGlzIGRlZmluZWRcbiAgICogQHBhcmFtIGlkICAgIC0gc2NvcGVkIGlkIG9mIHRoZSByZXNvdXJjZVxuICAgKiBAcGFyYW0gcHJvcHMgLSByZXNvdXJjZSBwcm9wZXJ0aWVzXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogY29uc3RydWN0cy5Db25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBDZm5UcmlnZ2VyUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblRyaWdnZXIuQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSxcbiAgICAgIHByb3BlcnRpZXM6IHRvSnNvbl9DZm5UcmlnZ2VyUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcblxuICAgIHRoaXMuYXR0cklkID0gY2RrLlRva2VuLmFzU3RyaW5nKHRoaXMuZ2V0QXR0KFwiSWRcIikpO1xuICB9XG59XG4iXX0=

@@ -20,8 +20,2 @@ import * as cdk from "aws-cdk-lib";

/**
* Total number of unexpired certificates returned in this response.
*
* @schema CfnX509AuthenticationDatabaseUserProps#TotalCount
*/
readonly totalCount?: number;
/**
* CustomerX509 represents Customer-managed X.509 configuration for an Atlas project.

@@ -39,8 +33,2 @@ *

/**
* A number of months that the created certificate is valid for before expiry, up to 24 months.default 3.
*
* @schema CfnX509AuthenticationDatabaseUserProps#MonthsUntilExpiration
*/
readonly monthsUntilExpiration?: number;
/**
* The unique identifier for the project .

@@ -87,2 +75,10 @@ *

/**
* Attribute `MongoDB::Atlas::X509AuthenticationDatabaseUser.TotalCount`
*/
readonly attrTotalCount: number;
/**
* Attribute `MongoDB::Atlas::X509AuthenticationDatabaseUser.MonthsUntilExpiration`
*/
readonly attrMonthsUntilExpiration: number;
/**
* Create a new `MongoDB::Atlas::X509AuthenticationDatabaseUser`.

@@ -89,0 +85,0 @@ *

@@ -18,6 +18,4 @@ "use strict";

Profile: obj.profile,
TotalCount: obj.totalCount,
CustomerX509: toJson_CustomerX509(obj.customerX509),
UserName: obj.userName,
MonthsUntilExpiration: obj.monthsUntilExpiration,
ProjectId: obj.projectId,

@@ -65,2 +63,4 @@ };

this.props = props;
this.attrTotalCount = cdk.Token.asNumber(this.getAtt("TotalCount"));
this.attrMonthsUntilExpiration = cdk.Token.asNumber(this.getAtt("MonthsUntilExpiration"));
}

@@ -70,3 +70,3 @@ }

_a = JSII_RTTI_SYMBOL_1;
CfnX509AuthenticationDatabaseUser[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnX509AuthenticationDatabaseUser", version: "3.7.2" };
CfnX509AuthenticationDatabaseUser[_a] = { fqn: "awscdk-resources-mongodbatlas.CfnX509AuthenticationDatabaseUser", version: "3.8.0" };
/**

@@ -76,2 +76,2 @@ * The CloudFormation resource type name for this resource class.

CfnX509AuthenticationDatabaseUser.CFN_RESOURCE_TYPE_NAME = "MongoDB::Atlas::X509AuthenticationDatabaseUser";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3g1MDktYXV0aGVudGljYXRpb24tZGF0YWJhc2UtdXNlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUF3RG5DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLDZDQUE2QyxDQUMzRCxHQUF1RDtJQUV2RCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixVQUFVLEVBQUUsR0FBRyxDQUFDLFVBQVU7UUFDMUIsWUFBWSxFQUFFLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUM7UUFDbkQsUUFBUSxFQUFFLEdBQUcsQ0FBQyxRQUFRO1FBQ3RCLHFCQUFxQixFQUFFLEdBQUcsQ0FBQyxxQkFBcUI7UUFDaEQsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQW5CRCxzR0FtQkM7QUFlRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixtQkFBbUIsQ0FDakMsR0FBNkI7SUFFN0IsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUc7S0FDYixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFkRCxrREFjQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsaUNBQWtDLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFZcEU7Ozs7OztPQU1HO0lBQ0gsWUFDRSxLQUEyQixFQUMzQixFQUFVLEVBQ1YsS0FBNkM7UUFFN0MsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUU7WUFDZixJQUFJLEVBQUUsaUNBQWlDLENBQUMsc0JBQXNCO1lBQzlELFVBQVUsRUFBRSw2Q0FBNkMsQ0FBQyxLQUFLLENBQUU7U0FDbEUsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7QUE5QkgsOEVBK0JDOzs7QUE5QkM7O0dBRUc7QUFDb0Isd0RBQXNCLEdBQzNDLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBHZW5lcmF0ZXMgb25lIFguNTA5IGNlcnRpZmljYXRlIGZvciB0aGUgc3BlY2lmaWVkIE1vbmdvREIgdXNlci4gQXRsYXMgbWFuYWdlcyB0aGUgY2VydGlmaWNhdGUgYW5kIE1vbmdvREIgdXNlciB0aGF0IGJlbG9uZyB0byBvbmUgcHJvamVjdC4gVG8gdXNlIHRoaXMgcmVzb3VyY2UsIHRoZSByZXF1ZXN0aW5nIEFQSSBLZXkgbXVzdCBoYXZlIHRoZSBQcm9qZWN0IEF0bGFzIEFkbWluIHJvbGUuIFRoaXMgcmVzb3VyY2UgZG9lc24ndCByZXF1aXJlIHRoZSBBUEkgS2V5IHRvIGhhdmUgYW4gQWNjZXNzIExpc3QuXG4gKlxuICogVG8gZ2V0IE1vbmdvREIgQ2xvdWQgdG8gZ2VuZXJhdGUgYSBtYW5hZ2VkIGNlcnRpZmljYXRlIGZvciBhIGRhdGFiYXNlIHVzZXIsIHNldCBgXCJ4NTA5VHlwZVwiIDogXCJNQU5BR0VEXCJgIG9uIHRoZSBkZXNpcmVkIE1vbmdvREIgRGF0YWJhc2UgVXNlci5cbiAqXG4gKiBJZiB5b3UgYXJlIG1hbmFnaW5nIHlvdXIgb3duIENlcnRpZmljYXRlIEF1dGhvcml0eSAoQ0EpIGluIFNlbGYtTWFuYWdlZCBYLjUwOSBtb2RlLCB5b3UgbXVzdCBnZW5lcmF0ZSBjZXJ0aWZpY2F0ZXMgZm9yIGRhdGFiYXNlIHVzZXJzIHVzaW5nIHlvdXIgb3duIENBLlxuICpcbiAqIEBzY2hlbWEgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogVG90YWwgbnVtYmVyIG9mIHVuZXhwaXJlZCBjZXJ0aWZpY2F0ZXMgcmV0dXJuZWQgaW4gdGhpcyByZXNwb25zZS5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyNUb3RhbENvdW50XG4gICAqL1xuICByZWFkb25seSB0b3RhbENvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBDdXN0b21lclg1MDkgcmVwcmVzZW50cyBDdXN0b21lci1tYW5hZ2VkIFguNTA5IGNvbmZpZ3VyYXRpb24gZm9yIGFuIEF0bGFzIHByb2plY3QuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMjQ3VzdG9tZXJYNTA5XG4gICAqL1xuICByZWFkb25seSBjdXN0b21lclg1MDk/OiBDdXN0b21lclg1MDk7XG5cbiAgLyoqXG4gICAqIFVzZXJuYW1lIG9mIHRoZSBkYXRhYmFzZSB1c2VyIHRvIGNyZWF0ZSBhIGNlcnRpZmljYXRlIGZvci5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyNVc2VyTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgdXNlck5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEEgbnVtYmVyIG9mIG1vbnRocyB0aGF0IHRoZSBjcmVhdGVkIGNlcnRpZmljYXRlIGlzIHZhbGlkIGZvciBiZWZvcmUgZXhwaXJ5LCB1cCB0byAyNCBtb250aHMuZGVmYXVsdCAzLlxuICAgKlxuICAgKiBAc2NoZW1hIENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzI01vbnRoc1VudGlsRXhwaXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgbW9udGhzVW50aWxFeHBpcmF0aW9uPzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBwcm9qZWN0IC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0Nmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzKFxuICBvYmo6IENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgVG90YWxDb3VudDogb2JqLnRvdGFsQ291bnQsXG4gICAgQ3VzdG9tZXJYNTA5OiB0b0pzb25fQ3VzdG9tZXJYNTA5KG9iai5jdXN0b21lclg1MDkpLFxuICAgIFVzZXJOYW1lOiBvYmoudXNlck5hbWUsXG4gICAgTW9udGhzVW50aWxFeHBpcmF0aW9uOiBvYmoubW9udGhzVW50aWxFeHBpcmF0aW9uLFxuICAgIFByb2plY3RJZDogb2JqLnByb2plY3RJZCxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQHNjaGVtYSBjdXN0b21lclg1MDlcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDdXN0b21lclg1MDkge1xuICAvKipcbiAgICogUEVNIHN0cmluZyBjb250YWluaW5nIG9uZSBvciBtb3JlIGN1c3RvbWVyIENBcyBmb3IgZGF0YWJhc2UgdXNlciBhdXRoZW50aWNhdGlvbi5cbiAgICpcbiAgICogQHNjaGVtYSBjdXN0b21lclg1MDkjQ2FzXG4gICAqL1xuICByZWFkb25seSBjYXM/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogQ29udmVydHMgYW4gb2JqZWN0IG9mIHR5cGUgJ0N1c3RvbWVyWDUwOScgdG8gSlNPTiByZXByZXNlbnRhdGlvbi5cbiAqL1xuLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0pzb25fQ3VzdG9tZXJYNTA5KFxuICBvYmo6IEN1c3RvbWVyWDUwOSB8IHVuZGVmaW5lZFxuKTogUmVjb3JkPHN0cmluZywgYW55PiB8IHVuZGVmaW5lZCB7XG4gIGlmIChvYmogPT09IHVuZGVmaW5lZCkge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgcmVzdWx0ID0ge1xuICAgIENhczogb2JqLmNhcyxcbiAgfTtcbiAgLy8gZmlsdGVyIHVuZGVmaW5lZCB2YWx1ZXNcbiAgcmV0dXJuIE9iamVjdC5lbnRyaWVzKHJlc3VsdCkucmVkdWNlKFxuICAgIChyLCBpKSA9PiAoaVsxXSA9PT0gdW5kZWZpbmVkID8gciA6IHsgLi4uciwgW2lbMF1dOiBpWzFdIH0pLFxuICAgIHt9XG4gICk7XG59XG4vKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5cbi8qKlxuICogQSBDbG91ZEZvcm1hdGlvbiBgTW9uZ29EQjo6QXRsYXM6Olg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlcmBcbiAqXG4gKiBAY2xvdWRmb3JtYXRpb25SZXNvdXJjZSBNb25nb0RCOjpBdGxhczo6WDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyXG4gKiBAc3RhYmlsaXR5IGV4dGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXIgZXh0ZW5kcyBjZGsuQ2ZuUmVzb3VyY2Uge1xuICAvKipcbiAgICogVGhlIENsb3VkRm9ybWF0aW9uIHJlc291cmNlIHR5cGUgbmFtZSBmb3IgdGhpcyByZXNvdXJjZSBjbGFzcy5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgQ0ZOX1JFU09VUkNFX1RZUEVfTkFNRSA9XG4gICAgXCJNb25nb0RCOjpBdGxhczo6WDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyXCI7XG5cbiAgLyoqXG4gICAqIFJlc291cmNlIHByb3BzLlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHByb3BzOiBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcztcblxuICAvKipcbiAgICogQ3JlYXRlIGEgbmV3IGBNb25nb0RCOjpBdGxhczo6WDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyYC5cbiAgICpcbiAgICogQHBhcmFtIHNjb3BlIC0gc2NvcGUgaW4gd2hpY2ggdGhpcyByZXNvdXJjZSBpcyBkZWZpbmVkXG4gICAqIEBwYXJhbSBpZCAgICAtIHNjb3BlZCBpZCBvZiB0aGUgcmVzb3VyY2VcbiAgICogQHBhcmFtIHByb3BzIC0gcmVzb3VyY2UgcHJvcGVydGllc1xuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgc2NvcGU6IGNvbnN0cnVjdHMuQ29uc3RydWN0LFxuICAgIGlkOiBzdHJpbmcsXG4gICAgcHJvcHM6IENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgdHlwZTogQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyLkNGTl9SRVNPVVJDRV9UWVBFX05BTUUsXG4gICAgICBwcm9wZXJ0aWVzOiB0b0pzb25fQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMocHJvcHMpISxcbiAgICB9KTtcblxuICAgIHRoaXMucHJvcHMgPSBwcm9wcztcbiAgfVxufVxuIl19
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDEtcmVzb3VyY2VzL3g1MDktYXV0aGVudGljYXRpb24tZGF0YWJhc2UtdXNlci9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDBCQUEwQjtBQUMxQixtQ0FBbUM7QUEwQ25DOztHQUVHO0FBQ0gseUNBQXlDO0FBQ3pDLFNBQWdCLDZDQUE2QyxDQUMzRCxHQUF1RDtJQUV2RCxJQUFJLEdBQUcsS0FBSyxTQUFTLEVBQUU7UUFDckIsT0FBTyxTQUFTLENBQUM7S0FDbEI7SUFDRCxNQUFNLE1BQU0sR0FBRztRQUNiLE9BQU8sRUFBRSxHQUFHLENBQUMsT0FBTztRQUNwQixZQUFZLEVBQUUsbUJBQW1CLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQztRQUNuRCxRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7UUFDdEIsU0FBUyxFQUFFLEdBQUcsQ0FBQyxTQUFTO0tBQ3pCLENBQUM7SUFDRiwwQkFBMEI7SUFDMUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE1BQU0sQ0FDbEMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQzNELEVBQUUsQ0FDSCxDQUFDO0FBQ0osQ0FBQztBQWpCRCxzR0FpQkM7QUFlRDs7R0FFRztBQUNILHlDQUF5QztBQUN6QyxTQUFnQixtQkFBbUIsQ0FDakMsR0FBNkI7SUFFN0IsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO1FBQ3JCLE9BQU8sU0FBUyxDQUFDO0tBQ2xCO0lBQ0QsTUFBTSxNQUFNLEdBQUc7UUFDYixHQUFHLEVBQUUsR0FBRyxDQUFDLEdBQUc7S0FDYixDQUFDO0lBQ0YsMEJBQTBCO0lBQzFCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLENBQ2xDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUMzRCxFQUFFLENBQ0gsQ0FBQztBQUNKLENBQUM7QUFkRCxrREFjQztBQUNELHdDQUF3QztBQUV4Qzs7Ozs7R0FLRztBQUNILE1BQWEsaUNBQWtDLFNBQVEsR0FBRyxDQUFDLFdBQVc7SUFxQnBFOzs7Ozs7T0FNRztJQUNILFlBQ0UsS0FBMkIsRUFDM0IsRUFBVSxFQUNWLEtBQTZDO1FBRTdDLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsSUFBSSxFQUFFLGlDQUFpQyxDQUFDLHNCQUFzQjtZQUM5RCxVQUFVLEVBQUUsNkNBQTZDLENBQUMsS0FBSyxDQUFFO1NBQ2xFLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBRW5CLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FDakQsSUFBSSxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUNyQyxDQUFDO0lBQ0osQ0FBQzs7QUE1Q0gsOEVBNkNDOzs7QUE1Q0M7O0dBRUc7QUFDb0Isd0RBQXNCLEdBQzNDLGdEQUFnRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gR2VuZXJhdGVkIGJ5IGNkay1pbXBvcnRcbmltcG9ydCAqIGFzIGNkayBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCAqIGFzIGNvbnN0cnVjdHMgZnJvbSBcImNvbnN0cnVjdHNcIjtcblxuLyoqXG4gKiBHZW5lcmF0ZXMgb25lIFguNTA5IGNlcnRpZmljYXRlIGZvciB0aGUgc3BlY2lmaWVkIE1vbmdvREIgdXNlci4gQXRsYXMgbWFuYWdlcyB0aGUgY2VydGlmaWNhdGUgYW5kIE1vbmdvREIgdXNlciB0aGF0IGJlbG9uZyB0byBvbmUgcHJvamVjdC4gVG8gdXNlIHRoaXMgcmVzb3VyY2UsIHRoZSByZXF1ZXN0aW5nIEFQSSBLZXkgbXVzdCBoYXZlIHRoZSBQcm9qZWN0IEF0bGFzIEFkbWluIHJvbGUuIFRoaXMgcmVzb3VyY2UgZG9lc24ndCByZXF1aXJlIHRoZSBBUEkgS2V5IHRvIGhhdmUgYW4gQWNjZXNzIExpc3QuXG4gKlxuICogVG8gZ2V0IE1vbmdvREIgQ2xvdWQgdG8gZ2VuZXJhdGUgYSBtYW5hZ2VkIGNlcnRpZmljYXRlIGZvciBhIGRhdGFiYXNlIHVzZXIsIHNldCBgXCJ4NTA5VHlwZVwiIDogXCJNQU5BR0VEXCJgIG9uIHRoZSBkZXNpcmVkIE1vbmdvREIgRGF0YWJhc2UgVXNlci5cbiAqXG4gKiBJZiB5b3UgYXJlIG1hbmFnaW5nIHlvdXIgb3duIENlcnRpZmljYXRlIEF1dGhvcml0eSAoQ0EpIGluIFNlbGYtTWFuYWdlZCBYLjUwOSBtb2RlLCB5b3UgbXVzdCBnZW5lcmF0ZSBjZXJ0aWZpY2F0ZXMgZm9yIGRhdGFiYXNlIHVzZXJzIHVzaW5nIHlvdXIgb3duIENBLlxuICpcbiAqIEBzY2hlbWEgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyB7XG4gIC8qKlxuICAgKiBQcm9maWxlIHVzZWQgdG8gcHJvdmlkZSBjcmVkZW50aWFscyBpbmZvcm1hdGlvbiwgKGEgc2VjcmV0IHdpdGggdGhlIGNmbi9hdGxhcy9wcm9maWxlL3tQcm9maWxlfSwgaXMgcmVxdWlyZWQpLCBpZiBub3QgcHJvdmlkZWQgZGVmYXVsdCBpcyB1c2VkXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMjUHJvZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZT86IHN0cmluZztcblxuICAvKipcbiAgICogQ3VzdG9tZXJYNTA5IHJlcHJlc2VudHMgQ3VzdG9tZXItbWFuYWdlZCBYLjUwOSBjb25maWd1cmF0aW9uIGZvciBhbiBBdGxhcyBwcm9qZWN0LlxuICAgKlxuICAgKiBAc2NoZW1hIENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzI0N1c3RvbWVyWDUwOVxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tZXJYNTA5PzogQ3VzdG9tZXJYNTA5O1xuXG4gIC8qKlxuICAgKiBVc2VybmFtZSBvZiB0aGUgZGF0YWJhc2UgdXNlciB0byBjcmVhdGUgYSBjZXJ0aWZpY2F0ZSBmb3IuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMjVXNlck5hbWVcbiAgICovXG4gIHJlYWRvbmx5IHVzZXJOYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoZSBwcm9qZWN0IC5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wcyNQcm9qZWN0SWRcbiAgICovXG4gIHJlYWRvbmx5IHByb2plY3RJZD86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ2ZuWDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyUHJvcHMnIHRvIEpTT04gcmVwcmVzZW50YXRpb24uXG4gKi9cbi8qIGVzbGludC1kaXNhYmxlIG1heC1sZW4sIHF1b3RlLXByb3BzICovXG5leHBvcnQgZnVuY3Rpb24gdG9Kc29uX0Nmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzKFxuICBvYmo6IENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzIHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgUHJvZmlsZTogb2JqLnByb2ZpbGUsXG4gICAgQ3VzdG9tZXJYNTA5OiB0b0pzb25fQ3VzdG9tZXJYNTA5KG9iai5jdXN0b21lclg1MDkpLFxuICAgIFVzZXJOYW1lOiBvYmoudXNlck5hbWUsXG4gICAgUHJvamVjdElkOiBvYmoucHJvamVjdElkLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBAc2NoZW1hIGN1c3RvbWVyWDUwOVxuICovXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbWVyWDUwOSB7XG4gIC8qKlxuICAgKiBQRU0gc3RyaW5nIGNvbnRhaW5pbmcgb25lIG9yIG1vcmUgY3VzdG9tZXIgQ0FzIGZvciBkYXRhYmFzZSB1c2VyIGF1dGhlbnRpY2F0aW9uLlxuICAgKlxuICAgKiBAc2NoZW1hIGN1c3RvbWVyWDUwOSNDYXNcbiAgICovXG4gIHJlYWRvbmx5IGNhcz86IHN0cmluZztcbn1cblxuLyoqXG4gKiBDb252ZXJ0cyBhbiBvYmplY3Qgb2YgdHlwZSAnQ3VzdG9tZXJYNTA5JyB0byBKU09OIHJlcHJlc2VudGF0aW9uLlxuICovXG4vKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuLCBxdW90ZS1wcm9wcyAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvSnNvbl9DdXN0b21lclg1MDkoXG4gIG9iajogQ3VzdG9tZXJYNTA5IHwgdW5kZWZpbmVkXG4pOiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkIHtcbiAgaWYgKG9iaiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCByZXN1bHQgPSB7XG4gICAgQ2FzOiBvYmouY2FzLFxuICB9O1xuICAvLyBmaWx0ZXIgdW5kZWZpbmVkIHZhbHVlc1xuICByZXR1cm4gT2JqZWN0LmVudHJpZXMocmVzdWx0KS5yZWR1Y2UoXG4gICAgKHIsIGkpID0+IChpWzFdID09PSB1bmRlZmluZWQgPyByIDogeyAuLi5yLCBbaVswXV06IGlbMV0gfSksXG4gICAge31cbiAgKTtcbn1cbi8qIGVzbGludC1lbmFibGUgbWF4LWxlbiwgcXVvdGUtcHJvcHMgKi9cblxuLyoqXG4gKiBBIENsb3VkRm9ybWF0aW9uIGBNb25nb0RCOjpBdGxhczo6WDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyYFxuICpcbiAqIEBjbG91ZGZvcm1hdGlvblJlc291cmNlIE1vbmdvREI6OkF0bGFzOjpYNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJcbiAqIEBzdGFiaWxpdHkgZXh0ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlciBleHRlbmRzIGNkay5DZm5SZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgQ2xvdWRGb3JtYXRpb24gcmVzb3VyY2UgdHlwZSBuYW1lIGZvciB0aGlzIHJlc291cmNlIGNsYXNzLlxuICAgKi9cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBDRk5fUkVTT1VSQ0VfVFlQRV9OQU1FID1cbiAgICBcIk1vbmdvREI6OkF0bGFzOjpYNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJcIjtcblxuICAvKipcbiAgICogUmVzb3VyY2UgcHJvcHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcHJvcHM6IENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzO1xuXG4gIC8qKlxuICAgKiBBdHRyaWJ1dGUgYE1vbmdvREI6OkF0bGFzOjpYNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXIuVG90YWxDb3VudGBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyVG90YWxDb3VudDogbnVtYmVyO1xuICAvKipcbiAgICogQXR0cmlidXRlIGBNb25nb0RCOjpBdGxhczo6WDUwOUF1dGhlbnRpY2F0aW9uRGF0YWJhc2VVc2VyLk1vbnRoc1VudGlsRXhwaXJhdGlvbmBcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBhdHRyTW9udGhzVW50aWxFeHBpcmF0aW9uOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIG5ldyBgTW9uZ29EQjo6QXRsYXM6Olg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlcmAuXG4gICAqXG4gICAqIEBwYXJhbSBzY29wZSAtIHNjb3BlIGluIHdoaWNoIHRoaXMgcmVzb3VyY2UgaXMgZGVmaW5lZFxuICAgKiBAcGFyYW0gaWQgICAgLSBzY29wZWQgaWQgb2YgdGhlIHJlc291cmNlXG4gICAqIEBwYXJhbSBwcm9wcyAtIHJlc291cmNlIHByb3BlcnRpZXNcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBjb25zdHJ1Y3RzLkNvbnN0cnVjdCxcbiAgICBpZDogc3RyaW5nLFxuICAgIHByb3BzOiBDZm5YNTA5QXV0aGVudGljYXRpb25EYXRhYmFzZVVzZXJQcm9wc1xuICApIHtcbiAgICBzdXBlcihzY29wZSwgaWQsIHtcbiAgICAgIHR5cGU6IENmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlci5DRk5fUkVTT1VSQ0VfVFlQRV9OQU1FLFxuICAgICAgcHJvcGVydGllczogdG9Kc29uX0Nmblg1MDlBdXRoZW50aWNhdGlvbkRhdGFiYXNlVXNlclByb3BzKHByb3BzKSEsXG4gICAgfSk7XG5cbiAgICB0aGlzLnByb3BzID0gcHJvcHM7XG5cbiAgICB0aGlzLmF0dHJUb3RhbENvdW50ID0gY2RrLlRva2VuLmFzTnVtYmVyKHRoaXMuZ2V0QXR0KFwiVG90YWxDb3VudFwiKSk7XG4gICAgdGhpcy5hdHRyTW9udGhzVW50aWxFeHBpcmF0aW9uID0gY2RrLlRva2VuLmFzTnVtYmVyKFxuICAgICAgdGhpcy5nZXRBdHQoXCJNb250aHNVbnRpbEV4cGlyYXRpb25cIilcbiAgICApO1xuICB9XG59XG4iXX0=

@@ -49,3 +49,3 @@ "use strict";

this.cfnEncryptionAtRest = new index_1.CfnEncryptionAtRest(this, "AtlasEncryptionAtRest", {
awsKms: {
awsKmsConfig: {
enabled: props.enabled == undefined ? true : props.enabled,

@@ -63,3 +63,3 @@ region: !props.region ? US_EAST_1 : props.region,

_a = JSII_RTTI_SYMBOL_1;
AtlasEncryptionAtRest[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasEncryptionAtRest", version: "3.7.2" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDItcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLG1FQUFtRTtBQUNuRSwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLGtEQUFrRDtBQUNsRCxFQUFFO0FBQ0Ysc0VBQXNFO0FBQ3RFLG9FQUFvRTtBQUNwRSwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLGlDQUFpQztBQUVqQywyQ0FBdUM7QUFDdkMsdUNBQWtEO0FBRWxELE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQztBQTRDOUI7OztHQUdHO0FBQ0gsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFpQyxFQUFFLEVBQUU7SUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDcEIsTUFBTSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztLQUMzRDtJQUVELElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUU7UUFDOUIsTUFBTSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztLQUNyRTtJQUVELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQ2pCLE1BQU0sS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7S0FDeEQ7QUFDSCxDQUFDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBU2xELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksMkJBQW1CLENBQ2hELElBQUksRUFDSix1QkFBdUIsRUFDdkI7WUFDRSxNQUFNLEVBQUU7Z0JBQ04sT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUMxRCxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNO2dCQUNoRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Z0JBQ3BCLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxtQkFBbUI7YUFDL0M7WUFDRCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1NBQzNCLENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBM0JILHNEQTRCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDIzIE1vbmdvREIgSW5jXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbi8vIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbi8vIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuLy9cbi8vICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4vL1xuLy8gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuLy8gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuLy8gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4vLyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4vLyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IENmbkVuY3J5cHRpb25BdFJlc3QgfSBmcm9tIFwiLi4vLi4vaW5kZXhcIjtcblxuY29uc3QgVVNfRUFTVF8xID0gXCJVU19FQVNUXzFcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBdGxhc0VuY3J5cHRpb25BdFJlc3RQcm9wcyB7XG4gIC8qKlxuICAgKiBJRCBvZiBhbiBBV1MgSUFNIHJvbGUgYXV0aG9yaXplZCB0byBtYW5hZ2UgYW4gQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkuXG4gICAqXG4gICAqIEBzY2hlbWEgQXdzS21zI1JvbGVJRFxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZUlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkgdXNlZCB0byBlbmNyeXB0IGFuZCBkZWNyeXB0IHRoZSBNb25nb0RCIG1hc3RlciBrZXlzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNDdXN0b21lck1hc3RlcktleUlEXG4gICAqL1xuICByZWFkb25seSBjdXN0b21lck1hc3RlcktleUlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciBFbmNyeXB0aW9uIGF0IFJlc3QgaXMgZW5hYmxlZCBmb3IgYW4gQXRsYXMgcHJvamVjdC4gVG8gZGlzYWJsZSBFbmNyeXB0aW9uIGF0IFJlc3QsIHBhc3Mgb25seSB0aGlzIHBhcmFtZXRlciB3aXRoIGEgdmFsdWUgb2YgZmFsc2UuIFdoZW4geW91IGRpc2FibGUgRW5jcnlwdGlvbiBhdCBSZXN0LCBBdGxhcyBhbHNvIHJlbW92ZXMgdGhlIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5cbiAgICogRGVmYXVsdCBWYWx1ZTogdHJ1ZVxuICAgKiBAc2NoZW1hIEF3c0ttcyNFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBBV1MgcmVnaW9uIGluIHdoaWNoIHRoZSBBV1MgY3VzdG9tZXIgbWFzdGVyIGtleSBleGlzdHMuXG4gICAqIERlZmF1bHQgVmFsdWU6IFVTX0VBU1RfMVxuICAgKiBAc2NoZW1hIEF3c0ttcyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIEF0bGFzIHByb2plY3QgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuXG4gICAqIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogSXQgdGhyb3dzIGFuIGVycm9yIGlmIGFueSBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhcmUgbm90IGRlZmluZWRcbiAqIEBwYXJhbSB7QXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHN9IHByb3BzIC0gQXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHNcbiAqL1xuY29uc3QgdmFsaWRhdGUgPSAocHJvcHM6IEF0bGFzRW5jcnlwdGlvbkF0UmVzdFByb3BzKSA9PiB7XG4gIGlmICghcHJvcHMucHJvamVjdElkKSB7XG4gICAgdGhyb3cgRXJyb3IoXCJWYWxpZGF0aW9uIGVycm9yOiBwcm9qZWN0SWQgaXMgbm90IGRlZmluZWRcIik7XG4gIH1cblxuICBpZiAoIXByb3BzLmN1c3RvbWVyTWFzdGVyS2V5SWQpIHtcbiAgICB0aHJvdyBFcnJvcihcIlZhbGlkYXRpb24gZXJyb3I6IGN1c3RvbWVyTWFzdGVyS2V5SWQgaXMgbm90IGRlZmluZWRcIik7XG4gIH1cblxuICBpZiAoIXByb3BzLnJvbGVJZCkge1xuICAgIHRocm93IEVycm9yKFwiVmFsaWRhdGlvbiBlcnJvcjogcm9sZUlkIGlzIG5vdCBkZWZpbmVkXCIpO1xuICB9XG59O1xuXG4vKipcbiAqXG4gKlxuICogQGV4cG9ydFxuICogQGNsYXNzIEF0bGFzRW5jcnlwdGlvbkF0UmVzdFxuICogQGV4dGVuZHMge0NvbnN0cnVjdH1cbiAqL1xuZXhwb3J0IGNsYXNzIEF0bGFzRW5jcnlwdGlvbkF0UmVzdCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKlxuICAgKlxuICAgKiBAdHlwZSB7Q2ZuRW5jcnlwdGlvbkF0UmVzdH1cbiAgICogQG1lbWJlcm9mIEF0bGFzRW5jcnlwdGlvbkF0UmVzdFxuICAgKi9cbiAgcmVhZG9ubHkgY2ZuRW5jcnlwdGlvbkF0UmVzdDogQ2ZuRW5jcnlwdGlvbkF0UmVzdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdmFsaWRhdGUocHJvcHMpO1xuICAgIHRoaXMuY2ZuRW5jcnlwdGlvbkF0UmVzdCA9IG5ldyBDZm5FbmNyeXB0aW9uQXRSZXN0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiQXRsYXNFbmNyeXB0aW9uQXRSZXN0XCIsXG4gICAgICB7XG4gICAgICAgIGF3c0ttczoge1xuICAgICAgICAgIGVuYWJsZWQ6IHByb3BzLmVuYWJsZWQgPT0gdW5kZWZpbmVkID8gdHJ1ZSA6IHByb3BzLmVuYWJsZWQsXG4gICAgICAgICAgcmVnaW9uOiAhcHJvcHMucmVnaW9uID8gVVNfRUFTVF8xIDogcHJvcHMucmVnaW9uLFxuICAgICAgICAgIHJvbGVJZDogcHJvcHMucm9sZUlkLFxuICAgICAgICAgIGN1c3RvbWVyTWFzdGVyS2V5SWQ6IHByb3BzLmN1c3RvbWVyTWFzdGVyS2V5SWQsXG4gICAgICAgIH0sXG4gICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICAgIHByb2plY3RJZDogcHJvcHMucHJvamVjdElkLFxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
AtlasEncryptionAtRest[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasEncryptionAtRest", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDItcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLG1FQUFtRTtBQUNuRSwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLGtEQUFrRDtBQUNsRCxFQUFFO0FBQ0Ysc0VBQXNFO0FBQ3RFLG9FQUFvRTtBQUNwRSwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLGlDQUFpQztBQUVqQywyQ0FBdUM7QUFDdkMsdUNBQWtEO0FBRWxELE1BQU0sU0FBUyxHQUFHLFdBQVcsQ0FBQztBQTRDOUI7OztHQUdHO0FBQ0gsTUFBTSxRQUFRLEdBQUcsQ0FBQyxLQUFpQyxFQUFFLEVBQUU7SUFDckQsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUU7UUFDcEIsTUFBTSxLQUFLLENBQUMsNENBQTRDLENBQUMsQ0FBQztLQUMzRDtJQUVELElBQUksQ0FBQyxLQUFLLENBQUMsbUJBQW1CLEVBQUU7UUFDOUIsTUFBTSxLQUFLLENBQUMsc0RBQXNELENBQUMsQ0FBQztLQUNyRTtJQUVELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQ2pCLE1BQU0sS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUM7S0FDeEQ7QUFDSCxDQUFDLENBQUM7QUFFRjs7Ozs7O0dBTUc7QUFDSCxNQUFhLHFCQUFzQixTQUFRLHNCQUFTO0lBU2xELFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBaUM7UUFDekUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUVqQixRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEIsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksMkJBQW1CLENBQ2hELElBQUksRUFDSix1QkFBdUIsRUFDdkI7WUFDRSxZQUFZLEVBQUU7Z0JBQ1osT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPLElBQUksU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPO2dCQUMxRCxNQUFNLEVBQUUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNO2dCQUNoRCxNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Z0JBQ3BCLG1CQUFtQixFQUFFLEtBQUssQ0FBQyxtQkFBbUI7YUFDL0M7WUFDRCxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO1NBQzNCLENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBM0JILHNEQTRCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDIzIE1vbmdvREIgSW5jXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbi8vIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbi8vIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuLy9cbi8vICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4vL1xuLy8gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuLy8gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuLy8gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4vLyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4vLyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IENmbkVuY3J5cHRpb25BdFJlc3QgfSBmcm9tIFwiLi4vLi4vaW5kZXhcIjtcblxuY29uc3QgVVNfRUFTVF8xID0gXCJVU19FQVNUXzFcIjtcblxuZXhwb3J0IGludGVyZmFjZSBBdGxhc0VuY3J5cHRpb25BdFJlc3RQcm9wcyB7XG4gIC8qKlxuICAgKiBJRCBvZiBhbiBBV1MgSUFNIHJvbGUgYXV0aG9yaXplZCB0byBtYW5hZ2UgYW4gQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkuXG4gICAqXG4gICAqIEBzY2hlbWEgQXdzS21zI1JvbGVJRFxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZUlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkgdXNlZCB0byBlbmNyeXB0IGFuZCBkZWNyeXB0IHRoZSBNb25nb0RCIG1hc3RlciBrZXlzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNDdXN0b21lck1hc3RlcktleUlEXG4gICAqL1xuICByZWFkb25seSBjdXN0b21lck1hc3RlcktleUlkOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgd2hldGhlciBFbmNyeXB0aW9uIGF0IFJlc3QgaXMgZW5hYmxlZCBmb3IgYW4gQXRsYXMgcHJvamVjdC4gVG8gZGlzYWJsZSBFbmNyeXB0aW9uIGF0IFJlc3QsIHBhc3Mgb25seSB0aGlzIHBhcmFtZXRlciB3aXRoIGEgdmFsdWUgb2YgZmFsc2UuIFdoZW4geW91IGRpc2FibGUgRW5jcnlwdGlvbiBhdCBSZXN0LCBBdGxhcyBhbHNvIHJlbW92ZXMgdGhlIGNvbmZpZ3VyYXRpb24gZGV0YWlscy5cbiAgICogRGVmYXVsdCBWYWx1ZTogdHJ1ZVxuICAgKiBAc2NoZW1hIEF3c0ttcyNFbmFibGVkXG4gICAqL1xuICByZWFkb25seSBlbmFibGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRoZSBBV1MgcmVnaW9uIGluIHdoaWNoIHRoZSBBV1MgY3VzdG9tZXIgbWFzdGVyIGtleSBleGlzdHMuXG4gICAqIERlZmF1bHQgVmFsdWU6IFVTX0VBU1RfMVxuICAgKiBAc2NoZW1hIEF3c0ttcyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIEF0bGFzIHByb2plY3QgdG8gd2hpY2ggdGhlIHVzZXIgYmVsb25ncy5cbiAgICpcbiAgICogQHNjaGVtYSBDZm5FbmNyeXB0aW9uQXRSZXN0UHJvcHMjUHJvamVjdElkXG4gICAqL1xuICByZWFkb25seSBwcm9qZWN0SWQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHByb2ZpbGUgaXMgZGVmaW5lZCBpbiBBV1MgU2VjcmV0IG1hbmFnZXIuXG4gICAqIFNlZSBbU2VjcmV0IE1hbmFnZXIgUHJvZmlsZSBzZXR1cF0oLi4vLi4vLi4vZXhhbXBsZXMvcHJvZmlsZS1zZWNyZXQueWFtbCkuXG4gICAqXG4gICAqIEBzY2hlbWEgQ2ZuRW5jcnlwdGlvbkF0UmVzdFByb3BzI1Byb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG59XG5cbi8qKlxuICogSXQgdGhyb3dzIGFuIGVycm9yIGlmIGFueSBvZiB0aGUgcmVxdWlyZWQgcHJvcGVydGllcyBhcmUgbm90IGRlZmluZWRcbiAqIEBwYXJhbSB7QXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHN9IHByb3BzIC0gQXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHNcbiAqL1xuY29uc3QgdmFsaWRhdGUgPSAocHJvcHM6IEF0bGFzRW5jcnlwdGlvbkF0UmVzdFByb3BzKSA9PiB7XG4gIGlmICghcHJvcHMucHJvamVjdElkKSB7XG4gICAgdGhyb3cgRXJyb3IoXCJWYWxpZGF0aW9uIGVycm9yOiBwcm9qZWN0SWQgaXMgbm90IGRlZmluZWRcIik7XG4gIH1cblxuICBpZiAoIXByb3BzLmN1c3RvbWVyTWFzdGVyS2V5SWQpIHtcbiAgICB0aHJvdyBFcnJvcihcIlZhbGlkYXRpb24gZXJyb3I6IGN1c3RvbWVyTWFzdGVyS2V5SWQgaXMgbm90IGRlZmluZWRcIik7XG4gIH1cblxuICBpZiAoIXByb3BzLnJvbGVJZCkge1xuICAgIHRocm93IEVycm9yKFwiVmFsaWRhdGlvbiBlcnJvcjogcm9sZUlkIGlzIG5vdCBkZWZpbmVkXCIpO1xuICB9XG59O1xuXG4vKipcbiAqXG4gKlxuICogQGV4cG9ydFxuICogQGNsYXNzIEF0bGFzRW5jcnlwdGlvbkF0UmVzdFxuICogQGV4dGVuZHMge0NvbnN0cnVjdH1cbiAqL1xuZXhwb3J0IGNsYXNzIEF0bGFzRW5jcnlwdGlvbkF0UmVzdCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKlxuICAgKlxuICAgKiBAdHlwZSB7Q2ZuRW5jcnlwdGlvbkF0UmVzdH1cbiAgICogQG1lbWJlcm9mIEF0bGFzRW5jcnlwdGlvbkF0UmVzdFxuICAgKi9cbiAgcmVhZG9ubHkgY2ZuRW5jcnlwdGlvbkF0UmVzdDogQ2ZuRW5jcnlwdGlvbkF0UmVzdDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXRsYXNFbmNyeXB0aW9uQXRSZXN0UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdmFsaWRhdGUocHJvcHMpO1xuICAgIHRoaXMuY2ZuRW5jcnlwdGlvbkF0UmVzdCA9IG5ldyBDZm5FbmNyeXB0aW9uQXRSZXN0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiQXRsYXNFbmNyeXB0aW9uQXRSZXN0XCIsXG4gICAgICB7XG4gICAgICAgIGF3c0ttc0NvbmZpZzoge1xuICAgICAgICAgIGVuYWJsZWQ6IHByb3BzLmVuYWJsZWQgPT0gdW5kZWZpbmVkID8gdHJ1ZSA6IHByb3BzLmVuYWJsZWQsXG4gICAgICAgICAgcmVnaW9uOiAhcHJvcHMucmVnaW9uID8gVVNfRUFTVF8xIDogcHJvcHMucmVnaW9uLFxuICAgICAgICAgIHJvbGVJZDogcHJvcHMucm9sZUlkLFxuICAgICAgICAgIGN1c3RvbWVyTWFzdGVyS2V5SWQ6IHByb3BzLmN1c3RvbWVyTWFzdGVyS2V5SWQsXG4gICAgICAgIH0sXG4gICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICAgIHByb2plY3RJZDogcHJvcHMucHJvamVjdElkLFxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -50,3 +50,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
DatadogIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.DatadogIntegration", version: "3.7.2" };
DatadogIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.DatadogIntegration", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YWRvZ0ludGVncmF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2wyLXJlc291cmNlcy90aGlyZC1wYXJ0eS1pbnRlZ3JhdGlvbi9kYXRhZG9nSW50ZWdyYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2QkFBNkI7QUFDN0IsRUFBRTtBQUNGLGtFQUFrRTtBQUNsRSxtRUFBbUU7QUFDbkUsMENBQTBDO0FBQzFDLEVBQUU7QUFDRixrREFBa0Q7QUFDbEQsRUFBRTtBQUNGLHNFQUFzRTtBQUN0RSxvRUFBb0U7QUFDcEUsMkVBQTJFO0FBQzNFLHNFQUFzRTtBQUN0RSxpQ0FBaUM7QUFFakMsMkNBQXVDO0FBRXZDLCtCQUErQjtBQUMvQix1Q0FHcUI7QUFFckIsSUFBWSxhQUtYO0FBTEQsV0FBWSxhQUFhO0lBQ3ZCLDBCQUFTLENBQUE7SUFDVCwwQkFBUyxDQUFBO0lBQ1QsNEJBQVcsQ0FBQTtJQUNYLDRCQUFXLENBQUE7QUFDYixDQUFDLEVBTFcsYUFBYSxHQUFiLHFCQUFhLEtBQWIscUJBQWEsUUFLeEI7QUFjRCxNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQThCLEVBQUUsRUFBRTtJQUNsRCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO1FBQ2pCLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0tBQ2pEO0lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUU7UUFDakIsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7S0FDakQ7QUFDSCxDQUFDLENBQUM7QUFFRixNQUFhLGtCQUFtQixTQUFRLHNCQUFTO0lBRy9DLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBOEI7UUFDdEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEIsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksZ0NBQXdCLENBQzFELElBQUksRUFDSixxQkFBcUIsRUFDckI7WUFDRSxHQUFHLEtBQUs7WUFDUixJQUFJLEVBQUUseUNBQWlDLENBQUMsT0FBTztTQUNoRCxDQUNGLENBQUM7SUFDSixDQUFDOztBQWZILGdEQWdCQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDIzIE1vbmdvREIgSW5jXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbi8vIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbi8vIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuLy9cbi8vICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4vL1xuLy8gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuLy8gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuLy8gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4vLyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4vLyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCB7IFRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzIH0gZnJvbSBcIi4vdGhpcmRQYXJ0eUludGVncmF0aW9uQmFzZVwiO1xuaW1wb3J0ICogYXMgdXRpbCBmcm9tIFwiLi91dGlsXCI7XG5pbXBvcnQge1xuICBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb24sXG4gIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzVHlwZSxcbn0gZnJvbSBcIi4uLy4uL2luZGV4XCI7XG5cbmV4cG9ydCBlbnVtIERhdGFkb2dSZWdpb24ge1xuICBVUyA9IFwiVVNcIixcbiAgRVUgPSBcIkVVXCIsXG4gIFVTMyA9IFwiVVMzXCIsXG4gIFVTNSA9IFwiVVM1XCIsXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRGF0YWRvZ0ludGVncmF0aW9uUHJvcHMgZXh0ZW5kcyBUaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBLZXkgdGhhdCBhbGxvd3MgTW9uZ29EQiBDbG91ZCB0byBhY2Nlc3MgeW91ciBEYXRhZG9nIGFjY291bnQuXG4gICAqL1xuICByZWFkb25seSBhcGlLZXk6IHN0cmluZztcblxuICAvKipcbiAgICogVHdvLWxldHRlciBjb2RlIHRoYXQgaW5kaWNhdGVzIHdoaWNoIHJlZ2lvbmFsIFVSTCBNb25nb0RCIHVzZXMgdG8gYWNjZXNzIHRoZSBEYXRhZG9nIEFQSS5cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbjogRGF0YWRvZ1JlZ2lvbjtcbn1cblxuY29uc3QgdmFsaWRhdGUgPSAocHJvcHM6IERhdGFkb2dJbnRlZ3JhdGlvblByb3BzKSA9PiB7XG4gIHV0aWwudmFsaWRhdGUocHJvcHMpO1xuICBpZiAoIXByb3BzLmFwaUtleSkge1xuICAgIHRocm93IEVycm9yKHV0aWwuZ2V0UHJvcFVuZGVmaW5lZE1zZyhcImFwaUtleVwiKSk7XG4gIH1cbiAgaWYgKCFwcm9wcy5yZWdpb24pIHtcbiAgICB0aHJvdyBFcnJvcih1dGlsLmdldFByb3BVbmRlZmluZWRNc2coXCJyZWdpb25cIikpO1xuICB9XG59O1xuXG5leHBvcnQgY2xhc3MgRGF0YWRvZ0ludGVncmF0aW9uIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgY2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uOiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IERhdGFkb2dJbnRlZ3JhdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICB2YWxpZGF0ZShwcm9wcyk7XG5cbiAgICB0aGlzLmNmblRoaXJkUGFydHlJbnRlZ3JhdGlvbiA9IG5ldyBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb24oXG4gICAgICB0aGlzLFxuICAgICAgXCJEQVRBRE9HX0ludGVncmF0aW9uXCIsXG4gICAgICB7XG4gICAgICAgIC4uLnByb3BzLFxuICAgICAgICB0eXBlOiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1R5cGUuREFUQURPRyxcbiAgICAgIH1cbiAgICApO1xuICB9XG59XG4iXX0=

@@ -40,3 +40,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
MicrosoftTeamsIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.MicrosoftTeamsIntegration", version: "3.7.2" };
MicrosoftTeamsIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.MicrosoftTeamsIntegration", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWljcm9zb2Z0VGVhbXNJbnRlZ3JhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9sMi1yZXNvdXJjZXMvdGhpcmQtcGFydHktaW50ZWdyYXRpb24vbWljcm9zb2Z0VGVhbXNJbnRlZ3JhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3QixFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLG1FQUFtRTtBQUNuRSwwQ0FBMEM7QUFDMUMsRUFBRTtBQUNGLGtEQUFrRDtBQUNsRCxFQUFFO0FBQ0Ysc0VBQXNFO0FBQ3RFLG9FQUFvRTtBQUNwRSwyRUFBMkU7QUFDM0Usc0VBQXNFO0FBQ3RFLGlDQUFpQztBQUVqQywyQ0FBdUM7QUFFdkMsK0JBQStCO0FBQy9CLHVDQUdxQjtBQVVyQixNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQXFDLEVBQUUsRUFBRTtJQUN6RCxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsd0JBQXdCLEVBQUU7UUFDbkMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLDBCQUEwQixDQUFDLENBQUMsQ0FBQztLQUNuRTtBQUNILENBQUMsQ0FBQztBQUVGLE1BQWEseUJBQTBCLFNBQVEsc0JBQVM7SUFHdEQsWUFDRSxLQUFnQixFQUNoQixFQUFVLEVBQ1YsS0FBcUM7UUFFckMsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqQixRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFaEIsSUFBSSxDQUFDLHdCQUF3QixHQUFHLElBQUksZ0NBQXdCLENBQzFELElBQUksRUFDSiw2QkFBNkIsRUFDN0I7WUFDRSxHQUFHLEtBQUs7WUFDUixJQUFJLEVBQUUseUNBQWlDLENBQUMsZUFBZTtTQUN4RCxDQUNGLENBQUM7SUFDSixDQUFDOztBQW5CSCw4REFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyMyBNb25nb0RCIEluY1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4vLyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4vLyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbi8vXG4vLyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuLy9cbi8vIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbi8vIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbi8vIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuLy8gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuLy8gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgeyBUaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyB9IGZyb20gXCIuL3RoaXJkUGFydHlJbnRlZ3JhdGlvbkJhc2VcIjtcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSBcIi4vdXRpbFwiO1xuaW1wb3J0IHtcbiAgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uLFxuICBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1R5cGUsXG59IGZyb20gXCIuLi8uLi9pbmRleFwiO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1pY3Jvc29mdFRlYW1zSW50ZWdyYXRpb25Qcm9wc1xuICBleHRlbmRzIFRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzIHtcbiAgLyoqXG4gICAqIEVuZHBvaW50IHdlYiBhZGRyZXNzIG9mIHRoZSBNaWNyb3NvZnQgVGVhbXMgd2ViaG9vayB0byB3aGljaCBNb25nb0RCIENsb3VkIHNlbmRzIG5vdGlmaWNhdGlvbnMuXG4gICAqL1xuICByZWFkb25seSBtaWNyb3NvZnRUZWFtc1dlYmhvb2tVcmw6IHN0cmluZztcbn1cblxuY29uc3QgdmFsaWRhdGUgPSAocHJvcHM6IE1pY3Jvc29mdFRlYW1zSW50ZWdyYXRpb25Qcm9wcykgPT4ge1xuICB1dGlsLnZhbGlkYXRlKHByb3BzKTtcbiAgaWYgKCFwcm9wcy5taWNyb3NvZnRUZWFtc1dlYmhvb2tVcmwpIHtcbiAgICB0aHJvdyBFcnJvcih1dGlsLmdldFByb3BVbmRlZmluZWRNc2coXCJtaWNyb3NvZnRUZWFtc1dlYmhvb2tVcmxcIikpO1xuICB9XG59O1xuXG5leHBvcnQgY2xhc3MgTWljcm9zb2Z0VGVhbXNJbnRlZ3JhdGlvbiBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGNmblRoaXJkUGFydHlJbnRlZ3JhdGlvbjogQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogTWljcm9zb2Z0VGVhbXNJbnRlZ3JhdGlvblByb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgdmFsaWRhdGUocHJvcHMpO1xuXG4gICAgdGhpcy5jZm5UaGlyZFBhcnR5SW50ZWdyYXRpb24gPSBuZXcgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uKFxuICAgICAgdGhpcyxcbiAgICAgIFwiTUlDUk9TT0ZUX1RFQU1TX0ludGVncmF0aW9uXCIsXG4gICAgICB7XG4gICAgICAgIC4uLnByb3BzLFxuICAgICAgICB0eXBlOiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wc1R5cGUuTUlDUk9TT0ZUX1RFQU1TLFxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -48,3 +48,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
PagerDutyIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.PagerDutyIntegration", version: "3.7.2" };
PagerDutyIntegration[_a] = { fqn: "awscdk-resources-mongodbatlas.PagerDutyIntegration", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZXJEdXR5SW50ZWdyYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDItcmVzb3VyY2VzL3RoaXJkLXBhcnR5LWludGVncmF0aW9uL3BhZ2VyRHV0eUludGVncmF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkJBQTZCO0FBQzdCLEVBQUU7QUFDRixrRUFBa0U7QUFDbEUsbUVBQW1FO0FBQ25FLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysa0RBQWtEO0FBQ2xELEVBQUU7QUFDRixzRUFBc0U7QUFDdEUsb0VBQW9FO0FBQ3BFLDJFQUEyRTtBQUMzRSxzRUFBc0U7QUFDdEUsaUNBQWlDO0FBRWpDLDJDQUF1QztBQUV2QywrQkFBK0I7QUFDL0IsdUNBR3FCO0FBRXJCLElBQVksZUFHWDtBQUhELFdBQVksZUFBZTtJQUN6Qiw0QkFBUyxDQUFBO0lBQ1QsNEJBQVMsQ0FBQTtBQUNYLENBQUMsRUFIVyxlQUFlLEdBQWYsdUJBQWUsS0FBZix1QkFBZSxRQUcxQjtBQWNELE1BQU0sUUFBUSxHQUFHLENBQUMsS0FBZ0MsRUFBRSxFQUFFO0lBQ3BELElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLEVBQUU7UUFDckIsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7S0FDckQ7SUFDRCxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRTtRQUNqQixNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztLQUNqRDtBQUNILENBQUMsQ0FBQztBQUVGLE1BQWEsb0JBQXFCLFNBQVEsc0JBQVM7SUFHakQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQztRQUN4RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pCLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVoQixJQUFJLENBQUMsd0JBQXdCLEdBQUcsSUFBSSxnQ0FBd0IsQ0FDMUQsSUFBSSxFQUNKLHdCQUF3QixFQUN4QjtZQUNFLEdBQUcsS0FBSztZQUNSLElBQUksRUFBRSx5Q0FBaUMsQ0FBQyxVQUFVO1NBQ25ELENBQ0YsQ0FBQztJQUNKLENBQUM7O0FBZkgsb0RBZ0JDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjMgTW9uZ29EQiBJbmNcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuLy8geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuLy8gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4vL1xuLy8gICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbi8vXG4vLyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4vLyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4vLyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbi8vIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbi8vIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0IHsgVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHMgfSBmcm9tIFwiLi90aGlyZFBhcnR5SW50ZWdyYXRpb25CYXNlXCI7XG5pbXBvcnQgKiBhcyB1dGlsIGZyb20gXCIuL3V0aWxcIjtcbmltcG9ydCB7XG4gIENmblRoaXJkUGFydHlJbnRlZ3JhdGlvbixcbiAgQ2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uUHJvcHNUeXBlLFxufSBmcm9tIFwiLi4vLi4vaW5kZXhcIjtcblxuZXhwb3J0IGVudW0gUGFnZXJEdXR5UmVnaW9uIHtcbiAgVVMgPSBcIlVTXCIsXG4gIEVVID0gXCJFVVwiLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFBhZ2VyRHV0eUludGVncmF0aW9uUHJvcHMgZXh0ZW5kcyBUaGlyZFBhcnR5SW50ZWdyYXRpb25Qcm9wcyB7XG4gIC8qKlxuICAgKiBTZXJ2aWNlIGtleSBhc3NvY2lhdGVkIHdpdGggeW91ciBQYWdlckR1dHkgYWNjb3VudC5cbiAgICovXG4gIHJlYWRvbmx5IHNlcnZpY2VLZXk6IHN0cmluZztcblxuICAvKipcbiAgICogUGFnZXJEdXR5IHJlZ2lvbiB0aGF0IGluZGljYXRlcyB0aGUgQVBJIFVuaWZvcm0gUmVzb3VyY2UgTG9jYXRvciAoVVJMKSB0byB1c2UuXG4gICAqL1xuICByZWFkb25seSByZWdpb246IFBhZ2VyRHV0eVJlZ2lvbjtcbn1cblxuY29uc3QgdmFsaWRhdGUgPSAocHJvcHM6IFBhZ2VyRHV0eUludGVncmF0aW9uUHJvcHMpID0+IHtcbiAgdXRpbC52YWxpZGF0ZShwcm9wcyk7XG4gIGlmICghcHJvcHMuc2VydmljZUtleSkge1xuICAgIHRocm93IEVycm9yKHV0aWwuZ2V0UHJvcFVuZGVmaW5lZE1zZyhcInNlcnZpY2VLZXlcIikpO1xuICB9XG4gIGlmICghcHJvcHMucmVnaW9uKSB7XG4gICAgdGhyb3cgRXJyb3IodXRpbC5nZXRQcm9wVW5kZWZpbmVkTXNnKFwicmVnaW9uXCIpKTtcbiAgfVxufTtcblxuZXhwb3J0IGNsYXNzIFBhZ2VyRHV0eUludGVncmF0aW9uIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgY2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uOiBDZm5UaGlyZFBhcnR5SW50ZWdyYXRpb247XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IFBhZ2VyRHV0eUludGVncmF0aW9uUHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuICAgIHZhbGlkYXRlKHByb3BzKTtcblxuICAgIHRoaXMuY2ZuVGhpcmRQYXJ0eUludGVncmF0aW9uID0gbmV3IENmblRoaXJkUGFydHlJbnRlZ3JhdGlvbihcbiAgICAgIHRoaXMsXG4gICAgICBcIlBBR0VSX0RVVFlfSW50ZWdyYXRpb25cIixcbiAgICAgIHtcbiAgICAgICAgLi4ucHJvcHMsXG4gICAgICAgIHR5cGU6IENmblRoaXJkUGFydHlJbnRlZ3JhdGlvblByb3BzVHlwZS5QQUdFUl9EVVRZLFxuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==

@@ -73,3 +73,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
AtlasBasicPrivateEndpoint[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasBasicPrivateEndpoint", version: "3.7.2" };
AtlasBasicPrivateEndpoint[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasBasicPrivateEndpoint", version: "3.8.0" };
const validate = (props) => {

@@ -76,0 +76,0 @@ if (!props.atlasBasicProps.projectProps.orgId) {

@@ -94,3 +94,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
AtlasBasic[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasBasic", version: "3.7.2" };
AtlasBasic[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasBasic", version: "3.8.0" };
function randomNumber() {

@@ -97,0 +97,0 @@ const min = 10;

@@ -18,3 +18,3 @@ "use strict";

_a = JSII_RTTI_SYMBOL_1;
MongoAtlasBootstrapProps[_a] = { fqn: "awscdk-resources-mongodbatlas.MongoAtlasBootstrapProps", version: "3.7.2" };
MongoAtlasBootstrapProps[_a] = { fqn: "awscdk-resources-mongodbatlas.MongoAtlasBootstrapProps", version: "3.8.0" };
/**

@@ -79,3 +79,3 @@ * Generate the CFN extension execution role.

_b = JSII_RTTI_SYMBOL_1;
MongoAtlasBootstrap[_b] = { fqn: "awscdk-resources-mongodbatlas.MongoAtlasBootstrap", version: "3.7.2" };
MongoAtlasBootstrap[_b] = { fqn: "awscdk-resources-mongodbatlas.MongoAtlasBootstrap", version: "3.8.0" };
class MongoSecretProfile extends constructs_1.Construct {

@@ -99,3 +99,3 @@ constructor(scope, id, profileName) {

_c = JSII_RTTI_SYMBOL_1;
MongoSecretProfile[_c] = { fqn: "awscdk-resources-mongodbatlas.MongoSecretProfile", version: "3.7.2" };
MongoSecretProfile[_c] = { fqn: "awscdk-resources-mongodbatlas.MongoSecretProfile", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDMtcmVzb3VyY2VzL2F0bGFzLWJvb3RzdHJhcC9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZDQU9xQjtBQUNyQiwyQ0FBdUM7QUFFMUIsUUFBQSxtQkFBbUIsR0FBYTtJQUMzQyxTQUFTO0lBQ1QsU0FBUztJQUNULGNBQWM7SUFDZCxxQkFBcUI7Q0FDdEIsQ0FBQztBQUVGLE1BQWEsd0JBQXdCOztBQUFyQyw0REFvQkM7OztBQUVEOzs7R0FHRztBQUNILE1BQWEsbUJBQW9CLFNBQVEsc0JBQVM7SUFFaEQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFnQztRQUN4RSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxxQkFBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsOEJBQThCLEVBQUU7WUFDN0Qsa0JBQWtCLEVBQUUsc0JBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDO1lBQzFDLFNBQVMsRUFBRSxJQUFJLHFCQUFHLENBQUMsa0JBQWtCLENBQ25DLElBQUkscUJBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyw4QkFBOEIsQ0FBQyxFQUN4RCxJQUFJLHFCQUFHLENBQUMsZ0JBQWdCLENBQUMsd0NBQXdDLENBQUMsRUFDbEUsSUFBSSxxQkFBRyxDQUFDLGdCQUFnQixDQUFDLHNCQUFzQixDQUFDLENBQ2pEO1lBQ0QsSUFBSSxFQUFFLEdBQUc7WUFDVCxRQUFRLEVBQUUsS0FBSyxFQUFFLFFBQVE7U0FDMUIsQ0FBQyxDQUFDO1FBRUgsTUFBTSxlQUFlLEdBQUcsSUFBSSxxQkFBRyxDQUFDLGVBQWUsQ0FBQztZQUM5QyxNQUFNLEVBQUUscUJBQUcsQ0FBQyxNQUFNLENBQUMsS0FBSztZQUN4QixPQUFPLEVBQUU7Z0JBQ1AsK0JBQStCO2dCQUMvQiwrQkFBK0I7Z0JBQy9CLHVCQUF1QjtnQkFDdkIsd0JBQXdCO2dCQUN4QiwrQkFBK0I7Z0JBQy9CLCtCQUErQjtnQkFDL0IsNEJBQTRCO2dCQUM1Qix5Q0FBeUM7Z0JBQ3pDLDhCQUE4QjtnQkFDOUIsK0JBQStCO2dCQUMvQixzQkFBc0I7Z0JBQ3RCLGdCQUFnQjtnQkFDaEIsZ0JBQWdCO2dCQUNoQixhQUFhO2dCQUNiLG1CQUFtQjtnQkFDbkIsOEJBQThCO2dCQUM5QixzQkFBc0I7Z0JBQ3RCLG1CQUFtQjthQUNwQjtZQUNELFNBQVMsRUFBRSxDQUFDLEdBQUcsQ0FBQztTQUNqQixDQUFDLENBQUM7UUFFSCxNQUFNLGNBQWMsR0FBRyxJQUFJLHFCQUFHLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSx5QkFBeUIsRUFBRTtZQUNyRSxVQUFVLEVBQUUsbUJBQW1CO1lBQy9CLFVBQVUsRUFBRSxDQUFDLGVBQWUsQ0FBQztTQUM5QixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRTdDLElBQUksS0FBSyxFQUFFLGFBQWEsRUFBRTtZQUN4QixJQUFJLGtCQUFrQixDQUFDLElBQUksRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLENBQUM7U0FDMUU7UUFFRCxJQUFJLEtBQUssRUFBRSxlQUFlLEVBQUU7WUFDMUIsS0FBSyxJQUFJLElBQUksSUFBSSxLQUFLLEVBQUUsZUFBZSxFQUFFO2dCQUN2QyxJQUFJLGdDQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEdBQUcsSUFBSSxnQkFBZ0IsRUFBRTtvQkFDbEUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO29CQUNuQyxJQUFJLEVBQUUsVUFBVTtvQkFDaEIsUUFBUSxFQUFFLG1CQUFtQixJQUFJLEVBQUU7b0JBQ25DLFdBQVcsRUFBRSwwQ0FBMEM7aUJBQ3hELENBQUMsQ0FBQzthQUNKO1NBQ0Y7SUFDSCxDQUFDOztBQTlESCxrREErREM7OztBQUVELE1BQWEsa0JBQW1CLFNBQVEsc0JBQVM7SUFDL0MsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxXQUFtQjtRQUMzRCxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRWpCLGtCQUFrQjtRQUNsQixNQUFNLE1BQU0sR0FBRyxJQUFJLGdDQUFjLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUU7WUFDMUQsVUFBVSxFQUFFLHFCQUFxQixXQUFXLEVBQUU7WUFDOUMsV0FBVyxFQUFFLHdEQUF3RDtZQUNyRSxpQkFBaUIsRUFBRSx5QkFBVyxDQUFDLGVBQWUsQ0FDNUMseUVBQXlFLENBQzFFO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSx1QkFBUyxDQUFDLElBQUksRUFBRSxZQUFZLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDaEUsSUFBSSx1QkFBUyxDQUFDLElBQUksRUFBRSxxQkFBcUIsRUFBRTtZQUN6QyxLQUFLLEVBQ0gsZ0RBQWdELE1BQU0sQ0FBQyxVQUFVLEVBQUU7Z0JBQ25FLHdIQUF3SDtTQUMzSCxDQUFDLENBQUM7SUFDTCxDQUFDOztBQW5CSCxnREFvQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDZm5PdXRwdXQsXG4gIGF3c19pYW0gYXMgaWFtLFxuICBhd3Nfc2VjcmV0c21hbmFnZXIgYXMgc2VjcmV0c21hbmFnZXIsXG4gIGF3c19jbG91ZGZvcm1hdGlvbiBhcyBjbG91ZGZvcm1hdGlvbixcbiAgU2VjcmV0VmFsdWUsXG4gIER1cmF0aW9uLFxufSBmcm9tIFwiYXdzLWNkay1saWJcIjtcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5cbmV4cG9ydCBjb25zdCBBdGxhc0Jhc2ljUmVzb3VyY2VzOiBzdHJpbmdbXSA9IFtcbiAgXCJDbHVzdGVyXCIsXG4gIFwiUHJvamVjdFwiLFxuICBcIkRhdGFiYXNlVXNlclwiLFxuICBcIlByb2plY3RJcEFjY2Vzc0xpc3RcIixcbl07XG5cbmV4cG9ydCBjbGFzcyBNb25nb0F0bGFzQm9vdHN0cmFwUHJvcHMge1xuICAvKipcbiAgICogVGhlIElBTSByb2xlIG5hbWUgZm9yIENsb3VkRm9ybWF0aW9uIEV4dGVuc2lvbiBFeGVjdXRpb24uXG4gICAqIEBzZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FXU0Nsb3VkRm9ybWF0aW9uL2xhdGVzdC9Vc2VyR3VpZGUvcmVnaXN0cnktcHVibGljLmh0bWxcbiAgICogQGRlZmF1bHQgYXV0byBnZW5lcmF0IHRoZSBuYW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgcm9sZU5hbWUhOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBUaGUgc2VjcmV0IHByb2ZpbGUgbmFtZSBmb3IgTW9uZ29EQiBBdGxhcy5cbiAgICogQGRlZmF1bHQgZ2VuZXJhdGUgYSBkdW1teSBzZWNyZXQuXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL21vbmdvZGIvbW9uZ29kYmF0bGFzLWNsb3VkZm9ybWF0aW9uLXJlc291cmNlcy90cmVlL21hc3RlciMyLWNvbmZpZ3VyZS15b3VyLXByb2ZpbGVcbiAgICovXG4gIHJlYWRvbmx5IHNlY3JldFByb2ZpbGUhOiBzdHJpbmc7XG4gIC8qKlxuICAgKiBMaXN0IG9mIHN0cmluZ3MgcmVwcmVzZW50aW5nIG1vbmdvREIgYXRsYXMgdHlwZXMgdG8gYWN0aXZhdGUuXG4gICAqIHRoZSBleHBvcnRlZCBBdGxhc0Jhc2ljUmVzb3VyY2VzIGNhbiBiZSB1c2VkIGZvciBBdGxhc0Jhc2ljIHJlc291cmNlc1xuICAgKiBpZiBub3QgcHJvdmlkZWQgbm9uIHJlc291cmNlcyB3aWxsIGJlIGFjdGl2YXRlZFxuICAgKiBAZXhhbXBsZSB0eXBlc1RvQWN0aXZhdGU9W1wiQ2x1c3RlclwiLFwiUHJvamVjdFwiXSB0aGlzIHdpbGwgYWN0aWF0ZSBNb25nb0RCOjpBdGxhczo6UHJvamVjdCAmJiBNb25nb0RCOjpBdGxhczo6Q2x1c3RlclxuICAgKi9cbiAgcmVhZG9ubHkgdHlwZXNUb0FjdGl2YXRlPzogc3RyaW5nW107XG59XG5cbi8qKlxuICogR2VuZXJhdGUgdGhlIENGTiBleHRlbnNpb24gZXhlY3V0aW9uIHJvbGUuXG4gKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL3JlZ2lzdHJ5LXB1YmxpYy5odG1sXG4gKi9cbmV4cG9ydCBjbGFzcyBNb25nb0F0bGFzQm9vdHN0cmFwIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgcmVhZG9ubHkgcm9sZTogaWFtLklSb2xlO1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wcz86IE1vbmdvQXRsYXNCb290c3RyYXBQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLnJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgXCJtb25nb0RCQXRsYXNDRk5FeGVjdXRpb25Sb2xlXCIsIHtcbiAgICAgIG1heFNlc3Npb25EdXJhdGlvbjogRHVyYXRpb24uc2Vjb25kcyg4NDAwKSxcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5Db21wb3NpdGVQcmluY2lwYWwoXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcImNsb3VkZm9ybWF0aW9uLmFtYXpvbmF3cy5jb21cIiksXG4gICAgICAgIG5ldyBpYW0uU2VydmljZVByaW5jaXBhbChcInJlc291cmNlcy5jbG91ZGZvcm1hdGlvbi5hbWF6b25hd3MuY29tXCIpLFxuICAgICAgICBuZXcgaWFtLlNlcnZpY2VQcmluY2lwYWwoXCJsYW1iZGEuYW1hem9uYXdzLmNvbVwiKVxuICAgICAgKSxcbiAgICAgIHBhdGg6IFwiL1wiLFxuICAgICAgcm9sZU5hbWU6IHByb3BzPy5yb2xlTmFtZSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHBvbGljeVN0YXRlbWVudCA9IG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgXCJzZWNyZXRzbWFuYWdlcjpEZXNjcmliZVNlY3JldFwiLFxuICAgICAgICBcInNlY3JldHNtYW5hZ2VyOkdldFNlY3JldFZhbHVlXCIsXG4gICAgICAgIFwiZWMyOkNyZWF0ZVZwY0VuZHBvaW50XCIsXG4gICAgICAgIFwiZWMyOkRlbGV0ZVZwY0VuZHBvaW50c1wiLFxuICAgICAgICBcImNsb3VkZm9ybWF0aW9uOkNyZWF0ZVJlc291cmNlXCIsXG4gICAgICAgIFwiY2xvdWRmb3JtYXRpb246RGVsZXRlUmVzb3VyY2VcIixcbiAgICAgICAgXCJjbG91ZGZvcm1hdGlvbjpHZXRSZXNvdXJjZVwiLFxuICAgICAgICBcImNsb3VkZm9ybWF0aW9uOkdldFJlc291cmNlUmVxdWVzdFN0YXR1c1wiLFxuICAgICAgICBcImNsb3VkZm9ybWF0aW9uOkxpc3RSZXNvdXJjZXNcIixcbiAgICAgICAgXCJjbG91ZGZvcm1hdGlvbjpVcGRhdGVSZXNvdXJjZVwiLFxuICAgICAgICBcImlhbTpBdHRhY2hSb2xlUG9saWN5XCIsXG4gICAgICAgIFwiaWFtOkNyZWF0ZVJvbGVcIixcbiAgICAgICAgXCJpYW06RGVsZXRlUm9sZVwiLFxuICAgICAgICBcImlhbTpHZXRSb2xlXCIsXG4gICAgICAgIFwiaWFtOkdldFJvbGVQb2xpY3lcIixcbiAgICAgICAgXCJpYW06TGlzdEF0dGFjaGVkUm9sZVBvbGljaWVzXCIsXG4gICAgICAgIFwiaWFtOkxpc3RSb2xlUG9saWNpZXNcIixcbiAgICAgICAgXCJpYW06UHV0Um9sZVBvbGljeVwiLFxuICAgICAgXSxcbiAgICAgIHJlc291cmNlczogW1wiKlwiXSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGF0bGFzQ2RrUG9saWN5ID0gbmV3IGlhbS5Qb2xpY3kodGhpcywgXCJBdGxhc0NES0V4ZWN1dGlvblBvbGljeVwiLCB7XG4gICAgICBwb2xpY3lOYW1lOiBcIkF0bGFzQ0RLRXhlY3V0aW9uXCIsIC8vIEN1c3RvbSBQb2xpY3kgTmFtZVxuICAgICAgc3RhdGVtZW50czogW3BvbGljeVN0YXRlbWVudF0sXG4gICAgfSk7XG5cbiAgICB0aGlzLnJvbGUuYXR0YWNoSW5saW5lUG9saWN5KGF0bGFzQ2RrUG9saWN5KTtcblxuICAgIGlmIChwcm9wcz8uc2VjcmV0UHJvZmlsZSkge1xuICAgICAgbmV3IE1vbmdvU2VjcmV0UHJvZmlsZSh0aGlzLCBcIk1vbmdvU2VjcmV0UHJvZmlsZVwiLCBwcm9wcz8uc2VjcmV0UHJvZmlsZSk7XG4gICAgfVxuXG4gICAgaWYgKHByb3BzPy50eXBlc1RvQWN0aXZhdGUpIHtcbiAgICAgIGZvciAobGV0IHR5cGUgb2YgcHJvcHM/LnR5cGVzVG9BY3RpdmF0ZSkge1xuICAgICAgICBuZXcgY2xvdWRmb3JtYXRpb24uQ2ZuVHlwZUFjdGl2YXRpb24odGhpcywgYCR7dHlwZX1UeXBlQWN0aXZhdGlvbmAsIHtcbiAgICAgICAgICBleGVjdXRpb25Sb2xlQXJuOiB0aGlzLnJvbGUucm9sZUFybixcbiAgICAgICAgICB0eXBlOiBgUkVTT1VSQ0VgLFxuICAgICAgICAgIHR5cGVOYW1lOiBgTW9uZ29EQjo6QXRsYXM6OiR7dHlwZX1gLFxuICAgICAgICAgIHB1Ymxpc2hlcklkOiBcImJiOTg5NDU2Yzc4YzM5OGE4NThmZWYxOGYyY2ExYmZjMWZiYmEwODJcIixcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbmV4cG9ydCBjbGFzcyBNb25nb1NlY3JldFByb2ZpbGUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9maWxlTmFtZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIC8vIGNyZWF0ZSBhIHNlY3JldFxuICAgIGNvbnN0IHNlY3JldCA9IG5ldyBzZWNyZXRzbWFuYWdlci5TZWNyZXQodGhpcywgcHJvZmlsZU5hbWUsIHtcbiAgICAgIHNlY3JldE5hbWU6IGBjZm4vYXRsYXMvcHJvZmlsZS8ke3Byb2ZpbGVOYW1lfWAsXG4gICAgICBkZXNjcmlwdGlvbjogXCJTZWNyZXQgdXNlZCBmb3IgTW9uZ29EQiBBdGxhcyBDbG91ZCBGb3JtYXRpb24gYXBpIGtleXNcIixcbiAgICAgIHNlY3JldFN0cmluZ1ZhbHVlOiBTZWNyZXRWYWx1ZS51bnNhZmVQbGFpblRleHQoXG4gICAgICAgICd7XCJQdWJsaWNLZXlcIjpcInlvdXJBdGxhc1B1YmxpY0tleVwiLCBcIlByaXZhdGVLZXlcIjogXCJ5b3VyQXRsYXNQcml2YXRlS2V5XCJ9J1xuICAgICAgKSxcbiAgICB9KTtcblxuICAgIG5ldyBDZm5PdXRwdXQodGhpcywgXCJTZWNyZXROYW1lXCIsIHsgdmFsdWU6IHNlY3JldC5zZWNyZXROYW1lIH0pO1xuICAgIG5ldyBDZm5PdXRwdXQodGhpcywgXCJVcGRhdGVTZWNyZXRDb21tYW5kXCIsIHtcbiAgICAgIHZhbHVlOlxuICAgICAgICBgYXdzIHNlY3JldHNtYW5hZ2VyIHVwZGF0ZS1zZWNyZXQgLS1zZWNyZXQtaWQgJHtzZWNyZXQuc2VjcmV0TmFtZX1gICtcbiAgICAgICAgJyAtLXNlY3JldC1zdHJpbmcgXCJ7XFxcXFwiUHVibGljS2V5XFxcXFwiOlxcXFxcIiR7TU9OR09fQVRMQVNfUFVCTElDX0tFWX1cXFxcXCIsXFxcXFwiUHJpdmF0ZUtleVxcXFxcIjpcXFxcXCIke01PTkdPX0FUTEFTX1BSSVZBVEVfS0VZfVxcXFxcIn1cIicsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==

@@ -80,3 +80,3 @@ "use strict";

projectId: this.mProject.attrId,
accessList: props.ipAccessListProps?.accessList,
accessList: props.ipAccessListProps?.accessList || [],
...props.ipAccessListProps,

@@ -89,3 +89,3 @@ });

_a = JSII_RTTI_SYMBOL_1;
AtlasServerlessBasic[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasServerlessBasic", version: "3.7.2" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDMtcmVzb3VyY2VzL2F0bGFzLXNlcnZlcmxlc3MtYmFzaWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2QkFBNkI7QUFDN0IsRUFBRTtBQUNGLGtFQUFrRTtBQUNsRSxtRUFBbUU7QUFDbkUsMENBQTBDO0FBQzFDLEVBQUU7QUFDRixrREFBa0Q7QUFDbEQsRUFBRTtBQUNGLHNFQUFzRTtBQUN0RSxvRUFBb0U7QUFDcEUsMkVBQTJFO0FBQzNFLHNFQUFzRTtBQUN0RSxpQ0FBaUM7QUFFakMsMkNBQXVDO0FBQ3ZDLHFDQUFxQztBQUdyQyxnQkFBZ0I7QUFDaEIsTUFBTSxVQUFVLEdBQUc7SUFDakIsTUFBTSxFQUFFLE9BQU87SUFDZixRQUFRLEVBQUUsWUFBWTtJQUN0QixRQUFRLEVBQUUsV0FBVztJQUNyQixLQUFLLEVBQUU7UUFDTDtZQUNFLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFlBQVksRUFBRSxPQUFPO1NBQ3RCO0tBQ0Y7Q0FDRixDQUFDO0FBRUY7Ozs7O0dBS0c7QUFDSCxNQUFhLG9CQUFxQixTQUFRLHNCQUFTO0lBMEJqRDs7Ozs7O09BTUc7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWdDO1FBQ3hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ2hFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixJQUFJLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksV0FBVyxFQUFFLEVBQUU7WUFDaEQsR0FBRyxLQUFLLENBQUMsWUFBWTtTQUN0QixDQUFDLENBQUM7UUFDSCx1REFBdUQ7UUFDdkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FDaEQsSUFBSSxFQUNKLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQ3hCO1lBQ0UsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUMvQixJQUFJLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksY0FBYyxFQUFFLEVBQUU7WUFDdEQsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0I7WUFDeEQsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsdUJBQXVCO1lBQ3RFLEdBQUcsS0FBSyxDQUFDLGVBQWU7U0FDekIsQ0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLDJDQUEyQztRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNwRSxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsWUFBWSxJQUFJLFVBQVUsQ0FBQyxNQUFNO1lBQ2xFLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07WUFDL0IsUUFBUSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsUUFBUSxJQUFJLFVBQVUsQ0FBQyxRQUFRO1lBQzVELEtBQUssRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxVQUFVLENBQUMsS0FBSztZQUNuRCxRQUFRLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxRQUFRLElBQUksVUFBVSxDQUFDLFFBQVE7WUFDNUQsR0FBRyxLQUFLLENBQUMsV0FBVztTQUNyQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsb0RBQW9EO1FBQ3BELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxLQUFLLENBQUMsc0JBQXNCLENBQ2xELElBQUksRUFDSixpQkFBaUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQzVCO1lBQ0UsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07WUFDL0IsVUFBVSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxVQUFVO1lBQy9DLEdBQUcsS0FBSyxDQUFDLGlCQUFpQjtTQUMzQixDQUNGLENBQUM7UUFDRixJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDakQsQ0FBQzs7QUE5RUgsb0RBK0VDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IDIwMjMgTW9uZ29EQiBJbmNcbi8vXG4vLyBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuLy8geW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuLy8gWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4vL1xuLy8gICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbi8vXG4vLyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4vLyBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4vLyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbi8vIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbi8vIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tIFwiY29uc3RydWN0c1wiO1xuaW1wb3J0ICogYXMgYXRsYXMgZnJvbSBcIi4uLy4uL2luZGV4XCI7XG5pbXBvcnQgeyBBdGxhc1NlcnZlcmxlc3NCYXNpY1Byb3BzIH0gZnJvbSBcIi4uL2NvbW1vbi9wcm9wc1wiO1xuXG4vKiogQHR5cGUgeyp9ICovXG5jb25zdCBkYkRlZmF1bHRzID0ge1xuICBkYk5hbWU6IFwiYWRtaW5cIixcbiAgdXNlcm5hbWU6IFwiYXRsYXMtdXNlclwiLFxuICBwYXNzd29yZDogXCJhdGxhcy1wd2RcIixcbiAgcm9sZXM6IFtcbiAgICB7XG4gICAgICByb2xlTmFtZTogXCJhdGxhc0FkbWluXCIsXG4gICAgICBkYXRhYmFzZU5hbWU6IFwiYWRtaW5cIixcbiAgICB9LFxuICBdLFxufTtcblxuLyoqXG4gKiBAZGVzY3JpcHRpb25cbiAqIEBleHBvcnRcbiAqIEBjbGFzcyBBdGxhc0Jhc2ljXG4gKiBAZXh0ZW5kcyB7Q29uc3RydWN0fVxuICovXG5leHBvcnQgY2xhc3MgQXRsYXNTZXJ2ZXJsZXNzQmFzaWMgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEB0eXBlIHtwcm9qZWN0LkNmblByb2plY3R9XG4gICAqIEBtZW1iZXJvZiBBdGxhc1NlcnZlcmxlc3NCYXNpY1xuICAgKi9cbiAgcmVhZG9ubHkgbVByb2plY3Q6IGF0bGFzLkNmblByb2plY3Q7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQHR5cGUge2F0bGFzLkNmbkNsdXN0ZXJ9XG4gICAqIEBtZW1iZXJvZiBBdGxhc1NlcnZlcmxlc3NCYXNpY1xuICAgKi9cbiAgcmVhZG9ubHkgbXNlcnZlcmxlc3M6IGF0bGFzLkNmblNlcnZlcmxlc3NJbnN0YW5jZTtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBAdHlwZSB7dXNlci5DZm5EYXRhYmFzZVVzZXJ9XG4gICAqIEBtZW1iZXJvZiBBdGxhc1NlcnZlcmxlc3NCYXNpY1xuICAgKi9cbiAgcmVhZG9ubHkgbURCVXNlcjogYXRsYXMuQ2ZuRGF0YWJhc2VVc2VyO1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEB0eXBlIHtpcEFjY2Vzc0xpc3QuQ2ZuUHJvamVjdElwQWNjZXNzTGlzdH1cbiAgICogQG1lbWJlcm9mIEF0bGFzU2VydmVybGVzc0Jhc2ljXG4gICAqL1xuICByZWFkb25seSBpcEFjY2Vzc0xpc3Q6IGF0bGFzLkNmblByb2plY3RJcEFjY2Vzc0xpc3Q7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYW4gaW5zdGFuY2Ugb2YgQXRsYXNTZXJ2ZXJsZXNzQmFzaWMuXG4gICAqIEBwYXJhbSB7Q29uc3RydWN0fSBzY29wZVxuICAgKiBAcGFyYW0ge3N0cmluZ30gaWRcbiAgICogQHBhcmFtIHtBdGxhc1NlcnZlcmxlc3NCYXNpY1Byb3BzfSBwcm9wc1xuICAgKiBAbWVtYmVyb2YgQXRsYXNTZXJ2ZXJsZXNzQmFzaWNcbiAgICovXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBBdGxhc1NlcnZlcmxlc3NCYXNpY1Byb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcbiAgICAvL0NyZWF0ZSBhIG5ldyBNb25nb0RCIEF0bGFzIFByb2plY3RcbiAgICB0aGlzLm1Qcm9qZWN0ID0gbmV3IGF0bGFzLkNmblByb2plY3QodGhpcywgXCJwcm9qZWN0LVwiLmNvbmNhdChpZCksIHtcbiAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICBuYW1lOiBwcm9wcy5wcm9qZWN0UHJvcHMubmFtZSA/PyBgcHJvamVjdC0ke2lkfWAsXG4gICAgICAuLi5wcm9wcy5wcm9qZWN0UHJvcHMsXG4gICAgfSk7XG4gICAgLy8gQ3JlYXRlIGEgbmV3IHNlcnZlcmxlc3MgSW5zdGFuY2UgYW5kIHBhc3MgcHJvamVjdCBJRFxuICAgIHRoaXMubXNlcnZlcmxlc3MgPSBuZXcgYXRsYXMuQ2ZuU2VydmVybGVzc0luc3RhbmNlKFxuICAgICAgdGhpcyxcbiAgICAgIFwic2VydmVybGVzcy1cIi5jb25jYXQoaWQpLFxuICAgICAge1xuICAgICAgICBwcm9qZWN0SWQ6IHRoaXMubVByb2plY3QuYXR0cklkLFxuICAgICAgICBuYW1lOiBwcm9wcy5zZXJ2ZXJsZXNzUHJvcHMubmFtZSA/PyBgc2VydmVybGVzcy0ke2lkfWAsXG4gICAgICAgIHByb3ZpZGVyU2V0dGluZ3M6IHByb3BzLnNlcnZlcmxlc3NQcm9wcy5wcm92aWRlclNldHRpbmdzLFxuICAgICAgICBwcm9maWxlOiBwcm9wcy5wcm9maWxlLFxuICAgICAgICBjb250aW51b3VzQmFja3VwRW5hYmxlZDogcHJvcHMuc2VydmVybGVzc1Byb3BzLmNvbnRpbnVvdXNCYWNrdXBFbmFibGVkLFxuICAgICAgICAuLi5wcm9wcy5zZXJ2ZXJsZXNzUHJvcHMsXG4gICAgICB9XG4gICAgKTtcbiAgICB0aGlzLm1zZXJ2ZXJsZXNzLmFkZERlcGVuZGVuY3kodGhpcy5tUHJvamVjdCk7XG4gICAgLy8gQ3JlYXRlIGEgbmV3IE1vbmdvREIgQXRsYXMgRGF0YWJhc2UgVXNlclxuICAgIHRoaXMubURCVXNlciA9IG5ldyBhdGxhcy5DZm5EYXRhYmFzZVVzZXIodGhpcywgXCJkYi11c2VyLVwiLmNvbmNhdChpZCksIHtcbiAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICBkYXRhYmFzZU5hbWU6IHByb3BzLmRiVXNlclByb3BzPy5kYXRhYmFzZU5hbWUgfHwgZGJEZWZhdWx0cy5kYk5hbWUsXG4gICAgICBwcm9qZWN0SWQ6IHRoaXMubVByb2plY3QuYXR0cklkLFxuICAgICAgdXNlcm5hbWU6IHByb3BzLmRiVXNlclByb3BzPy51c2VybmFtZSB8fCBkYkRlZmF1bHRzLnVzZXJuYW1lLFxuICAgICAgcm9sZXM6IHByb3BzLmRiVXNlclByb3BzPy5yb2xlcyB8fCBkYkRlZmF1bHRzLnJvbGVzLFxuICAgICAgcGFzc3dvcmQ6IHByb3BzLmRiVXNlclByb3BzPy5wYXNzd29yZCB8fCBkYkRlZmF1bHRzLnBhc3N3b3JkLFxuICAgICAgLi4ucHJvcHMuZGJVc2VyUHJvcHMsXG4gICAgfSk7XG4gICAgdGhpcy5tREJVc2VyLmFkZERlcGVuZGVuY3kodGhpcy5tUHJvamVjdCk7XG4gICAgLy8gQ3JlYXRlIGEgbmV3IE1vbmdvREIgQXRsYXMgUHJvamVjdCBJUCBBY2Nlc3MgTGlzdFxuICAgIHRoaXMuaXBBY2Nlc3NMaXN0ID0gbmV3IGF0bGFzLkNmblByb2plY3RJcEFjY2Vzc0xpc3QoXG4gICAgICB0aGlzLFxuICAgICAgXCJpcC1hY2Nlc3MtbGlzdC1cIi5jb25jYXQoaWQpLFxuICAgICAge1xuICAgICAgICBwcm9maWxlOiBwcm9wcy5wcm9maWxlLFxuICAgICAgICBwcm9qZWN0SWQ6IHRoaXMubVByb2plY3QuYXR0cklkLFxuICAgICAgICBhY2Nlc3NMaXN0OiBwcm9wcy5pcEFjY2Vzc0xpc3RQcm9wcz8uYWNjZXNzTGlzdCxcbiAgICAgICAgLi4ucHJvcHMuaXBBY2Nlc3NMaXN0UHJvcHMsXG4gICAgICB9XG4gICAgKTtcbiAgICB0aGlzLmlwQWNjZXNzTGlzdC5hZGREZXBlbmRlbmN5KHRoaXMubVByb2plY3QpO1xuICB9XG59XG4iXX0=
AtlasServerlessBasic[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasServerlessBasic", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDMtcmVzb3VyY2VzL2F0bGFzLXNlcnZlcmxlc3MtYmFzaWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSw2QkFBNkI7QUFDN0IsRUFBRTtBQUNGLGtFQUFrRTtBQUNsRSxtRUFBbUU7QUFDbkUsMENBQTBDO0FBQzFDLEVBQUU7QUFDRixrREFBa0Q7QUFDbEQsRUFBRTtBQUNGLHNFQUFzRTtBQUN0RSxvRUFBb0U7QUFDcEUsMkVBQTJFO0FBQzNFLHNFQUFzRTtBQUN0RSxpQ0FBaUM7QUFFakMsMkNBQXVDO0FBQ3ZDLHFDQUFxQztBQUdyQyxnQkFBZ0I7QUFDaEIsTUFBTSxVQUFVLEdBQUc7SUFDakIsTUFBTSxFQUFFLE9BQU87SUFDZixRQUFRLEVBQUUsWUFBWTtJQUN0QixRQUFRLEVBQUUsV0FBVztJQUNyQixLQUFLLEVBQUU7UUFDTDtZQUNFLFFBQVEsRUFBRSxZQUFZO1lBQ3RCLFlBQVksRUFBRSxPQUFPO1NBQ3RCO0tBQ0Y7Q0FDRixDQUFDO0FBRUY7Ozs7O0dBS0c7QUFDSCxNQUFhLG9CQUFxQixTQUFRLHNCQUFTO0lBMEJqRDs7Ozs7O09BTUc7SUFDSCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQWdDO1FBQ3hFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxFQUFFO1lBQ2hFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztZQUN0QixJQUFJLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLElBQUksV0FBVyxFQUFFLEVBQUU7WUFDaEQsR0FBRyxLQUFLLENBQUMsWUFBWTtTQUN0QixDQUFDLENBQUM7UUFDSCx1REFBdUQ7UUFDdkQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FDaEQsSUFBSSxFQUNKLGFBQWEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQ3hCO1lBQ0UsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUMvQixJQUFJLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLElBQUksY0FBYyxFQUFFLEVBQUU7WUFDdEQsZ0JBQWdCLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxnQkFBZ0I7WUFDeEQsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLHVCQUF1QixFQUFFLEtBQUssQ0FBQyxlQUFlLENBQUMsdUJBQXVCO1lBQ3RFLEdBQUcsS0FBSyxDQUFDLGVBQWU7U0FDekIsQ0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzlDLDJDQUEyQztRQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRTtZQUNwRSxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87WUFDdEIsWUFBWSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsWUFBWSxJQUFJLFVBQVUsQ0FBQyxNQUFNO1lBQ2xFLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07WUFDL0IsUUFBUSxFQUFFLEtBQUssQ0FBQyxXQUFXLEVBQUUsUUFBUSxJQUFJLFVBQVUsQ0FBQyxRQUFRO1lBQzVELEtBQUssRUFBRSxLQUFLLENBQUMsV0FBVyxFQUFFLEtBQUssSUFBSSxVQUFVLENBQUMsS0FBSztZQUNuRCxRQUFRLEVBQUUsS0FBSyxDQUFDLFdBQVcsRUFBRSxRQUFRLElBQUksVUFBVSxDQUFDLFFBQVE7WUFDNUQsR0FBRyxLQUFLLENBQUMsV0FBVztTQUNyQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUMsb0RBQW9EO1FBQ3BELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxLQUFLLENBQUMsc0JBQXNCLENBQ2xELElBQUksRUFDSixpQkFBaUIsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLEVBQzVCO1lBQ0UsT0FBTyxFQUFFLEtBQUssQ0FBQyxPQUFPO1lBQ3RCLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU07WUFDL0IsVUFBVSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsRUFBRSxVQUFVLElBQUksRUFBRTtZQUNyRCxHQUFHLEtBQUssQ0FBQyxpQkFBaUI7U0FDM0IsQ0FDRixDQUFDO1FBQ0YsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pELENBQUM7O0FBOUVILG9EQStFQyIsInNvdXJjZXNDb250ZW50IjpbIi8vIENvcHlyaWdodCAyMDIzIE1vbmdvREIgSW5jXG4vL1xuLy8gTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbi8vIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbi8vIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuLy9cbi8vICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4vL1xuLy8gVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuLy8gZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuLy8gV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4vLyBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4vLyBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cblxuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSBcImNvbnN0cnVjdHNcIjtcbmltcG9ydCAqIGFzIGF0bGFzIGZyb20gXCIuLi8uLi9pbmRleFwiO1xuaW1wb3J0IHsgQXRsYXNTZXJ2ZXJsZXNzQmFzaWNQcm9wcyB9IGZyb20gXCIuLi9jb21tb24vcHJvcHNcIjtcblxuLyoqIEB0eXBlIHsqfSAqL1xuY29uc3QgZGJEZWZhdWx0cyA9IHtcbiAgZGJOYW1lOiBcImFkbWluXCIsXG4gIHVzZXJuYW1lOiBcImF0bGFzLXVzZXJcIixcbiAgcGFzc3dvcmQ6IFwiYXRsYXMtcHdkXCIsXG4gIHJvbGVzOiBbXG4gICAge1xuICAgICAgcm9sZU5hbWU6IFwiYXRsYXNBZG1pblwiLFxuICAgICAgZGF0YWJhc2VOYW1lOiBcImFkbWluXCIsXG4gICAgfSxcbiAgXSxcbn07XG5cbi8qKlxuICogQGRlc2NyaXB0aW9uXG4gKiBAZXhwb3J0XG4gKiBAY2xhc3MgQXRsYXNCYXNpY1xuICogQGV4dGVuZHMge0NvbnN0cnVjdH1cbiAqL1xuZXhwb3J0IGNsYXNzIEF0bGFzU2VydmVybGVzc0Jhc2ljIGV4dGVuZHMgQ29uc3RydWN0IHtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBAdHlwZSB7cHJvamVjdC5DZm5Qcm9qZWN0fVxuICAgKiBAbWVtYmVyb2YgQXRsYXNTZXJ2ZXJsZXNzQmFzaWNcbiAgICovXG4gIHJlYWRvbmx5IG1Qcm9qZWN0OiBhdGxhcy5DZm5Qcm9qZWN0O1xuICAvKipcbiAgICogQGRlc2NyaXB0aW9uXG4gICAqIEB0eXBlIHthdGxhcy5DZm5DbHVzdGVyfVxuICAgKiBAbWVtYmVyb2YgQXRsYXNTZXJ2ZXJsZXNzQmFzaWNcbiAgICovXG4gIHJlYWRvbmx5IG1zZXJ2ZXJsZXNzOiBhdGxhcy5DZm5TZXJ2ZXJsZXNzSW5zdGFuY2U7XG4gIC8qKlxuICAgKiBAZGVzY3JpcHRpb25cbiAgICogQHR5cGUge3VzZXIuQ2ZuRGF0YWJhc2VVc2VyfVxuICAgKiBAbWVtYmVyb2YgQXRsYXNTZXJ2ZXJsZXNzQmFzaWNcbiAgICovXG4gIHJlYWRvbmx5IG1EQlVzZXI6IGF0bGFzLkNmbkRhdGFiYXNlVXNlcjtcbiAgLyoqXG4gICAqIEBkZXNjcmlwdGlvblxuICAgKiBAdHlwZSB7aXBBY2Nlc3NMaXN0LkNmblByb2plY3RJcEFjY2Vzc0xpc3R9XG4gICAqIEBtZW1iZXJvZiBBdGxhc1NlcnZlcmxlc3NCYXNpY1xuICAgKi9cbiAgcmVhZG9ubHkgaXBBY2Nlc3NMaXN0OiBhdGxhcy5DZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0O1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGFuIGluc3RhbmNlIG9mIEF0bGFzU2VydmVybGVzc0Jhc2ljLlxuICAgKiBAcGFyYW0ge0NvbnN0cnVjdH0gc2NvcGVcbiAgICogQHBhcmFtIHtzdHJpbmd9IGlkXG4gICAqIEBwYXJhbSB7QXRsYXNTZXJ2ZXJsZXNzQmFzaWNQcm9wc30gcHJvcHNcbiAgICogQG1lbWJlcm9mIEF0bGFzU2VydmVybGVzc0Jhc2ljXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXRsYXNTZXJ2ZXJsZXNzQmFzaWNQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgLy9DcmVhdGUgYSBuZXcgTW9uZ29EQiBBdGxhcyBQcm9qZWN0XG4gICAgdGhpcy5tUHJvamVjdCA9IG5ldyBhdGxhcy5DZm5Qcm9qZWN0KHRoaXMsIFwicHJvamVjdC1cIi5jb25jYXQoaWQpLCB7XG4gICAgICBwcm9maWxlOiBwcm9wcy5wcm9maWxlLFxuICAgICAgbmFtZTogcHJvcHMucHJvamVjdFByb3BzLm5hbWUgPz8gYHByb2plY3QtJHtpZH1gLFxuICAgICAgLi4ucHJvcHMucHJvamVjdFByb3BzLFxuICAgIH0pO1xuICAgIC8vIENyZWF0ZSBhIG5ldyBzZXJ2ZXJsZXNzIEluc3RhbmNlIGFuZCBwYXNzIHByb2plY3QgSURcbiAgICB0aGlzLm1zZXJ2ZXJsZXNzID0gbmV3IGF0bGFzLkNmblNlcnZlcmxlc3NJbnN0YW5jZShcbiAgICAgIHRoaXMsXG4gICAgICBcInNlcnZlcmxlc3MtXCIuY29uY2F0KGlkKSxcbiAgICAgIHtcbiAgICAgICAgcHJvamVjdElkOiB0aGlzLm1Qcm9qZWN0LmF0dHJJZCxcbiAgICAgICAgbmFtZTogcHJvcHMuc2VydmVybGVzc1Byb3BzLm5hbWUgPz8gYHNlcnZlcmxlc3MtJHtpZH1gLFxuICAgICAgICBwcm92aWRlclNldHRpbmdzOiBwcm9wcy5zZXJ2ZXJsZXNzUHJvcHMucHJvdmlkZXJTZXR0aW5ncyxcbiAgICAgICAgcHJvZmlsZTogcHJvcHMucHJvZmlsZSxcbiAgICAgICAgY29udGludW91c0JhY2t1cEVuYWJsZWQ6IHByb3BzLnNlcnZlcmxlc3NQcm9wcy5jb250aW51b3VzQmFja3VwRW5hYmxlZCxcbiAgICAgICAgLi4ucHJvcHMuc2VydmVybGVzc1Byb3BzLFxuICAgICAgfVxuICAgICk7XG4gICAgdGhpcy5tc2VydmVybGVzcy5hZGREZXBlbmRlbmN5KHRoaXMubVByb2plY3QpO1xuICAgIC8vIENyZWF0ZSBhIG5ldyBNb25nb0RCIEF0bGFzIERhdGFiYXNlIFVzZXJcbiAgICB0aGlzLm1EQlVzZXIgPSBuZXcgYXRsYXMuQ2ZuRGF0YWJhc2VVc2VyKHRoaXMsIFwiZGItdXNlci1cIi5jb25jYXQoaWQpLCB7XG4gICAgICBwcm9maWxlOiBwcm9wcy5wcm9maWxlLFxuICAgICAgZGF0YWJhc2VOYW1lOiBwcm9wcy5kYlVzZXJQcm9wcz8uZGF0YWJhc2VOYW1lIHx8IGRiRGVmYXVsdHMuZGJOYW1lLFxuICAgICAgcHJvamVjdElkOiB0aGlzLm1Qcm9qZWN0LmF0dHJJZCxcbiAgICAgIHVzZXJuYW1lOiBwcm9wcy5kYlVzZXJQcm9wcz8udXNlcm5hbWUgfHwgZGJEZWZhdWx0cy51c2VybmFtZSxcbiAgICAgIHJvbGVzOiBwcm9wcy5kYlVzZXJQcm9wcz8ucm9sZXMgfHwgZGJEZWZhdWx0cy5yb2xlcyxcbiAgICAgIHBhc3N3b3JkOiBwcm9wcy5kYlVzZXJQcm9wcz8ucGFzc3dvcmQgfHwgZGJEZWZhdWx0cy5wYXNzd29yZCxcbiAgICAgIC4uLnByb3BzLmRiVXNlclByb3BzLFxuICAgIH0pO1xuICAgIHRoaXMubURCVXNlci5hZGREZXBlbmRlbmN5KHRoaXMubVByb2plY3QpO1xuICAgIC8vIENyZWF0ZSBhIG5ldyBNb25nb0RCIEF0bGFzIFByb2plY3QgSVAgQWNjZXNzIExpc3RcbiAgICB0aGlzLmlwQWNjZXNzTGlzdCA9IG5ldyBhdGxhcy5DZm5Qcm9qZWN0SXBBY2Nlc3NMaXN0KFxuICAgICAgdGhpcyxcbiAgICAgIFwiaXAtYWNjZXNzLWxpc3QtXCIuY29uY2F0KGlkKSxcbiAgICAgIHtcbiAgICAgICAgcHJvZmlsZTogcHJvcHMucHJvZmlsZSxcbiAgICAgICAgcHJvamVjdElkOiB0aGlzLm1Qcm9qZWN0LmF0dHJJZCxcbiAgICAgICAgYWNjZXNzTGlzdDogcHJvcHMuaXBBY2Nlc3NMaXN0UHJvcHM/LmFjY2Vzc0xpc3QgfHwgW10sXG4gICAgICAgIC4uLnByb3BzLmlwQWNjZXNzTGlzdFByb3BzLFxuICAgICAgfVxuICAgICk7XG4gICAgdGhpcy5pcEFjY2Vzc0xpc3QuYWRkRGVwZW5kZW5jeSh0aGlzLm1Qcm9qZWN0KTtcbiAgfVxufVxuIl19

@@ -91,3 +91,3 @@ "use strict";

this.encryptionAtRest = new atlas.CfnEncryptionAtRest(this, "encryption-at-rest-".concat(id), {
awsKms: {
awsKmsConfig: {
customerMasterKeyId: props.encryptionAtRest.customerMasterKeyId,

@@ -135,3 +135,3 @@ roleId: props.encryptionAtRest.roleId,

_a = JSII_RTTI_SYMBOL_1;
AtlasEncryptionAtRestExpress[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasEncryptionAtRestExpress", version: "3.7.2" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDMtcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC1leHByZXNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkJBQTZCO0FBQzdCLEVBQUU7QUFDRixrRUFBa0U7QUFDbEUsbUVBQW1FO0FBQ25FLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysa0RBQWtEO0FBQ2xELEVBQUU7QUFDRixzRUFBc0U7QUFDdEUsb0VBQW9FO0FBQ3BFLDJFQUEyRTtBQUMzRSxzRUFBc0U7QUFDdEUsaUNBQWlDO0FBRWpDLDJDQUF1QztBQUN2QyxxQ0FBcUM7QUFPckMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBQ3JCLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQztBQUM1QixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUM7QUFDNUIsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDO0FBQzlCLE1BQU0sMkJBQTJCLEdBQy9CLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxHQUFHLENBQUM7QUFDcEQsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDO0FBQzNCLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQztBQUNuQyxNQUFNLHlCQUF5QixHQUFHLElBQUksQ0FBQztBQUN2QyxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUM7QUFDbEMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDO0FBQ3hCLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQztBQUMzQixNQUFNLElBQUksR0FBRztJQUNYO1FBQ0UsUUFBUSxFQUFFLFlBQVk7UUFDdEIsWUFBWSxFQUFFLE9BQU87S0FDdEI7Q0FDRixDQUFDO0FBRUYsU0FBUyxZQUFZO0lBQ25CLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUNmLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQztJQUNw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SCxvRUFzRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyMyBNb25nb0RCIEluY1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4vLyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4vLyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbi8vXG4vLyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuLy9cbi8vIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbi8vIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbi8vIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuLy8gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuLy8gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyBhdGxhcyBmcm9tIFwiLi4vLi4vaW5kZXhcIjtcbmltcG9ydCB7XG4gIENsdXN0ZXJQcm9wcyxcbiAgRGF0YWJhc2VVc2VyUHJvcHMsXG4gIElwQWNjZXNzTGlzdFByb3BzLFxufSBmcm9tIFwiLi4vY29tbW9uL3Byb3BzXCI7XG5cbmNvbnN0IE5PREVfQ09VTlQgPSAzO1xuY29uc3QgTk9ERV9DT1VOVF9BTkFMWVRJQ1MgPSAxO1xuY29uc3QgQkFDS1VQX0VOQUJMRUQgPSB0cnVlO1xuY29uc3QgSU5TVEFOQ0VfU0laRSA9IFwiTTMwXCI7XG5jb25zdCBNT05HT0RCX1ZFUlNJT04gPSBcIjUuMFwiO1xuY29uc3QgRU5DUllQVElPTl9BVF9SRVNUX1BST1ZJREVSID1cbiAgYXRsYXMuQ2ZuQ2x1c3RlclByb3BzRW5jcnlwdGlvbkF0UmVzdFByb3ZpZGVyLkFXUztcbmNvbnN0IFJFR0lPTiA9IFwiVVNfRUFTVF8xXCI7XG5jb25zdCBFQlNfVk9MVU1FX1RZUEUgPSBcIlNUQU5EQVJEXCI7XG5jb25zdCBFTkFCTEVfRU5DUllQVElPTl9BVF9SRVNUID0gdHJ1ZTtcbmNvbnN0IENMVVNURVJfVFlQRSA9IFwiUkVQTElDQVNFVFwiO1xuY29uc3QgREJfTkFNRSA9IFwiYWRtaW5cIjtcbmNvbnN0IFVTRVJOQU1FID0gXCJjZGtVc2VyXCI7XG5jb25zdCBST0xFID0gW1xuICB7XG4gICAgcm9sZU5hbWU6IFwiYXRsYXNBZG1pblwiLFxuICAgIGRhdGFiYXNlTmFtZTogXCJhZG1pblwiLFxuICB9LFxuXTtcblxuZnVuY3Rpb24gcmFuZG9tTnVtYmVyKCkge1xuICBjb25zdCBtaW4gPSAxMDtcbiAgY29uc3QgbWF4ID0gOTk5OTk5OTtcbiAgcmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIChtYXggLSBtaW4gKyAxKSArIG1pbik7XG59XG5cbmZ1bmN0aW9uIGdldENsdXN0ZXJQcm9wcyhcbiAgaW5wdXRDbHVzdGVyUHJvcHM6IENsdXN0ZXJQcm9wc1xuKTogYXRsYXMuQ2ZuQ2x1c3RlclByb3BzIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOlxuICAgICAgaW5wdXRDbHVzdGVyUHJvcHMubmFtZSB8fCBcImF0bGFzLWNsdXN0ZXItXCIuY29uY2F0KFN0cmluZyhyYW5kb21OdW1iZXIoKSkpLFxuICAgIG1vbmdvRGJNYWpvclZlcnNpb246XG4gICAgICBpbnB1dENsdXN0ZXJQcm9wcy5tb25nb0RiTWFqb3JWZXJzaW9uIHx8IE1PTkdPREJfVkVSU0lPTixcbiAgICBiYWNrdXBFbmFibGVkOiBpbnB1dENsdXN0ZXJQcm9wcy5iYWNrdXBFbmFibGVkID8/IEJBQ0tVUF9FTkFCTEVELFxuICAgIGRpc2tTaXplR2I6IGlucHV0Q2x1c3RlclByb3BzLmRpc2tTaXplR2IsXG4gICAgY2x1c3RlclR5cGU6IGlucHV0Q2x1c3RlclByb3BzLmNsdXN0ZXJUeXBlIHx8IENMVVNURVJfVFlQRSxcbiAgICBiaUNvbm5lY3RvcjogaW5wdXRDbHVzdGVyUHJvcHMuYmlDb25uZWN0b3IsXG4gICAgZW5jcnlwdGlvbkF0UmVzdFByb3ZpZGVyOlxuICAgICAgaW5wdXRDbHVzdGVyUHJvcHMuZW5jcnlwdGlvbkF0UmVzdFByb3ZpZGVyIHx8IEVOQ1JZUFRJT05fQVRfUkVTVF9QUk9WSURFUixcbiAgICBsYWJlbHM6IGlucHV0Q2x1c3RlclByb3BzLmxhYmVscyxcbiAgICBwYXVzZWQ6IGlucHV0Q2x1c3RlclByb3BzLnBhdXNlZCxcbiAgICBwaXRFbmFibGVkOiBpbnB1dENsdXN0ZXJQcm9wcy5waXRFbmFibGVkLFxuICAgIHJvb3RDZXJ0VHlwZTogaW5wdXRDbHVzdGVyUHJvcHMucm9vdENlcnRUeXBlLFxuICAgIHRlcm1pbmF0aW9uUHJvdGVjdGlvbkVuYWJsZWQ6XG4gICAgICBpbnB1dENsdXN0ZXJQcm9wcy50ZXJtaW5hdGlvblByb3RlY3Rpb25FbmFibGVkLFxuICAgIHZlcnNpb25SZWxlYXNlU3lzdGVtOiBpbnB1dENsdXN0ZXJQcm9wcy52ZXJzaW9uUmVsZWFzZVN5c3RlbSxcbiAgICBhZHZhbmNlZFNldHRpbmdzOiBpbnB1dENsdXN0ZXJQcm9wcy5hZHZhbmNlZFNldHRpbmdzLFxuICAgIHJlcGxpY2F0aW9uU3BlY3M6XG4gICAgICBpbnB1dENsdXN0ZXJQcm9wcy5yZXBsaWNhdGlvblNwZWNzIHx8IGdldERlZmF1bHRDbHVzdGVyUmVwbGljYXRpb25TcGVjKCksXG4gICAgcHJvamVjdElkOiBcIlwiLFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0Q2x1c3RlclJlcGxpY2F0aW9uU3BlYygpOiBhdGxhcy5BZHZhbmNlZFJlcGxpY2F0aW9uU3BlY1tdIHtcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBudW1TaGFyZHM6IDEsXG4gICAgICBhZHZhbmNlZFJlZ2lvbkNvbmZpZ3M6IFtcbiAgICAgICAge1xuICAgICAgICAgIGFuYWx5dGljc1NwZWNzOiB7XG4gICAgICAgICAgICBlYnNWb2x1bWVUeXBlOiBFQlNfVk9MVU1FX1RZUEUsXG4gICAgICAgICAgICBpbnN0YW5jZVNpemU6IElOU1RBTkNFX1NJWkUsXG4gICAgICAgICAgICBub2RlQ291bnQ6IE5PREVfQ09VTlRfQU5BTFlUSUNTLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZWxlY3RhYmxlU3BlY3M6IHtcbiAgICAgICAgICAgIGVic1ZvbHVtZVR5cGU6IEVCU19WT0xVTUVfVFlQRSxcbiAgICAgICAgICAgIGluc3RhbmNlU2l6ZTogSU5TVEFOQ0VfU0laRSxcbiAgICAgICAgICAgIG5vZGVDb3VudDogTk9ERV9DT1VOVCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHByaW9yaXR5OiA3LFxuICAgICAgICAgIHJlZ2lvbk5hbWU6IFJFR0lPTixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbmNyeXB0aW9uQXRSZXN0UHJvcHMge1xuICAvKipcbiAgICogSUQgb2YgYW4gQVdTIElBTSByb2xlIGF1dGhvcml6ZWQgdG8gbWFuYWdlIGFuIEFXUyBjdXN0b21lciBtYXN0ZXIga2V5LlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNSb2xlSURcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVJZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIEFXUyBjdXN0b21lciBtYXN0ZXIga2V5IHVzZWQgdG8gZW5jcnlwdCBhbmQgZGVjcnlwdCB0aGUgTW9uZ29EQiBtYXN0ZXIga2V5cy5cbiAgICpcbiAgICogQHNjaGVtYSBBd3NLbXMjQ3VzdG9tZXJNYXN0ZXJLZXlJRFxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tZXJNYXN0ZXJLZXlJZDogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgRW5jcnlwdGlvbiBhdCBSZXN0IGlzIGVuYWJsZWQgZm9yIGFuIEF0bGFzIHByb2plY3QuIFRvIGRpc2FibGUgRW5jcnlwdGlvbiBhdCBSZXN0LCBwYXNzIG9ubHkgdGhpcyBwYXJhbWV0ZXIgd2l0aCBhIHZhbHVlIG9mIGZhbHNlLiBXaGVuIHlvdSBkaXNhYmxlIEVuY3J5cHRpb24gYXQgUmVzdCwgQXRsYXMgYWxzbyByZW1vdmVzIHRoZSBjb25maWd1cmF0aW9uIGRldGFpbHMuXG4gICAqIERlZmF1bHQgVmFsdWU6IHRydWVcbiAgICogQHNjaGVtYSBBd3NLbXMjRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZEVuY3J5cHRpb25BdFJlc3Q/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIHJlZ2lvbiBpbiB3aGljaCB0aGUgQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkgZXhpc3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdGxhc0VuY3J5cHRpb25BdFJlc3RFeHByZXNzUHJvcHMge1xuICByZWFkb25seSBjbHVzdGVyPzogQ2x1c3RlclByb3BzO1xuICByZWFkb25seSBhY2Nlc3NMaXN0PzogSXBBY2Nlc3NMaXN0UHJvcHM7XG4gIHJlYWRvbmx5IGVuY3J5cHRpb25BdFJlc3Q6IEVuY3J5cHRpb25BdFJlc3RQcm9wcztcbiAgcmVhZG9ubHkgZGF0YWJhc2VVc2VyPzogRGF0YWJhc2VVc2VyUHJvcHM7XG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXRsYXNFbmNyeXB0aW9uQXRSZXN0RXhwcmVzcyBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGVuY3J5cHRpb25BdFJlc3Q6IGF0bGFzLkNmbkVuY3J5cHRpb25BdFJlc3Q7XG4gIHJlYWRvbmx5IGNsdXN0ZXI/OiBhdGxhcy5DZm5DbHVzdGVyO1xuICByZWFkb25seSBhY2Nlc3NMaXN0PzogYXRsYXMuQ2ZuUHJvamVjdElwQWNjZXNzTGlzdDtcbiAgcmVhZG9ubHkgZGF0YWJhc2VVc2VyPzogYXRsYXMuQ2ZuRGF0YWJhc2VVc2VyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQXRsYXNFbmNyeXB0aW9uQXRSZXN0RXhwcmVzc1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmVuY3J5cHRpb25BdFJlc3QgPSBuZXcgYXRsYXMuQ2ZuRW5jcnlwdGlvbkF0UmVzdChcbiAgICAgIHRoaXMsXG4gICAgICBcImVuY3J5cHRpb24tYXQtcmVzdC1cIi5jb25jYXQoaWQpLFxuICAgICAge1xuICAgICAgICBhd3NLbXM6IHtcbiAgICAgICAgICBjdXN0b21lck1hc3RlcktleUlkOiBwcm9wcy5lbmNyeXB0aW9uQXRSZXN0LmN1c3RvbWVyTWFzdGVyS2V5SWQsXG4gICAgICAgICAgcm9sZUlkOiBwcm9wcy5lbmNyeXB0aW9uQXRSZXN0LnJvbGVJZCxcbiAgICAgICAgICBlbmFibGVkOlxuICAgICAgICAgICAgcHJvcHMuZW5jcnlwdGlvbkF0UmVzdC5lbmFibGVkRW5jcnlwdGlvbkF0UmVzdCB8fFxuICAgICAgICAgICAgRU5BQkxFX0VOQ1JZUFRJT05fQVRfUkVTVCxcbiAgICAgICAgICByZWdpb246IHByb3BzLmVuY3J5cHRpb25BdFJlc3QucmVnaW9uIHx8IFJFR0lPTixcbiAgICAgICAgfSxcbiAgICAgICAgcHJvamVjdElkOiBwcm9wcy5wcm9qZWN0SWQsXG4gICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICB9XG4gICAgKTtcblxuICAgIGlmIChwcm9wcy5jbHVzdGVyKSB7XG4gICAgICAvLyBDcmVhdGUgYSBuZXcgTW9uZ29EQiBBdGxhcyBDbHVzdGVyIGFuZCBwYXNzIHByb2plY3QgSURcbiAgICAgIGNvbnN0IGNsdXN0ZXJQcm9wcyA9IGdldENsdXN0ZXJQcm9wcyhwcm9wcy5jbHVzdGVyKTtcbiAgICAgIHRoaXMuY2x1c3RlciA9IG5ldyBhdGxhcy5DZm5DbHVzdGVyKHRoaXMsIFwiY2x1c3Rlci1cIi5jb25jYXQoaWQpLCB7XG4gICAgICAgIC4uLmNsdXN0ZXJQcm9wcyxcbiAgICAgICAgcHJvZmlsZTogcHJvcHMucHJvZmlsZSxcbiAgICAgICAgcHJvamVjdElkOiBwcm9wcy5wcm9qZWN0SWQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZGF0YWJhc2VVc2VyKSB7XG4gICAgICAvLyBDcmVhdGUgYSBuZXcgTW9uZ29EQiBBdGxhcyBEYXRhYmFzZSBVc2VyXG4gICAgICB0aGlzLmRhdGFiYXNlVXNlciA9IG5ldyBhdGxhcy5DZm5EYXRhYmFzZVVzZXIoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiZGItdXNlci1cIi5jb25jYXQoaWQpLFxuICAgICAgICB7XG4gICAgICAgICAgLi4ucHJvcHMuZGF0YWJhc2VVc2VyLFxuICAgICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICAgICAgZGF0YWJhc2VOYW1lOiBwcm9wcy5kYXRhYmFzZVVzZXI/LmRhdGFiYXNlTmFtZSB8fCBEQl9OQU1FLFxuICAgICAgICAgIHByb2plY3RJZDogcHJvcHMucHJvamVjdElkLFxuICAgICAgICAgIHVzZXJuYW1lOiBwcm9wcy5kYXRhYmFzZVVzZXI/LnVzZXJuYW1lIHx8IFVTRVJOQU1FLFxuICAgICAgICAgIHJvbGVzOiBwcm9wcy5kYXRhYmFzZVVzZXI/LnJvbGVzIHx8IFJPTEUsXG4gICAgICAgICAgcGFzc3dvcmQ6IHByb3BzLmRhdGFiYXNlVXNlci5wYXNzd29yZCxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuYWNjZXNzTGlzdCkge1xuICAgICAgLy8gQ3JlYXRlIGEgbmV3IE1vbmdvREIgQXRsYXMgUHJvamVjdCBJUCBBY2Nlc3MgTGlzdFxuICAgICAgdGhpcy5hY2Nlc3NMaXN0ID0gbmV3IGF0bGFzLkNmblByb2plY3RJcEFjY2Vzc0xpc3QoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiYWNjZXNzLWxpc3QtXCIuY29uY2F0KGlkKSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnByb3BzLmFjY2Vzc0xpc3QsXG4gICAgICAgICAgcHJvZmlsZTogcHJvcHMucHJvZmlsZSxcbiAgICAgICAgICBwcm9qZWN0SWQ6IHByb3BzLnByb2plY3RJZCxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
AtlasEncryptionAtRestExpress[_a] = { fqn: "awscdk-resources-mongodbatlas.AtlasEncryptionAtRestExpress", version: "3.8.0" };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbDMtcmVzb3VyY2VzL2VuY3J5cHRpb24tYXQtcmVzdC1leHByZXNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsNkJBQTZCO0FBQzdCLEVBQUU7QUFDRixrRUFBa0U7QUFDbEUsbUVBQW1FO0FBQ25FLDBDQUEwQztBQUMxQyxFQUFFO0FBQ0Ysa0RBQWtEO0FBQ2xELEVBQUU7QUFDRixzRUFBc0U7QUFDdEUsb0VBQW9FO0FBQ3BFLDJFQUEyRTtBQUMzRSxzRUFBc0U7QUFDdEUsaUNBQWlDO0FBRWpDLDJDQUF1QztBQUN2QyxxQ0FBcUM7QUFPckMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBQ3JCLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFDO0FBQy9CLE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQztBQUM1QixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUM7QUFDNUIsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDO0FBQzlCLE1BQU0sMkJBQTJCLEdBQy9CLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxHQUFHLENBQUM7QUFDcEQsTUFBTSxNQUFNLEdBQUcsV0FBVyxDQUFDO0FBQzNCLE1BQU0sZUFBZSxHQUFHLFVBQVUsQ0FBQztBQUNuQyxNQUFNLHlCQUF5QixHQUFHLElBQUksQ0FBQztBQUN2QyxNQUFNLFlBQVksR0FBRyxZQUFZLENBQUM7QUFDbEMsTUFBTSxPQUFPLEdBQUcsT0FBTyxDQUFDO0FBQ3hCLE1BQU0sUUFBUSxHQUFHLFNBQVMsQ0FBQztBQUMzQixNQUFNLElBQUksR0FBRztJQUNYO1FBQ0UsUUFBUSxFQUFFLFlBQVk7UUFDdEIsWUFBWSxFQUFFLE9BQU87S0FDdEI7Q0FDRixDQUFDO0FBRUYsU0FBUyxZQUFZO0lBQ25CLE1BQU0sR0FBRyxHQUFHLEVBQUUsQ0FBQztJQUNmLE1BQU0sR0FBRyxHQUFHLE9BQU8sQ0FBQztJQUNw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SCxvRUFzRUMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBDb3B5cmlnaHQgMjAyMyBNb25nb0RCIEluY1xuLy9cbi8vIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4vLyB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4vLyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbi8vXG4vLyAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuLy9cbi8vIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbi8vIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbi8vIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuLy8gU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuLy8gbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG5cbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gXCJjb25zdHJ1Y3RzXCI7XG5pbXBvcnQgKiBhcyBhdGxhcyBmcm9tIFwiLi4vLi4vaW5kZXhcIjtcbmltcG9ydCB7XG4gIENsdXN0ZXJQcm9wcyxcbiAgRGF0YWJhc2VVc2VyUHJvcHMsXG4gIElwQWNjZXNzTGlzdFByb3BzLFxufSBmcm9tIFwiLi4vY29tbW9uL3Byb3BzXCI7XG5cbmNvbnN0IE5PREVfQ09VTlQgPSAzO1xuY29uc3QgTk9ERV9DT1VOVF9BTkFMWVRJQ1MgPSAxO1xuY29uc3QgQkFDS1VQX0VOQUJMRUQgPSB0cnVlO1xuY29uc3QgSU5TVEFOQ0VfU0laRSA9IFwiTTMwXCI7XG5jb25zdCBNT05HT0RCX1ZFUlNJT04gPSBcIjUuMFwiO1xuY29uc3QgRU5DUllQVElPTl9BVF9SRVNUX1BST1ZJREVSID1cbiAgYXRsYXMuQ2ZuQ2x1c3RlclByb3BzRW5jcnlwdGlvbkF0UmVzdFByb3ZpZGVyLkFXUztcbmNvbnN0IFJFR0lPTiA9IFwiVVNfRUFTVF8xXCI7XG5jb25zdCBFQlNfVk9MVU1FX1RZUEUgPSBcIlNUQU5EQVJEXCI7XG5jb25zdCBFTkFCTEVfRU5DUllQVElPTl9BVF9SRVNUID0gdHJ1ZTtcbmNvbnN0IENMVVNURVJfVFlQRSA9IFwiUkVQTElDQVNFVFwiO1xuY29uc3QgREJfTkFNRSA9IFwiYWRtaW5cIjtcbmNvbnN0IFVTRVJOQU1FID0gXCJjZGtVc2VyXCI7XG5jb25zdCBST0xFID0gW1xuICB7XG4gICAgcm9sZU5hbWU6IFwiYXRsYXNBZG1pblwiLFxuICAgIGRhdGFiYXNlTmFtZTogXCJhZG1pblwiLFxuICB9LFxuXTtcblxuZnVuY3Rpb24gcmFuZG9tTnVtYmVyKCkge1xuICBjb25zdCBtaW4gPSAxMDtcbiAgY29uc3QgbWF4ID0gOTk5OTk5OTtcbiAgcmV0dXJuIE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIChtYXggLSBtaW4gKyAxKSArIG1pbik7XG59XG5cbmZ1bmN0aW9uIGdldENsdXN0ZXJQcm9wcyhcbiAgaW5wdXRDbHVzdGVyUHJvcHM6IENsdXN0ZXJQcm9wc1xuKTogYXRsYXMuQ2ZuQ2x1c3RlclByb3BzIHtcbiAgcmV0dXJuIHtcbiAgICBuYW1lOlxuICAgICAgaW5wdXRDbHVzdGVyUHJvcHMubmFtZSB8fCBcImF0bGFzLWNsdXN0ZXItXCIuY29uY2F0KFN0cmluZyhyYW5kb21OdW1iZXIoKSkpLFxuICAgIG1vbmdvRGJNYWpvclZlcnNpb246XG4gICAgICBpbnB1dENsdXN0ZXJQcm9wcy5tb25nb0RiTWFqb3JWZXJzaW9uIHx8IE1PTkdPREJfVkVSU0lPTixcbiAgICBiYWNrdXBFbmFibGVkOiBpbnB1dENsdXN0ZXJQcm9wcy5iYWNrdXBFbmFibGVkID8/IEJBQ0tVUF9FTkFCTEVELFxuICAgIGRpc2tTaXplR2I6IGlucHV0Q2x1c3RlclByb3BzLmRpc2tTaXplR2IsXG4gICAgY2x1c3RlclR5cGU6IGlucHV0Q2x1c3RlclByb3BzLmNsdXN0ZXJUeXBlIHx8IENMVVNURVJfVFlQRSxcbiAgICBiaUNvbm5lY3RvcjogaW5wdXRDbHVzdGVyUHJvcHMuYmlDb25uZWN0b3IsXG4gICAgZW5jcnlwdGlvbkF0UmVzdFByb3ZpZGVyOlxuICAgICAgaW5wdXRDbHVzdGVyUHJvcHMuZW5jcnlwdGlvbkF0UmVzdFByb3ZpZGVyIHx8IEVOQ1JZUFRJT05fQVRfUkVTVF9QUk9WSURFUixcbiAgICBsYWJlbHM6IGlucHV0Q2x1c3RlclByb3BzLmxhYmVscyxcbiAgICBwYXVzZWQ6IGlucHV0Q2x1c3RlclByb3BzLnBhdXNlZCxcbiAgICBwaXRFbmFibGVkOiBpbnB1dENsdXN0ZXJQcm9wcy5waXRFbmFibGVkLFxuICAgIHJvb3RDZXJ0VHlwZTogaW5wdXRDbHVzdGVyUHJvcHMucm9vdENlcnRUeXBlLFxuICAgIHRlcm1pbmF0aW9uUHJvdGVjdGlvbkVuYWJsZWQ6XG4gICAgICBpbnB1dENsdXN0ZXJQcm9wcy50ZXJtaW5hdGlvblByb3RlY3Rpb25FbmFibGVkLFxuICAgIHZlcnNpb25SZWxlYXNlU3lzdGVtOiBpbnB1dENsdXN0ZXJQcm9wcy52ZXJzaW9uUmVsZWFzZVN5c3RlbSxcbiAgICBhZHZhbmNlZFNldHRpbmdzOiBpbnB1dENsdXN0ZXJQcm9wcy5hZHZhbmNlZFNldHRpbmdzLFxuICAgIHJlcGxpY2F0aW9uU3BlY3M6XG4gICAgICBpbnB1dENsdXN0ZXJQcm9wcy5yZXBsaWNhdGlvblNwZWNzIHx8IGdldERlZmF1bHRDbHVzdGVyUmVwbGljYXRpb25TcGVjKCksXG4gICAgcHJvamVjdElkOiBcIlwiLFxuICB9O1xufVxuXG5mdW5jdGlvbiBnZXREZWZhdWx0Q2x1c3RlclJlcGxpY2F0aW9uU3BlYygpOiBhdGxhcy5BZHZhbmNlZFJlcGxpY2F0aW9uU3BlY1tdIHtcbiAgcmV0dXJuIFtcbiAgICB7XG4gICAgICBudW1TaGFyZHM6IDEsXG4gICAgICBhZHZhbmNlZFJlZ2lvbkNvbmZpZ3M6IFtcbiAgICAgICAge1xuICAgICAgICAgIGFuYWx5dGljc1NwZWNzOiB7XG4gICAgICAgICAgICBlYnNWb2x1bWVUeXBlOiBFQlNfVk9MVU1FX1RZUEUsXG4gICAgICAgICAgICBpbnN0YW5jZVNpemU6IElOU1RBTkNFX1NJWkUsXG4gICAgICAgICAgICBub2RlQ291bnQ6IE5PREVfQ09VTlRfQU5BTFlUSUNTLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgZWxlY3RhYmxlU3BlY3M6IHtcbiAgICAgICAgICAgIGVic1ZvbHVtZVR5cGU6IEVCU19WT0xVTUVfVFlQRSxcbiAgICAgICAgICAgIGluc3RhbmNlU2l6ZTogSU5TVEFOQ0VfU0laRSxcbiAgICAgICAgICAgIG5vZGVDb3VudDogTk9ERV9DT1VOVCxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHByaW9yaXR5OiA3LFxuICAgICAgICAgIHJlZ2lvbk5hbWU6IFJFR0lPTixcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSxcbiAgXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBFbmNyeXB0aW9uQXRSZXN0UHJvcHMge1xuICAvKipcbiAgICogSUQgb2YgYW4gQVdTIElBTSByb2xlIGF1dGhvcml6ZWQgdG8gbWFuYWdlIGFuIEFXUyBjdXN0b21lciBtYXN0ZXIga2V5LlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNSb2xlSURcbiAgICovXG4gIHJlYWRvbmx5IHJvbGVJZDogc3RyaW5nO1xuICAvKipcbiAgICogVGhlIEFXUyBjdXN0b21lciBtYXN0ZXIga2V5IHVzZWQgdG8gZW5jcnlwdCBhbmQgZGVjcnlwdCB0aGUgTW9uZ29EQiBtYXN0ZXIga2V5cy5cbiAgICpcbiAgICogQHNjaGVtYSBBd3NLbXMjQ3VzdG9tZXJNYXN0ZXJLZXlJRFxuICAgKi9cbiAgcmVhZG9ubHkgY3VzdG9tZXJNYXN0ZXJLZXlJZDogc3RyaW5nO1xuICAvKipcbiAgICogU3BlY2lmaWVzIHdoZXRoZXIgRW5jcnlwdGlvbiBhdCBSZXN0IGlzIGVuYWJsZWQgZm9yIGFuIEF0bGFzIHByb2plY3QuIFRvIGRpc2FibGUgRW5jcnlwdGlvbiBhdCBSZXN0LCBwYXNzIG9ubHkgdGhpcyBwYXJhbWV0ZXIgd2l0aCBhIHZhbHVlIG9mIGZhbHNlLiBXaGVuIHlvdSBkaXNhYmxlIEVuY3J5cHRpb24gYXQgUmVzdCwgQXRsYXMgYWxzbyByZW1vdmVzIHRoZSBjb25maWd1cmF0aW9uIGRldGFpbHMuXG4gICAqIERlZmF1bHQgVmFsdWU6IHRydWVcbiAgICogQHNjaGVtYSBBd3NLbXMjRW5hYmxlZFxuICAgKi9cbiAgcmVhZG9ubHkgZW5hYmxlZEVuY3J5cHRpb25BdFJlc3Q/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIHJlZ2lvbiBpbiB3aGljaCB0aGUgQVdTIGN1c3RvbWVyIG1hc3RlciBrZXkgZXhpc3RzLlxuICAgKlxuICAgKiBAc2NoZW1hIEF3c0ttcyNSZWdpb25cbiAgICovXG4gIHJlYWRvbmx5IHJlZ2lvbj86IHN0cmluZztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdGxhc0VuY3J5cHRpb25BdFJlc3RFeHByZXNzUHJvcHMge1xuICByZWFkb25seSBjbHVzdGVyPzogQ2x1c3RlclByb3BzO1xuICByZWFkb25seSBhY2Nlc3NMaXN0PzogSXBBY2Nlc3NMaXN0UHJvcHM7XG4gIHJlYWRvbmx5IGVuY3J5cHRpb25BdFJlc3Q6IEVuY3J5cHRpb25BdFJlc3RQcm9wcztcbiAgcmVhZG9ubHkgZGF0YWJhc2VVc2VyPzogRGF0YWJhc2VVc2VyUHJvcHM7XG4gIHJlYWRvbmx5IHByb2ZpbGU/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHByb2plY3RJZDogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXRsYXNFbmNyeXB0aW9uQXRSZXN0RXhwcmVzcyBleHRlbmRzIENvbnN0cnVjdCB7XG4gIHJlYWRvbmx5IGVuY3J5cHRpb25BdFJlc3Q6IGF0bGFzLkNmbkVuY3J5cHRpb25BdFJlc3Q7XG4gIHJlYWRvbmx5IGNsdXN0ZXI/OiBhdGxhcy5DZm5DbHVzdGVyO1xuICByZWFkb25seSBhY2Nlc3NMaXN0PzogYXRsYXMuQ2ZuUHJvamVjdElwQWNjZXNzTGlzdDtcbiAgcmVhZG9ubHkgZGF0YWJhc2VVc2VyPzogYXRsYXMuQ2ZuRGF0YWJhc2VVc2VyO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHNjb3BlOiBDb25zdHJ1Y3QsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBwcm9wczogQXRsYXNFbmNyeXB0aW9uQXRSZXN0RXhwcmVzc1Byb3BzXG4gICkge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cbiAgICB0aGlzLmVuY3J5cHRpb25BdFJlc3QgPSBuZXcgYXRsYXMuQ2ZuRW5jcnlwdGlvbkF0UmVzdChcbiAgICAgIHRoaXMsXG4gICAgICBcImVuY3J5cHRpb24tYXQtcmVzdC1cIi5jb25jYXQoaWQpLFxuICAgICAge1xuICAgICAgICBhd3NLbXNDb25maWc6IHtcbiAgICAgICAgICBjdXN0b21lck1hc3RlcktleUlkOiBwcm9wcy5lbmNyeXB0aW9uQXRSZXN0LmN1c3RvbWVyTWFzdGVyS2V5SWQsXG4gICAgICAgICAgcm9sZUlkOiBwcm9wcy5lbmNyeXB0aW9uQXRSZXN0LnJvbGVJZCxcbiAgICAgICAgICBlbmFibGVkOlxuICAgICAgICAgICAgcHJvcHMuZW5jcnlwdGlvbkF0UmVzdC5lbmFibGVkRW5jcnlwdGlvbkF0UmVzdCB8fFxuICAgICAgICAgICAgRU5BQkxFX0VOQ1JZUFRJT05fQVRfUkVTVCxcbiAgICAgICAgICByZWdpb246IHByb3BzLmVuY3J5cHRpb25BdFJlc3QucmVnaW9uIHx8IFJFR0lPTixcbiAgICAgICAgfSxcbiAgICAgICAgcHJvamVjdElkOiBwcm9wcy5wcm9qZWN0SWQsXG4gICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICB9XG4gICAgKTtcblxuICAgIGlmIChwcm9wcy5jbHVzdGVyKSB7XG4gICAgICAvLyBDcmVhdGUgYSBuZXcgTW9uZ29EQiBBdGxhcyBDbHVzdGVyIGFuZCBwYXNzIHByb2plY3QgSURcbiAgICAgIGNvbnN0IGNsdXN0ZXJQcm9wcyA9IGdldENsdXN0ZXJQcm9wcyhwcm9wcy5jbHVzdGVyKTtcbiAgICAgIHRoaXMuY2x1c3RlciA9IG5ldyBhdGxhcy5DZm5DbHVzdGVyKHRoaXMsIFwiY2x1c3Rlci1cIi5jb25jYXQoaWQpLCB7XG4gICAgICAgIC4uLmNsdXN0ZXJQcm9wcyxcbiAgICAgICAgcHJvZmlsZTogcHJvcHMucHJvZmlsZSxcbiAgICAgICAgcHJvamVjdElkOiBwcm9wcy5wcm9qZWN0SWQsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuZGF0YWJhc2VVc2VyKSB7XG4gICAgICAvLyBDcmVhdGUgYSBuZXcgTW9uZ29EQiBBdGxhcyBEYXRhYmFzZSBVc2VyXG4gICAgICB0aGlzLmRhdGFiYXNlVXNlciA9IG5ldyBhdGxhcy5DZm5EYXRhYmFzZVVzZXIoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiZGItdXNlci1cIi5jb25jYXQoaWQpLFxuICAgICAgICB7XG4gICAgICAgICAgLi4ucHJvcHMuZGF0YWJhc2VVc2VyLFxuICAgICAgICAgIHByb2ZpbGU6IHByb3BzLnByb2ZpbGUsXG4gICAgICAgICAgZGF0YWJhc2VOYW1lOiBwcm9wcy5kYXRhYmFzZVVzZXI/LmRhdGFiYXNlTmFtZSB8fCBEQl9OQU1FLFxuICAgICAgICAgIHByb2plY3RJZDogcHJvcHMucHJvamVjdElkLFxuICAgICAgICAgIHVzZXJuYW1lOiBwcm9wcy5kYXRhYmFzZVVzZXI/LnVzZXJuYW1lIHx8IFVTRVJOQU1FLFxuICAgICAgICAgIHJvbGVzOiBwcm9wcy5kYXRhYmFzZVVzZXI/LnJvbGVzIHx8IFJPTEUsXG4gICAgICAgICAgcGFzc3dvcmQ6IHByb3BzLmRhdGFiYXNlVXNlci5wYXNzd29yZCxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG5cbiAgICBpZiAocHJvcHMuYWNjZXNzTGlzdCkge1xuICAgICAgLy8gQ3JlYXRlIGEgbmV3IE1vbmdvREIgQXRsYXMgUHJvamVjdCBJUCBBY2Nlc3MgTGlzdFxuICAgICAgdGhpcy5hY2Nlc3NMaXN0ID0gbmV3IGF0bGFzLkNmblByb2plY3RJcEFjY2Vzc0xpc3QoXG4gICAgICAgIHRoaXMsXG4gICAgICAgIFwiYWNjZXNzLWxpc3QtXCIuY29uY2F0KGlkKSxcbiAgICAgICAge1xuICAgICAgICAgIC4uLnByb3BzLmFjY2Vzc0xpc3QsXG4gICAgICAgICAgcHJvZmlsZTogcHJvcHMucHJvZmlsZSxcbiAgICAgICAgICBwcm9qZWN0SWQ6IHByb3BzLnByb2plY3RJZCxcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==

@@ -61,6 +61,6 @@ {

"prettier": "^2.8.8",
"projen": "^0.84.4",
"projen": "^0.84.6",
"standard-version": "^9",
"ts-jest": "^27",
"typescript": "^5.5.3"
"typescript": "^5.5.4"
},

@@ -96,7 +96,7 @@ "peerDependencies": {

},
"version": "3.7.2",
"version": "3.8.0",
"jest": {
"coverageProvider": "v8",
"testMatch": [
"<rootDir>/@(src|test)/**/?(*.)+(spec|test).ts?(x)",
"<rootDir>/@(src|test)/**/*(*.)@(spec|test).ts?(x)",
"<rootDir>/@(src|test)/**/__tests__/**/*.ts?(x)"

@@ -103,0 +103,0 @@ ],

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is too big to display