From 8f67af4d031637f5bed4d13a692c6ba6b167b108 Mon Sep 17 00:00:00 2001 From: awstools Date: Mon, 29 Aug 2022 19:19:47 +0000 Subject: [PATCH] Updates SDK to v2.1205.0 --- .changes/2.1205.0.json | 7 ++++ CHANGELOG.md | 5 ++- README.md | 2 +- apis/fsx-2018-03-01.normal.json | 2 +- apis/voice-id-2021-09-27.min.json | 17 +++++++- apis/voice-id-2021-09-27.normal.json | 61 +++++++++++++++++++--------- clients/fsx.d.ts | 2 +- clients/voiceid.d.ts | 42 +++++++++++-------- dist/aws-sdk-core-react-native.js | 2 +- dist/aws-sdk-react-native.js | 4 +- dist/aws-sdk.js | 6 +-- dist/aws-sdk.min.js | 4 +- lib/core.js | 2 +- package.json | 2 +- 14 files changed, 107 insertions(+), 51 deletions(-) create mode 100644 .changes/2.1205.0.json diff --git a/.changes/2.1205.0.json b/.changes/2.1205.0.json new file mode 100644 index 0000000000..935840c000 --- /dev/null +++ b/.changes/2.1205.0.json @@ -0,0 +1,7 @@ +[ + { + "type": "feature", + "category": "VoiceID", + "description": "Amazon Connect Voice ID now detects voice spoofing. When a prospective fraudster tries to spoof caller audio using audio playback or synthesized speech, Voice ID will return a risk score and outcome to indicate the how likely it is that the voice is spoofed." + } +] \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 64b06ce3bf..bf99dec018 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,10 @@ # Changelog for AWS SDK for JavaScript - + +## 2.1205.0 +* feature: VoiceID: Amazon Connect Voice ID now detects voice spoofing. When a prospective fraudster tries to spoof caller audio using audio playback or synthesized speech, Voice ID will return a risk score and outcome to indicate the how likely it is that the voice is spoofed. + ## 2.1204.0 * feature: MediaPackage: This release adds Ads AdTriggers and AdsOnDeliveryRestrictions to describe calls for CMAF endpoints on MediaPackage. * feature: Token: Read sso data from sso-session section in SSOTokenProvider diff --git a/README.md b/README.md index 82fcd056f7..2540de0aba 100644 --- a/README.md +++ b/README.md @@ -29,7 +29,7 @@ For release notes, see the [CHANGELOG](https://github.com/aws/aws-sdk-js/blob/ma To use the SDK in the browser, simply add the following script tag to your HTML pages: - + You can also build a custom browser SDK with your specified set of AWS services. This can allow you to reduce the SDK's size, specify different API versions of diff --git a/apis/fsx-2018-03-01.normal.json b/apis/fsx-2018-03-01.normal.json index 902135d613..2a81c88ab8 100644 --- a/apis/fsx-2018-03-01.normal.json +++ b/apis/fsx-2018-03-01.normal.json @@ -2129,7 +2129,7 @@ }, "SecurityStyle": { "shape": "SecurityStyle", - "documentation": "

The security style for the volume. Specify one of the following values:

" + "documentation": "

The security style for the volume. If a volume's security style is not specified, it is automatically set to the root volume's security style. Specify one of the following values:

" }, "SizeInMegabytes": { "shape": "VolumeCapacity", diff --git a/apis/voice-id-2021-09-27.min.json b/apis/voice-id-2021-09-27.min.json index dc5f943a21..3df63ab401 100644 --- a/apis/voice-id-2021-09-27.min.json +++ b/apis/voice-id-2021-09-27.min.json @@ -57,7 +57,8 @@ "members": { "DomainId": {} } - } + }, + "idempotent": true }, "DeleteFraudster": { "input": { @@ -279,7 +280,8 @@ "RiskDetails": { "type": "structure", "required": [ - "KnownFraudsterRisk" + "KnownFraudsterRisk", + "VoiceSpoofingRisk" ], "members": { "KnownFraudsterRisk": { @@ -293,6 +295,17 @@ "type": "integer" } } + }, + "VoiceSpoofingRisk": { + "type": "structure", + "required": [ + "RiskScore" + ], + "members": { + "RiskScore": { + "type": "integer" + } + } } } } diff --git a/apis/voice-id-2021-09-27.normal.json b/apis/voice-id-2021-09-27.normal.json index 114a1a82b3..004a37403a 100644 --- a/apis/voice-id-2021-09-27.normal.json +++ b/apis/voice-id-2021-09-27.normal.json @@ -80,7 +80,8 @@ "shape": "AccessDeniedException" } ], - "documentation": "

Deletes the specified domain from Voice ID.

" + "documentation": "

Deletes the specified domain from Voice ID.

", + "idempotent": true }, "DeleteFraudster": { "name": "DeleteFraudster", @@ -498,6 +499,9 @@ "shape": "OptOutSpeakerResponse" }, "errors": [ + { + "shape": "ServiceQuotaExceededException" + }, { "shape": "ResourceNotFoundException" }, @@ -792,7 +796,7 @@ }, "Description": { "shape": "Description", - "documentation": "

A brief description of this domain.

" + "documentation": "

A brief description of the domain.

" }, "Name": { "shape": "DomainName", @@ -1104,7 +1108,7 @@ }, "ServerSideEncryptionUpdateDetails": { "shape": "ServerSideEncryptionUpdateDetails", - "documentation": "

Details about the most recent server-side encryption configuration update. When the server-side encryption configuration is changed, dependency on the old KMS key is removed through an asynchronous process. When this update is complete, the domain’s data can only be accessed using the new KMS key.

" + "documentation": "

Details about the most recent server-side encryption configuration update. When the server-side encryption configuration is changed, dependency on the old KMS key is removed through an asynchronous process. When this update is complete, the domain's data can only be accessed using the new KMS key.

" }, "UpdatedAt": { "shape": "Timestamp", @@ -1246,7 +1250,8 @@ "FraudDetectionReason": { "type": "string", "enum": [ - "KNOWN_FRAUDSTER" + "KNOWN_FRAUDSTER", + "VOICE_SPOOFING" ] }, "FraudDetectionReasons": { @@ -1282,11 +1287,11 @@ }, "Reasons": { "shape": "FraudDetectionReasons", - "documentation": "

The reason speaker was flagged by the fraud detection system. This is only be populated if fraud detection Decision is HIGH_RISK, and only has one possible value: KNOWN_FRAUDSTER.

" + "documentation": "

The reason speaker was flagged by the fraud detection system. This is only be populated if fraud detection Decision is HIGH_RISK, and the following possible values: KNOWN_FRAUDSTER and VOICE_SPOOFING.

" }, "RiskDetails": { "shape": "FraudRiskDetails", - "documentation": "

Details about each risk analyzed for this speaker.

" + "documentation": "

Details about each risk analyzed for this speaker. Currently, this contains KnownFraudsterRisk and VoiceSpoofingRisk details.

" } }, "documentation": "

The fraud detection result produced by Voice ID, processed against the current session state and streamed audio of the speaker.

" @@ -1294,12 +1299,17 @@ "FraudRiskDetails": { "type": "structure", "required": [ - "KnownFraudsterRisk" + "KnownFraudsterRisk", + "VoiceSpoofingRisk" ], "members": { "KnownFraudsterRisk": { "shape": "KnownFraudsterRisk", "documentation": "

The details resulting from 'Known Fraudster Risk' analysis of the speaker.

" + }, + "VoiceSpoofingRisk": { + "shape": "VoiceSpoofingRisk", + "documentation": "

The details resulting from 'Voice Spoofing Risk' analysis of the speaker.

" } }, "documentation": "

Details regarding various fraud risk analyses performed against the current session state and streamed audio of the speaker.

" @@ -1374,7 +1384,7 @@ }, "OutputDataConfig": { "shape": "OutputDataConfig", - "documentation": "

The output data config containing the S3 location where you want Voice ID to write your job output file; you must also include a KMS key iD in order to encrypt the file.

" + "documentation": "

The output data config containing the S3 location where you want Voice ID to write your job output file; you must also include a KMS key ID in order to encrypt the file.

" }, "RegistrationConfig": { "shape": "RegistrationConfig", @@ -1424,7 +1434,7 @@ }, "JobName": { "shape": "JobName", - "documentation": "

The client-provied name for the fraudster registration job.

" + "documentation": "

The client-provided name for the fraudster registration job.

" }, "JobProgress": { "shape": "JobProgress", @@ -1522,7 +1532,7 @@ "members": { "MaxResults": { "shape": "MaxResultsForListDomainFe", - "documentation": "

The maximum number of results that are returned per call. You can use NextToken to obtain further pages of results. The default is 100; the maximum allowed page size is also 100.

" + "documentation": "

The maximum number of domains to list per API call.

" }, "NextToken": { "shape": "NextToken", @@ -1723,7 +1733,7 @@ "members": { "KmsKeyId": { "shape": "KmsKeyId", - "documentation": "

the identifier of the KMS key you want Voice ID to use to encrypt the output file of the fraudster registration job.

" + "documentation": "

The identifier of the KMS key you want Voice ID to use to encrypt the output file of a speaker enrollment job/fraudster registration job.

" }, "S3Uri": { "shape": "S3Uri", @@ -1766,7 +1776,7 @@ "members": { "KmsKeyId": { "shape": "KmsKeyId", - "documentation": "

The identifier of the KMS key you want Voice ID to use to encrypt your data.

" + "documentation": "

The identifier of the KMS key to use to encrypt data stored by Voice ID. Voice ID doesn't support asymmetric customer managed keys.

" } }, "documentation": "

The configuration containing information about the customer managed key used for encrypting customer data.

" @@ -2049,7 +2059,7 @@ }, "RegistrationConfig": { "shape": "RegistrationConfig", - "documentation": "

The registration config containing details such as the action to take when a duplicate fraudster is detected, and the similarity threshold to use for detecting a duplicate fraudster.

" + "documentation": "

The registration config containing details such as the action to take when a duplicate fraudster is detected, and the similarity threshold to use for detecting a duplicate fraudster.

" } } }, @@ -2078,7 +2088,7 @@ }, "DataAccessRoleArn": { "shape": "IamRoleArn", - "documentation": "

The IAM role Amazon Resource Name (ARN) that grants Voice ID permissions to access customer's buckets to read the input manifest file and write the job output file. Refer to Batch enrollment using audio data from prior calls documentation for the permissions needed in this role.

" + "documentation": "

The IAM role Amazon Resource Name (ARN) that grants Voice ID permissions to access customer's buckets to read the input manifest file and write the job output file. Refer to Batch enrollment using audio data from prior calls for the permissions needed in this role.

" }, "DomainId": { "shape": "DomainId", @@ -2132,14 +2142,14 @@ "members": { "Key": { "shape": "TagKey", - "documentation": "

The first part of a key:value pair that forms a tag associated with a given resource. For example, in the tag ‘Department’:’Sales’, the key is 'Department'.

" + "documentation": "

The first part of a key:value pair that forms a tag associated with a given resource. For example, in the tag 'Department':'Sales', the key is 'Department'.

" }, "Value": { "shape": "TagValue", - "documentation": "

The second part of a key:value pair that forms a tag associated with a given resource. For example, in the tag ‘Department’:’Sales’, the value is 'Sales'.

" + "documentation": "

The second part of a key:value pair that forms a tag associated with a given resource. For example, in the tag 'Department':'Sales', the value is 'Sales'.

" } }, - "documentation": "

A tag that can be assigned to a Voice ID resource.

" + "documentation": "

The tags used to organize, track, or control access for this resource. For example, { \"tags\": {\"key1\":\"value1\", \"key2\":\"value2\"} }.

" }, "TagKey": { "type": "string", @@ -2232,7 +2242,7 @@ "members": { "Description": { "shape": "Description", - "documentation": "

A brief description about this domain.

" + "documentation": "

A brief description of the domain.

" }, "DomainId": { "shape": "DomainId", @@ -2244,7 +2254,7 @@ }, "ServerSideEncryptionConfiguration": { "shape": "ServerSideEncryptionConfiguration", - "documentation": "

The configuration, containing the KMS key identifier, to be used by Voice ID for the server-side encryption of your data. Note that all the existing data in the domain are still encrypted using the existing key, only the data added to domain after updating the key is encrypted using the new key.

" + "documentation": "

The configuration, containing the KMS key identifier, to be used by Voice ID for the server-side encryption of your data. Changing the domain's associated KMS key immediately triggers an asynchronous process to remove dependency on the old KMS key, such that the domain's data can only be accessed using the new KMS key. The domain's ServerSideEncryptionUpdateDetails contains the details for this process.

" } } }, @@ -2256,6 +2266,19 @@ "documentation": "

Details about the updated domain

" } } + }, + "VoiceSpoofingRisk": { + "type": "structure", + "required": [ + "RiskScore" + ], + "members": { + "RiskScore": { + "shape": "Score", + "documentation": "

The score indicating the likelihood of speaker’s voice being spoofed.

" + } + }, + "documentation": "

The details resulting from 'Voice Spoofing Risk' analysis of the speaker.

" } }, "documentation": "

Amazon Connect Voice ID provides real-time caller authentication and fraud screening. This guide describes the APIs used for this service.

" diff --git a/clients/fsx.d.ts b/clients/fsx.d.ts index d8c382869d..f0f3348b01 100644 --- a/clients/fsx.d.ts +++ b/clients/fsx.d.ts @@ -853,7 +853,7 @@ declare namespace FSx { */ JunctionPath: JunctionPath; /** - * The security style for the volume. Specify one of the following values: UNIX if the file system is managed by a UNIX administrator, the majority of users are NFS clients, and an application accessing the data uses a UNIX user as the service account. UNIX is the default. NTFS if the file system is managed by a Windows administrator, the majority of users are SMB clients, and an application accessing the data uses a Windows user as the service account. MIXED if the file system is managed by both UNIX and Windows administrators and users consist of both NFS and SMB clients. + * The security style for the volume. If a volume's security style is not specified, it is automatically set to the root volume's security style. Specify one of the following values: UNIX if the file system is managed by a UNIX administrator, the majority of users are NFS clients, and an application accessing the data uses a UNIX user as the service account. NTFS if the file system is managed by a Windows administrator, the majority of users are SMB clients, and an application accessing the data uses a Windows user as the service account. MIXED if the file system is managed by both UNIX and Windows administrators and users consist of both NFS and SMB clients. */ SecurityStyle?: SecurityStyle; /** diff --git a/clients/voiceid.d.ts b/clients/voiceid.d.ts index 4fef9d7687..f713c7dd2c 100644 --- a/clients/voiceid.d.ts +++ b/clients/voiceid.d.ts @@ -231,7 +231,7 @@ declare namespace VoiceID { */ ClientToken?: ClientTokenString; /** - * A brief description of this domain. + * A brief description of the domain. */ Description?: Description; /** @@ -429,7 +429,7 @@ declare namespace VoiceID { */ ServerSideEncryptionConfiguration?: ServerSideEncryptionConfiguration; /** - * Details about the most recent server-side encryption configuration update. When the server-side encryption configuration is changed, dependency on the old KMS key is removed through an asynchronous process. When this update is complete, the domain’s data can only be accessed using the new KMS key. + * Details about the most recent server-side encryption configuration update. When the server-side encryption configuration is changed, dependency on the old KMS key is removed through an asynchronous process. When this update is complete, the domain's data can only be accessed using the new KMS key. */ ServerSideEncryptionUpdateDetails?: ServerSideEncryptionUpdateDetails; /** @@ -513,7 +513,7 @@ declare namespace VoiceID { RiskThreshold: Score; } export type FraudDetectionDecision = "HIGH_RISK"|"LOW_RISK"|"NOT_ENOUGH_SPEECH"|string; - export type FraudDetectionReason = "KNOWN_FRAUDSTER"|string; + export type FraudDetectionReason = "KNOWN_FRAUDSTER"|"VOICE_SPOOFING"|string; export type FraudDetectionReasons = FraudDetectionReason[]; export interface FraudDetectionResult { /** @@ -537,11 +537,11 @@ declare namespace VoiceID { */ FraudDetectionResultId?: UniqueIdLarge; /** - * The reason speaker was flagged by the fraud detection system. This is only be populated if fraud detection Decision is HIGH_RISK, and only has one possible value: KNOWN_FRAUDSTER. + * The reason speaker was flagged by the fraud detection system. This is only be populated if fraud detection Decision is HIGH_RISK, and the following possible values: KNOWN_FRAUDSTER and VOICE_SPOOFING. */ Reasons?: FraudDetectionReasons; /** - * Details about each risk analyzed for this speaker. + * Details about each risk analyzed for this speaker. Currently, this contains KnownFraudsterRisk and VoiceSpoofingRisk details. */ RiskDetails?: FraudRiskDetails; } @@ -550,6 +550,10 @@ declare namespace VoiceID { * The details resulting from 'Known Fraudster Risk' analysis of the speaker. */ KnownFraudsterRisk: KnownFraudsterRisk; + /** + * The details resulting from 'Voice Spoofing Risk' analysis of the speaker. + */ + VoiceSpoofingRisk: VoiceSpoofingRisk; } export interface Fraudster { /** @@ -608,7 +612,7 @@ declare namespace VoiceID { */ JobStatus?: FraudsterRegistrationJobStatus; /** - * The output data config containing the S3 location where you want Voice ID to write your job output file; you must also include a KMS key iD in order to encrypt the file. + * The output data config containing the S3 location where you want Voice ID to write your job output file; you must also include a KMS key ID in order to encrypt the file. */ OutputDataConfig?: OutputDataConfig; /** @@ -640,7 +644,7 @@ declare namespace VoiceID { */ JobId?: JobId; /** - * The client-provied name for the fraudster registration job. + * The client-provided name for the fraudster registration job. */ JobName?: JobName; /** @@ -683,7 +687,7 @@ declare namespace VoiceID { } export interface ListDomainsRequest { /** - * The maximum number of results that are returned per call. You can use NextToken to obtain further pages of results. The default is 100; the maximum allowed page size is also 100. + * The maximum number of domains to list per API call. */ MaxResults?: MaxResultsForListDomainFe; /** @@ -814,7 +818,7 @@ declare namespace VoiceID { } export interface OutputDataConfig { /** - * the identifier of the KMS key you want Voice ID to use to encrypt the output file of the fraudster registration job. + * The identifier of the KMS key you want Voice ID to use to encrypt the output file of a speaker enrollment job/fraudster registration job. */ KmsKeyId?: KmsKeyId; /** @@ -836,7 +840,7 @@ declare namespace VoiceID { export type Score = number; export interface ServerSideEncryptionConfiguration { /** - * The identifier of the KMS key you want Voice ID to use to encrypt your data. + * The identifier of the KMS key to use to encrypt data stored by Voice ID. Voice ID doesn't support asymmetric customer managed keys. */ KmsKeyId: KmsKeyId; } @@ -1033,7 +1037,7 @@ declare namespace VoiceID { */ OutputDataConfig: OutputDataConfig; /** - * The registration config containing details such as the action to take when a duplicate fraudster is detected, and the similarity threshold to use for detecting a duplicate fraudster. + * The registration config containing details such as the action to take when a duplicate fraudster is detected, and the similarity threshold to use for detecting a duplicate fraudster. */ RegistrationConfig?: RegistrationConfig; } @@ -1049,7 +1053,7 @@ declare namespace VoiceID { */ ClientToken?: ClientTokenString; /** - * The IAM role Amazon Resource Name (ARN) that grants Voice ID permissions to access customer's buckets to read the input manifest file and write the job output file. Refer to Batch enrollment using audio data from prior calls documentation for the permissions needed in this role. + * The IAM role Amazon Resource Name (ARN) that grants Voice ID permissions to access customer's buckets to read the input manifest file and write the job output file. Refer to Batch enrollment using audio data from prior calls for the permissions needed in this role. */ DataAccessRoleArn: IamRoleArn; /** @@ -1083,11 +1087,11 @@ declare namespace VoiceID { export type String = string; export interface Tag { /** - * The first part of a key:value pair that forms a tag associated with a given resource. For example, in the tag ‘Department’:’Sales’, the key is 'Department'. + * The first part of a key:value pair that forms a tag associated with a given resource. For example, in the tag 'Department':'Sales', the key is 'Department'. */ Key: TagKey; /** - * The second part of a key:value pair that forms a tag associated with a given resource. For example, in the tag ‘Department’:’Sales’, the value is 'Sales'. + * The second part of a key:value pair that forms a tag associated with a given resource. For example, in the tag 'Department':'Sales', the value is 'Sales'. */ Value: TagValue; } @@ -1123,7 +1127,7 @@ declare namespace VoiceID { } export interface UpdateDomainRequest { /** - * A brief description about this domain. + * A brief description of the domain. */ Description?: Description; /** @@ -1135,7 +1139,7 @@ declare namespace VoiceID { */ Name: DomainName; /** - * The configuration, containing the KMS key identifier, to be used by Voice ID for the server-side encryption of your data. Note that all the existing data in the domain are still encrypted using the existing key, only the data added to domain after updating the key is encrypted using the new key. + * The configuration, containing the KMS key identifier, to be used by Voice ID for the server-side encryption of your data. Changing the domain's associated KMS key immediately triggers an asynchronous process to remove dependency on the old KMS key, such that the domain's data can only be accessed using the new KMS key. The domain's ServerSideEncryptionUpdateDetails contains the details for this process. */ ServerSideEncryptionConfiguration: ServerSideEncryptionConfiguration; } @@ -1145,6 +1149,12 @@ declare namespace VoiceID { */ Domain?: Domain; } + export interface VoiceSpoofingRisk { + /** + * The score indicating the likelihood of speaker’s voice being spoofed. + */ + RiskScore: Score; + } /** * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version. */ diff --git a/dist/aws-sdk-core-react-native.js b/dist/aws-sdk-core-react-native.js index 080368975c..1afcb5e108 100644 --- a/dist/aws-sdk-core-react-native.js +++ b/dist/aws-sdk-core-react-native.js @@ -83,7 +83,7 @@ return /******/ (function(modules) { // webpackBootstrap /** * @constant */ - VERSION: '2.1204.0', + VERSION: '2.1205.0', /** * @api private diff --git a/dist/aws-sdk-react-native.js b/dist/aws-sdk-react-native.js index 0c21aaf123..9b89e3f28b 100644 --- a/dist/aws-sdk-react-native.js +++ b/dist/aws-sdk-react-native.js @@ -395,7 +395,7 @@ return /******/ (function(modules) { // webpackBootstrap /** * @constant */ - VERSION: '2.1204.0', + VERSION: '2.1205.0', /** * @api private @@ -59413,7 +59413,7 @@ return /******/ (function(modules) { // webpackBootstrap /* 1088 */ /***/ (function(module, exports) { - module.exports = {"version":"2.0","metadata":{"apiVersion":"2021-09-27","endpointPrefix":"voiceid","jsonVersion":"1.0","protocol":"json","serviceFullName":"Amazon Voice ID","serviceId":"Voice ID","signatureVersion":"v4","signingName":"voiceid","targetPrefix":"VoiceID","uid":"voice-id-2021-09-27"},"operations":{"CreateDomain":{"input":{"type":"structure","required":["Name","ServerSideEncryptionConfiguration"],"members":{"ClientToken":{"idempotencyToken":true},"Description":{"shape":"S3"},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"},"Tags":{"shape":"S7"}}},"output":{"type":"structure","members":{"Domain":{"shape":"Sc"}}},"idempotent":true},"DeleteDomain":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{}}}},"DeleteFraudster":{"input":{"type":"structure","required":["DomainId","FraudsterId"],"members":{"DomainId":{},"FraudsterId":{"shape":"Sm"}}}},"DeleteSpeaker":{"input":{"type":"structure","required":["DomainId","SpeakerId"],"members":{"DomainId":{},"SpeakerId":{"shape":"So"}}}},"DescribeDomain":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{}}},"output":{"type":"structure","members":{"Domain":{"shape":"Sc"}}}},"DescribeFraudster":{"input":{"type":"structure","required":["DomainId","FraudsterId"],"members":{"DomainId":{},"FraudsterId":{"shape":"Sm"}}},"output":{"type":"structure","members":{"Fraudster":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DomainId":{},"GeneratedFraudsterId":{}}}}}},"DescribeFraudsterRegistrationJob":{"input":{"type":"structure","required":["DomainId","JobId"],"members":{"DomainId":{},"JobId":{}}},"output":{"type":"structure","members":{"Job":{"shape":"Sy"}}}},"DescribeSpeaker":{"input":{"type":"structure","required":["DomainId","SpeakerId"],"members":{"DomainId":{},"SpeakerId":{"shape":"So"}}},"output":{"type":"structure","members":{"Speaker":{"shape":"S1d"}}}},"DescribeSpeakerEnrollmentJob":{"input":{"type":"structure","required":["DomainId","JobId"],"members":{"DomainId":{},"JobId":{}}},"output":{"type":"structure","members":{"Job":{"shape":"S1j"}}}},"EvaluateSession":{"input":{"type":"structure","required":["DomainId","SessionNameOrId"],"members":{"DomainId":{},"SessionNameOrId":{}}},"output":{"type":"structure","members":{"AuthenticationResult":{"type":"structure","members":{"AudioAggregationEndedAt":{"type":"timestamp"},"AudioAggregationStartedAt":{"type":"timestamp"},"AuthenticationResultId":{},"Configuration":{"type":"structure","required":["AcceptanceThreshold"],"members":{"AcceptanceThreshold":{"type":"integer"}}},"CustomerSpeakerId":{"shape":"S1e"},"Decision":{},"GeneratedSpeakerId":{},"Score":{"type":"integer"}}},"DomainId":{},"FraudDetectionResult":{"type":"structure","members":{"AudioAggregationEndedAt":{"type":"timestamp"},"AudioAggregationStartedAt":{"type":"timestamp"},"Configuration":{"type":"structure","required":["RiskThreshold"],"members":{"RiskThreshold":{"type":"integer"}}},"Decision":{},"FraudDetectionResultId":{},"Reasons":{"type":"list","member":{}},"RiskDetails":{"type":"structure","required":["KnownFraudsterRisk"],"members":{"KnownFraudsterRisk":{"type":"structure","required":["RiskScore"],"members":{"GeneratedFraudsterId":{},"RiskScore":{"type":"integer"}}}}}}},"SessionId":{},"SessionName":{},"StreamingStatus":{}}}},"ListDomains":{"input":{"type":"structure","members":{"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"DomainSummaries":{"type":"list","member":{"type":"structure","members":{"Arn":{},"CreatedAt":{"type":"timestamp"},"Description":{"shape":"S3"},"DomainId":{},"DomainStatus":{},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"},"ServerSideEncryptionUpdateDetails":{"shape":"Sh"},"UpdatedAt":{"type":"timestamp"}}}},"NextToken":{}}}},"ListFraudsterRegistrationJobs":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{},"JobStatus":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"JobSummaries":{"type":"list","member":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DomainId":{},"EndedAt":{"type":"timestamp"},"FailureDetails":{"shape":"S10"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{}}}},"NextToken":{}}}},"ListSpeakerEnrollmentJobs":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{},"JobStatus":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"JobSummaries":{"type":"list","member":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DomainId":{},"EndedAt":{"type":"timestamp"},"FailureDetails":{"shape":"S10"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{}}}},"NextToken":{}}}},"ListSpeakers":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"NextToken":{},"SpeakerSummaries":{"type":"list","member":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"CustomerSpeakerId":{"shape":"S1e"},"DomainId":{},"GeneratedSpeakerId":{},"LastAccessedAt":{"type":"timestamp"},"Status":{},"UpdatedAt":{"type":"timestamp"}}}}}}},"ListTagsForResource":{"input":{"type":"structure","required":["ResourceArn"],"members":{"ResourceArn":{}}},"output":{"type":"structure","members":{"Tags":{"shape":"S7"}}}},"OptOutSpeaker":{"input":{"type":"structure","required":["DomainId","SpeakerId"],"members":{"DomainId":{},"SpeakerId":{"shape":"So"}}},"output":{"type":"structure","members":{"Speaker":{"shape":"S1d"}}}},"StartFraudsterRegistrationJob":{"input":{"type":"structure","required":["DataAccessRoleArn","DomainId","InputDataConfig","OutputDataConfig"],"members":{"ClientToken":{"idempotencyToken":true},"DataAccessRoleArn":{},"DomainId":{},"InputDataConfig":{"shape":"S12"},"JobName":{"shape":"S14"},"OutputDataConfig":{"shape":"S18"},"RegistrationConfig":{"shape":"S19"}}},"output":{"type":"structure","members":{"Job":{"shape":"Sy"}}},"idempotent":true},"StartSpeakerEnrollmentJob":{"input":{"type":"structure","required":["DataAccessRoleArn","DomainId","InputDataConfig","OutputDataConfig"],"members":{"ClientToken":{"idempotencyToken":true},"DataAccessRoleArn":{},"DomainId":{},"EnrollmentConfig":{"shape":"S1k"},"InputDataConfig":{"shape":"S12"},"JobName":{"shape":"S14"},"OutputDataConfig":{"shape":"S18"}}},"output":{"type":"structure","members":{"Job":{"shape":"S1j"}}},"idempotent":true},"TagResource":{"input":{"type":"structure","required":["ResourceArn","Tags"],"members":{"ResourceArn":{},"Tags":{"shape":"S7"}}},"output":{"type":"structure","members":{}}},"UntagResource":{"input":{"type":"structure","required":["ResourceArn","TagKeys"],"members":{"ResourceArn":{},"TagKeys":{"type":"list","member":{"shape":"S9"}}}},"output":{"type":"structure","members":{}}},"UpdateDomain":{"input":{"type":"structure","required":["DomainId","Name","ServerSideEncryptionConfiguration"],"members":{"Description":{"shape":"S3"},"DomainId":{},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"}}},"output":{"type":"structure","members":{"Domain":{"shape":"Sc"}}}}},"shapes":{"S3":{"type":"string","sensitive":true},"S4":{"type":"string","sensitive":true},"S5":{"type":"structure","required":["KmsKeyId"],"members":{"KmsKeyId":{}}},"S7":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{"shape":"S9"},"Value":{"type":"string","sensitive":true}}}},"S9":{"type":"string","sensitive":true},"Sc":{"type":"structure","members":{"Arn":{},"CreatedAt":{"type":"timestamp"},"Description":{"shape":"S3"},"DomainId":{},"DomainStatus":{},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"},"ServerSideEncryptionUpdateDetails":{"shape":"Sh"},"UpdatedAt":{"type":"timestamp"}}},"Sh":{"type":"structure","members":{"Message":{},"OldKmsKeyId":{},"UpdateStatus":{}}},"Sm":{"type":"string","sensitive":true},"So":{"type":"string","sensitive":true},"Sy":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DataAccessRoleArn":{},"DomainId":{},"EndedAt":{"type":"timestamp"},"FailureDetails":{"shape":"S10"},"InputDataConfig":{"shape":"S12"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{},"OutputDataConfig":{"shape":"S18"},"RegistrationConfig":{"shape":"S19"}}},"S10":{"type":"structure","members":{"Message":{},"StatusCode":{"type":"integer"}}},"S12":{"type":"structure","required":["S3Uri"],"members":{"S3Uri":{}}},"S14":{"type":"string","sensitive":true},"S15":{"type":"structure","members":{"PercentComplete":{"type":"integer"}}},"S18":{"type":"structure","required":["S3Uri"],"members":{"KmsKeyId":{},"S3Uri":{}}},"S19":{"type":"structure","members":{"DuplicateRegistrationAction":{},"FraudsterSimilarityThreshold":{"type":"integer"}}},"S1d":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"CustomerSpeakerId":{"shape":"S1e"},"DomainId":{},"GeneratedSpeakerId":{},"LastAccessedAt":{"type":"timestamp"},"Status":{},"UpdatedAt":{"type":"timestamp"}}},"S1e":{"type":"string","sensitive":true},"S1j":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DataAccessRoleArn":{},"DomainId":{},"EndedAt":{"type":"timestamp"},"EnrollmentConfig":{"shape":"S1k"},"FailureDetails":{"shape":"S10"},"InputDataConfig":{"shape":"S12"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{},"OutputDataConfig":{"shape":"S18"}}},"S1k":{"type":"structure","members":{"ExistingEnrollmentAction":{},"FraudDetectionConfig":{"type":"structure","members":{"FraudDetectionAction":{},"RiskThreshold":{"type":"integer"}}}}}}} + module.exports = {"version":"2.0","metadata":{"apiVersion":"2021-09-27","endpointPrefix":"voiceid","jsonVersion":"1.0","protocol":"json","serviceFullName":"Amazon Voice ID","serviceId":"Voice ID","signatureVersion":"v4","signingName":"voiceid","targetPrefix":"VoiceID","uid":"voice-id-2021-09-27"},"operations":{"CreateDomain":{"input":{"type":"structure","required":["Name","ServerSideEncryptionConfiguration"],"members":{"ClientToken":{"idempotencyToken":true},"Description":{"shape":"S3"},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"},"Tags":{"shape":"S7"}}},"output":{"type":"structure","members":{"Domain":{"shape":"Sc"}}},"idempotent":true},"DeleteDomain":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{}}},"idempotent":true},"DeleteFraudster":{"input":{"type":"structure","required":["DomainId","FraudsterId"],"members":{"DomainId":{},"FraudsterId":{"shape":"Sm"}}}},"DeleteSpeaker":{"input":{"type":"structure","required":["DomainId","SpeakerId"],"members":{"DomainId":{},"SpeakerId":{"shape":"So"}}}},"DescribeDomain":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{}}},"output":{"type":"structure","members":{"Domain":{"shape":"Sc"}}}},"DescribeFraudster":{"input":{"type":"structure","required":["DomainId","FraudsterId"],"members":{"DomainId":{},"FraudsterId":{"shape":"Sm"}}},"output":{"type":"structure","members":{"Fraudster":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DomainId":{},"GeneratedFraudsterId":{}}}}}},"DescribeFraudsterRegistrationJob":{"input":{"type":"structure","required":["DomainId","JobId"],"members":{"DomainId":{},"JobId":{}}},"output":{"type":"structure","members":{"Job":{"shape":"Sy"}}}},"DescribeSpeaker":{"input":{"type":"structure","required":["DomainId","SpeakerId"],"members":{"DomainId":{},"SpeakerId":{"shape":"So"}}},"output":{"type":"structure","members":{"Speaker":{"shape":"S1d"}}}},"DescribeSpeakerEnrollmentJob":{"input":{"type":"structure","required":["DomainId","JobId"],"members":{"DomainId":{},"JobId":{}}},"output":{"type":"structure","members":{"Job":{"shape":"S1j"}}}},"EvaluateSession":{"input":{"type":"structure","required":["DomainId","SessionNameOrId"],"members":{"DomainId":{},"SessionNameOrId":{}}},"output":{"type":"structure","members":{"AuthenticationResult":{"type":"structure","members":{"AudioAggregationEndedAt":{"type":"timestamp"},"AudioAggregationStartedAt":{"type":"timestamp"},"AuthenticationResultId":{},"Configuration":{"type":"structure","required":["AcceptanceThreshold"],"members":{"AcceptanceThreshold":{"type":"integer"}}},"CustomerSpeakerId":{"shape":"S1e"},"Decision":{},"GeneratedSpeakerId":{},"Score":{"type":"integer"}}},"DomainId":{},"FraudDetectionResult":{"type":"structure","members":{"AudioAggregationEndedAt":{"type":"timestamp"},"AudioAggregationStartedAt":{"type":"timestamp"},"Configuration":{"type":"structure","required":["RiskThreshold"],"members":{"RiskThreshold":{"type":"integer"}}},"Decision":{},"FraudDetectionResultId":{},"Reasons":{"type":"list","member":{}},"RiskDetails":{"type":"structure","required":["KnownFraudsterRisk","VoiceSpoofingRisk"],"members":{"KnownFraudsterRisk":{"type":"structure","required":["RiskScore"],"members":{"GeneratedFraudsterId":{},"RiskScore":{"type":"integer"}}},"VoiceSpoofingRisk":{"type":"structure","required":["RiskScore"],"members":{"RiskScore":{"type":"integer"}}}}}}},"SessionId":{},"SessionName":{},"StreamingStatus":{}}}},"ListDomains":{"input":{"type":"structure","members":{"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"DomainSummaries":{"type":"list","member":{"type":"structure","members":{"Arn":{},"CreatedAt":{"type":"timestamp"},"Description":{"shape":"S3"},"DomainId":{},"DomainStatus":{},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"},"ServerSideEncryptionUpdateDetails":{"shape":"Sh"},"UpdatedAt":{"type":"timestamp"}}}},"NextToken":{}}}},"ListFraudsterRegistrationJobs":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{},"JobStatus":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"JobSummaries":{"type":"list","member":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DomainId":{},"EndedAt":{"type":"timestamp"},"FailureDetails":{"shape":"S10"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{}}}},"NextToken":{}}}},"ListSpeakerEnrollmentJobs":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{},"JobStatus":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"JobSummaries":{"type":"list","member":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DomainId":{},"EndedAt":{"type":"timestamp"},"FailureDetails":{"shape":"S10"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{}}}},"NextToken":{}}}},"ListSpeakers":{"input":{"type":"structure","required":["DomainId"],"members":{"DomainId":{},"MaxResults":{"type":"integer"},"NextToken":{}}},"output":{"type":"structure","members":{"NextToken":{},"SpeakerSummaries":{"type":"list","member":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"CustomerSpeakerId":{"shape":"S1e"},"DomainId":{},"GeneratedSpeakerId":{},"LastAccessedAt":{"type":"timestamp"},"Status":{},"UpdatedAt":{"type":"timestamp"}}}}}}},"ListTagsForResource":{"input":{"type":"structure","required":["ResourceArn"],"members":{"ResourceArn":{}}},"output":{"type":"structure","members":{"Tags":{"shape":"S7"}}}},"OptOutSpeaker":{"input":{"type":"structure","required":["DomainId","SpeakerId"],"members":{"DomainId":{},"SpeakerId":{"shape":"So"}}},"output":{"type":"structure","members":{"Speaker":{"shape":"S1d"}}}},"StartFraudsterRegistrationJob":{"input":{"type":"structure","required":["DataAccessRoleArn","DomainId","InputDataConfig","OutputDataConfig"],"members":{"ClientToken":{"idempotencyToken":true},"DataAccessRoleArn":{},"DomainId":{},"InputDataConfig":{"shape":"S12"},"JobName":{"shape":"S14"},"OutputDataConfig":{"shape":"S18"},"RegistrationConfig":{"shape":"S19"}}},"output":{"type":"structure","members":{"Job":{"shape":"Sy"}}},"idempotent":true},"StartSpeakerEnrollmentJob":{"input":{"type":"structure","required":["DataAccessRoleArn","DomainId","InputDataConfig","OutputDataConfig"],"members":{"ClientToken":{"idempotencyToken":true},"DataAccessRoleArn":{},"DomainId":{},"EnrollmentConfig":{"shape":"S1k"},"InputDataConfig":{"shape":"S12"},"JobName":{"shape":"S14"},"OutputDataConfig":{"shape":"S18"}}},"output":{"type":"structure","members":{"Job":{"shape":"S1j"}}},"idempotent":true},"TagResource":{"input":{"type":"structure","required":["ResourceArn","Tags"],"members":{"ResourceArn":{},"Tags":{"shape":"S7"}}},"output":{"type":"structure","members":{}}},"UntagResource":{"input":{"type":"structure","required":["ResourceArn","TagKeys"],"members":{"ResourceArn":{},"TagKeys":{"type":"list","member":{"shape":"S9"}}}},"output":{"type":"structure","members":{}}},"UpdateDomain":{"input":{"type":"structure","required":["DomainId","Name","ServerSideEncryptionConfiguration"],"members":{"Description":{"shape":"S3"},"DomainId":{},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"}}},"output":{"type":"structure","members":{"Domain":{"shape":"Sc"}}}}},"shapes":{"S3":{"type":"string","sensitive":true},"S4":{"type":"string","sensitive":true},"S5":{"type":"structure","required":["KmsKeyId"],"members":{"KmsKeyId":{}}},"S7":{"type":"list","member":{"type":"structure","required":["Key","Value"],"members":{"Key":{"shape":"S9"},"Value":{"type":"string","sensitive":true}}}},"S9":{"type":"string","sensitive":true},"Sc":{"type":"structure","members":{"Arn":{},"CreatedAt":{"type":"timestamp"},"Description":{"shape":"S3"},"DomainId":{},"DomainStatus":{},"Name":{"shape":"S4"},"ServerSideEncryptionConfiguration":{"shape":"S5"},"ServerSideEncryptionUpdateDetails":{"shape":"Sh"},"UpdatedAt":{"type":"timestamp"}}},"Sh":{"type":"structure","members":{"Message":{},"OldKmsKeyId":{},"UpdateStatus":{}}},"Sm":{"type":"string","sensitive":true},"So":{"type":"string","sensitive":true},"Sy":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DataAccessRoleArn":{},"DomainId":{},"EndedAt":{"type":"timestamp"},"FailureDetails":{"shape":"S10"},"InputDataConfig":{"shape":"S12"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{},"OutputDataConfig":{"shape":"S18"},"RegistrationConfig":{"shape":"S19"}}},"S10":{"type":"structure","members":{"Message":{},"StatusCode":{"type":"integer"}}},"S12":{"type":"structure","required":["S3Uri"],"members":{"S3Uri":{}}},"S14":{"type":"string","sensitive":true},"S15":{"type":"structure","members":{"PercentComplete":{"type":"integer"}}},"S18":{"type":"structure","required":["S3Uri"],"members":{"KmsKeyId":{},"S3Uri":{}}},"S19":{"type":"structure","members":{"DuplicateRegistrationAction":{},"FraudsterSimilarityThreshold":{"type":"integer"}}},"S1d":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"CustomerSpeakerId":{"shape":"S1e"},"DomainId":{},"GeneratedSpeakerId":{},"LastAccessedAt":{"type":"timestamp"},"Status":{},"UpdatedAt":{"type":"timestamp"}}},"S1e":{"type":"string","sensitive":true},"S1j":{"type":"structure","members":{"CreatedAt":{"type":"timestamp"},"DataAccessRoleArn":{},"DomainId":{},"EndedAt":{"type":"timestamp"},"EnrollmentConfig":{"shape":"S1k"},"FailureDetails":{"shape":"S10"},"InputDataConfig":{"shape":"S12"},"JobId":{},"JobName":{"shape":"S14"},"JobProgress":{"shape":"S15"},"JobStatus":{},"OutputDataConfig":{"shape":"S18"}}},"S1k":{"type":"structure","members":{"ExistingEnrollmentAction":{},"FraudDetectionConfig":{"type":"structure","members":{"FraudDetectionAction":{},"RiskThreshold":{"type":"integer"}}}}}}} /***/ }), /* 1089 */ diff --git a/dist/aws-sdk.js b/dist/aws-sdk.js index 5d887b28fa..c22ac5f24f 100644 --- a/dist/aws-sdk.js +++ b/dist/aws-sdk.js @@ -1,4 +1,4 @@ -// AWS SDK for JavaScript v2.1204.0 +// AWS SDK for JavaScript v2.1205.0 // Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. // License at https://sdk.amazonaws.com/js/BUNDLE_LICENSE.txt (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i-1});var o=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]","[object DataView]"];t.exports={isEmptyData:a,convertToBuffer:i}},{"buffer/":431}],334:[function(e,t,r){function a(e,t){this.hash=new e,this.outer=new e;var r=i(e,t),a=new Uint8Array(e.BLOCK_SIZE);a.set(r);for(var s=0;se.BLOCK_SIZE){var a=new e;a.update(r),r=a.digest()}var i=new Uint8Array(e.BLOCK_SIZE);return i.set(r),i}var s=e("./browserHashUtils");t.exports=a,a.prototype.update=function(e){if(s.isEmptyData(e)||this.error)return this;try{this.hash.update(s.convertToBuffer(e))}catch(e){this.error=e}return this},a.prototype.digest=function(e){return this.outer.finished||this.outer.update(this.hash.digest()),this.outer.digest(e)}},{"./browserHashUtils":333}],335:[function(e,t,r){function a(){this.state=[1732584193,4023233417,2562383102,271733878],this.buffer=new DataView(new ArrayBuffer(c)),this.bufferLength=0,this.bytesHashed=0,this.finished=!1}function i(e,t,r,a,i,s){return((t=(t+e&4294967295)+(a+s&4294967295)&4294967295)<>>32-i)+r&4294967295}function s(e,t,r,a,s,o,n){return i(t&r|~t&a,e,t,s,o,n)}function o(e,t,r,a,s,o,n){return i(t&a|r&~a,e,t,s,o,n)}function n(e,t,r,a,s,o,n){return i(t^r^a,e,t,s,o,n)}function u(e,t,r,a,s,o,n){return i(r^(t|~a),e,t,s,o,n)}var p=e("./browserHashUtils"),m=e("buffer/").Buffer,c=64;t.exports=a,a.BLOCK_SIZE=c,a.prototype.update=function(e){if(p.isEmptyData(e))return this;if(this.finished)throw new Error("Attempted to update an already finished hash.");var t=p.convertToBuffer(e),r=0,a=t.byteLength;for(this.bytesHashed+=a;a>0;)this.buffer.setUint8(this.bufferLength++,t[r++]),a--,this.bufferLength===c&&(this.hashBuffer(),this.bufferLength=0);return this},a.prototype.digest=function(e){if(!this.finished){var t=this,r=t.buffer,a=t.bufferLength,i=t.bytesHashed,s=8*i;if(r.setUint8(this.bufferLength++,128),a%c>=c-8){for(var o=this.bufferLength;o>>0,!0),r.setUint32(c-4,Math.floor(s/4294967296),!0),this.hashBuffer(),this.finished=!0}for(var n=new DataView(new ArrayBuffer(16)),o=0;o<4;o++)n.setUint32(4*o,this.state[o],!0);var u=new m(n.buffer,n.byteOffset,n.byteLength);return e?u.toString(e):u},a.prototype.hashBuffer=function(){var e=this,t=e.buffer,r=e.state,a=r[0],i=r[1],p=r[2],m=r[3];a=s(a,i,p,m,t.getUint32(0,!0),7,3614090360),m=s(m,a,i,p,t.getUint32(4,!0),12,3905402710),p=s(p,m,a,i,t.getUint32(8,!0),17,606105819),i=s(i,p,m,a,t.getUint32(12,!0),22,3250441966),a=s(a,i,p,m,t.getUint32(16,!0),7,4118548399),m=s(m,a,i,p,t.getUint32(20,!0),12,1200080426),p=s(p,m,a,i,t.getUint32(24,!0),17,2821735955),i=s(i,p,m,a,t.getUint32(28,!0),22,4249261313),a=s(a,i,p,m,t.getUint32(32,!0),7,1770035416),m=s(m,a,i,p,t.getUint32(36,!0),12,2336552879),p=s(p,m,a,i,t.getUint32(40,!0),17,4294925233),i=s(i,p,m,a,t.getUint32(44,!0),22,2304563134),a=s(a,i,p,m,t.getUint32(48,!0),7,1804603682),m=s(m,a,i,p,t.getUint32(52,!0),12,4254626195),p=s(p,m,a,i,t.getUint32(56,!0),17,2792965006),i=s(i,p,m,a,t.getUint32(60,!0),22,1236535329),a=o(a,i,p,m,t.getUint32(4,!0),5,4129170786),m=o(m,a,i,p,t.getUint32(24,!0),9,3225465664),p=o(p,m,a,i,t.getUint32(44,!0),14,643717713),i=o(i,p,m,a,t.getUint32(0,!0),20,3921069994),a=o(a,i,p,m,t.getUint32(20,!0),5,3593408605),m=o(m,a,i,p,t.getUint32(40,!0),9,38016083),p=o(p,m,a,i,t.getUint32(60,!0),14,3634488961),i=o(i,p,m,a,t.getUint32(16,!0),20,3889429448),a=o(a,i,p,m,t.getUint32(36,!0),5,568446438),m=o(m,a,i,p,t.getUint32(56,!0),9,3275163606),p=o(p,m,a,i,t.getUint32(12,!0),14,4107603335),i=o(i,p,m,a,t.getUint32(32,!0),20,1163531501),a=o(a,i,p,m,t.getUint32(52,!0),5,2850285829),m=o(m,a,i,p,t.getUint32(8,!0),9,4243563512),p=o(p,m,a,i,t.getUint32(28,!0),14,1735328473),i=o(i,p,m,a,t.getUint32(48,!0),20,2368359562),a=n(a,i,p,m,t.getUint32(20,!0),4,4294588738),m=n(m,a,i,p,t.getUint32(32,!0),11,2272392833),p=n(p,m,a,i,t.getUint32(44,!0),16,1839030562),i=n(i,p,m,a,t.getUint32(56,!0),23,4259657740),a=n(a,i,p,m,t.getUint32(4,!0),4,2763975236),m=n(m,a,i,p,t.getUint32(16,!0),11,1272893353),p=n(p,m,a,i,t.getUint32(28,!0),16,4139469664),i=n(i,p,m,a,t.getUint32(40,!0),23,3200236656),a=n(a,i,p,m,t.getUint32(52,!0),4,681279174),m=n(m,a,i,p,t.getUint32(0,!0),11,3936430074),p=n(p,m,a,i,t.getUint32(12,!0),16,3572445317),i=n(i,p,m,a,t.getUint32(24,!0),23,76029189),a=n(a,i,p,m,t.getUint32(36,!0),4,3654602809),m=n(m,a,i,p,t.getUint32(48,!0),11,3873151461),p=n(p,m,a,i,t.getUint32(60,!0),16,530742520),i=n(i,p,m,a,t.getUint32(8,!0),23,3299628645),a=u(a,i,p,m,t.getUint32(0,!0),6,4096336452),m=u(m,a,i,p,t.getUint32(28,!0),10,1126891415),p=u(p,m,a,i,t.getUint32(56,!0),15,2878612391),i=u(i,p,m,a,t.getUint32(20,!0),21,4237533241),a=u(a,i,p,m,t.getUint32(48,!0),6,1700485571),m=u(m,a,i,p,t.getUint32(12,!0),10,2399980690),p=u(p,m,a,i,t.getUint32(40,!0),15,4293915773),i=u(i,p,m,a,t.getUint32(4,!0),21,2240044497),a=u(a,i,p,m,t.getUint32(32,!0),6,1873313359),m=u(m,a,i,p,t.getUint32(60,!0),10,4264355552),p=u(p,m,a,i,t.getUint32(24,!0),15,2734768916),i=u(i,p,m,a,t.getUint32(52,!0),21,1309151649),a=u(a,i,p,m,t.getUint32(16,!0),6,4149444226),m=u(m,a,i,p,t.getUint32(44,!0),10,3174756917),p=u(p,m,a,i,t.getUint32(8,!0),15,718787259),i=u(i,p,m,a,t.getUint32(36,!0),21,3951481745),r[0]=a+r[0]&4294967295,r[1]=i+r[1]&4294967295,r[2]=p+r[2]&4294967295,r[3]=m+r[3]&4294967295}},{"./browserHashUtils":333,"buffer/":431}],336:[function(e,t,r){function a(){this.h0=1732584193,this.h1=4023233417,this.h2=2562383102,this.h3=271733878,this.h4=3285377520,this.block=new Uint32Array(80),this.offset=0,this.shift=24,this.totalLength=0}var i=e("buffer/").Buffer,s=e("./browserHashUtils");new Uint32Array([1518500249,1859775393,-1894007588,-899497514]),Math.pow(2,53);t.exports=a,a.BLOCK_SIZE=64,a.prototype.update=function(e){if(this.finished)throw new Error("Attempted to update an already finished hash.");if(s.isEmptyData(e))return this;e=s.convertToBuffer(e);var t=e.length;this.totalLength+=8*t;for(var r=0;r14||14===this.offset&&this.shift<24)&&this.processBlock(),this.offset=14,this.shift=24,this.write(0),this.write(0),this.write(this.totalLength>0xffffffffff?this.totalLength/1099511627776:0),this.write(this.totalLength>4294967295?this.totalLength/4294967296:0) -;for(var t=24;t>=0;t-=8)this.write(this.totalLength>>t);var r=new i(20),a=new DataView(r.buffer);return a.setUint32(0,this.h0,!1),a.setUint32(4,this.h1,!1),a.setUint32(8,this.h2,!1),a.setUint32(12,this.h3,!1),a.setUint32(16,this.h4,!1),e?r.toString(e):r},a.prototype.processBlock=function(){for(var e=16;e<80;e++){var t=this.block[e-3]^this.block[e-8]^this.block[e-14]^this.block[e-16];this.block[e]=t<<1|t>>>31}var r,a,i=this.h0,s=this.h1,o=this.h2,n=this.h3,u=this.h4;for(e=0;e<80;e++){e<20?(r=n^s&(o^n),a=1518500249):e<40?(r=s^o^n,a=1859775393):e<60?(r=s&o|n&(s|o),a=2400959708):(r=s^o^n,a=3395469782);var p=(i<<5|i>>>27)+r+u+a+(0|this.block[e]);u=n,n=o,o=s<<30|s>>>2,s=i,i=p}for(this.h0=this.h0+i|0,this.h1=this.h1+s|0,this.h2=this.h2+o|0,this.h3=this.h3+n|0,this.h4=this.h4+u|0,this.offset=0,e=0;e<16;e++)this.block[e]=0}},{"./browserHashUtils":333,"buffer/":431}],337:[function(e,t,r){function a(){this.state=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.temp=new Int32Array(64),this.buffer=new Uint8Array(64),this.bufferLength=0,this.bytesHashed=0,this.finished=!1}var i=e("buffer/").Buffer,s=e("./browserHashUtils"),o=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),n=Math.pow(2,53)-1;t.exports=a,a.BLOCK_SIZE=64,a.prototype.update=function(e){if(this.finished)throw new Error("Attempted to update an already finished hash.");if(s.isEmptyData(e))return this;e=s.convertToBuffer(e);var t=0,r=e.byteLength;if(this.bytesHashed+=r,8*this.bytesHashed>n)throw new Error("Cannot hash more than 2^53 - 1 bits");for(;r>0;)this.buffer[this.bufferLength++]=e[t++],r--,64===this.bufferLength&&(this.hashBuffer(),this.bufferLength=0);return this},a.prototype.digest=function(e){if(!this.finished){var t=8*this.bytesHashed,r=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),a=this.bufferLength;if(r.setUint8(this.bufferLength++,128),a%64>=56){for(var s=this.bufferLength;s<64;s++)r.setUint8(s,0);this.hashBuffer(),this.bufferLength=0}for(var s=this.bufferLength;s<56;s++)r.setUint8(s,0);r.setUint32(56,Math.floor(t/4294967296),!0),r.setUint32(60,t),this.hashBuffer(),this.finished=!0}for(var o=new i(32),s=0;s<8;s++)o[4*s]=this.state[s]>>>24&255,o[4*s+1]=this.state[s]>>>16&255,o[4*s+2]=this.state[s]>>>8&255,o[4*s+3]=this.state[s]>>>0&255;return e?o.toString(e):o},a.prototype.hashBuffer=function(){for(var e=this,t=e.buffer,r=e.state,a=r[0],i=r[1],s=r[2],n=r[3],u=r[4],p=r[5],m=r[6],c=r[7],l=0;l<64;l++){if(l<16)this.temp[l]=(255&t[4*l])<<24|(255&t[4*l+1])<<16|(255&t[4*l+2])<<8|255&t[4*l+3];else{var d=this.temp[l-2],y=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10;d=this.temp[l-15];var b=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3;this.temp[l]=(y+this.temp[l-7]|0)+(b+this.temp[l-16]|0)}var S=(((u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7))+(u&p^~u&m)|0)+(c+(o[l]+this.temp[l]|0)|0)|0,g=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+(a&i^a&s^i&s)|0;c=m,m=p,p=u,u=n+S|0,n=s,s=i,i=a,a=S+g|0}r[0]+=a,r[1]+=i,r[2]+=s,r[3]+=n,r[4]+=u,r[5]+=p,r[6]+=m,r[7]+=c}},{"./browserHashUtils":333,"buffer/":431}],338:[function(e,t,r){(function(r){(function(){var r=e("./util");r.crypto.lib=e("./browserCryptoLib"),r.Buffer=e("buffer/").Buffer,r.url=e("url/"),r.querystring=e("querystring/"),r.realClock=e("./realclock/browserClock"),r.environment="js",r.createEventStream=e("./event-stream/buffered-create-event-stream").createEventStream,r.isBrowser=function(){return!0},r.isNode=function(){return!1};var a=e("./core");if(t.exports=a,e("./credentials"),e("./credentials/credential_provider_chain"),e("./credentials/temporary_credentials"),e("./credentials/chainable_temporary_credentials"),e("./credentials/web_identity_credentials"),e("./credentials/cognito_identity_credentials"),e("./credentials/saml_credentials"),a.XML.Parser=e("./xml/browser_parser"),e("./http/xhr"),void 0===i)var i={browser:!0}}).call(this)}).call(this,e("_process"))},{"./browserCryptoLib":332,"./core":342,"./credentials":343,"./credentials/chainable_temporary_credentials":344,"./credentials/cognito_identity_credentials":345,"./credentials/credential_provider_chain":346,"./credentials/saml_credentials":347,"./credentials/temporary_credentials":348,"./credentials/web_identity_credentials":349,"./event-stream/buffered-create-event-stream":357,"./http/xhr":365,"./realclock/browserClock":384,"./util":419,"./xml/browser_parser":420,_process:436,"buffer/":431,"querystring/":443,"url/":445}],339:[function(e,t,r){var a=e("../core"),i=a.util.url,s=a.util.crypto.lib,o=a.util.base64.encode,n=a.util.inherit,u=function(e){var t={"+":"-","=":"_","/":"~"};return e.replace(/[\+=\/]/g,function(e){return t[e]})},p=function(e,t){var r=s.createSign("RSA-SHA1");return r.write(e),u(r.sign(t,"base64"))},m=function(e,t,r,a){var i=JSON.stringify({Statement:[{Resource:e,Condition:{DateLessThan:{"AWS:EpochTime":t}}}]});return{Expires:t,"Key-Pair-Id":r,Signature:p(i.toString(),a)}},c=function(e,t,r){return e=e.replace(/\s/gm,""),{Policy:u(o(e)),"Key-Pair-Id":t,Signature:p(e,r)}},l=function(e){var t=e.split("://");if(t.length<2)throw new Error("Invalid URL.");return t[0].replace("*","")},d=function(e){var t=i.parse(e);return t.path.replace(/^\//,"")+(t.hash||"")},y=function(e){switch(l(e)){case"http":case"https":return e;case"rtmp":return d(e);default:throw new Error("Invalid URI scheme. Scheme must be one of http, https, or rtmp")}},b=function(e,t){if(!t||"function"!=typeof t)throw e;t(e)},S=function(e,t){if(!t||"function"!=typeof t)return e;t(null,e)};a.CloudFront.Signer=n({constructor:function(e,t){if(void 0===e||void 0===t)throw new Error("A key pair ID and private key are required");this.keyPairId=e,this.privateKey=t},getSignedCookie:function(e,t){var r="policy"in e?c(e.policy,this.keyPairId,this.privateKey):m(e.url,e.expires,this.keyPairId,this.privateKey),a={};for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(a["CloudFront-"+i]=r[i]);return S(a,t)},getSignedUrl:function(e,t){try{var r=y(e.url)}catch(e){return b(e,t)}var a=i.parse(e.url,!0),s=Object.prototype.hasOwnProperty.call(e,"policy")?c(e.policy,this.keyPairId,this.privateKey):m(r,e.expires,this.keyPairId,this.privateKey);a.search=null;for(var o in s)Object.prototype.hasOwnProperty.call(s,o)&&(a.query[o]=s[o]);try{var n="rtmp"===l(e.url)?d(i.format(a)):i.format(a)}catch(e){return b(e,t)}return S(n,t)}}),t.exports=a.CloudFront.Signer},{"../core":342}],340:[function(e,t,r){var a=e("./core");e("./credentials"),e("./credentials/credential_provider_chain");var i;a.Config=a.util.inherit({constructor:function(e){void 0===e&&(e={}),e=this.extractCredentials(e),a.util.each.call(this,this.keys,function(t,r){this.set(t,e[t],r)})},getCredentials:function(e){function t(t){e(t,t?null:i.credentials)}function r(e,t){return new a.util.error(t||new Error,{code:"CredentialsError",message:e,name:"CredentialsError"})}var i=this;i.credentials?"function"==typeof i.credentials.get?function(){i.credentials.get(function(e){e&&(e=r("Could not load credentials from "+i.credentials.constructor.name,e)),t(e)})}():function(){var e=null;i.credentials.accessKeyId&&i.credentials.secretAccessKey||(e=r("Missing credentials")),t(e)}():i.credentialProvider?i.credentialProvider.resolve(function(e,a){e&&(e=r("Could not load credentials from any providers",e)),i.credentials=a,t(e)}):t(r("No credentials to load"))},getToken:function(e){function t(t){e(t,t?null:i.token)}function r(e,t){return new a.util.error(t||new Error,{code:"TokenError",message:e,name:"TokenError"})}var i=this;i.token?"function"==typeof i.token.get?function(){i.token.get(function(e){e&&(e=r("Could not load token from "+i.token.constructor.name,e)),t(e)})}():function(){var e=null;i.token.token||(e=r("Missing token")),t(e)}():i.tokenProvider?i.tokenProvider.resolve(function(e,a){e&&(e=r("Could not load token from any providers",e)),i.token=a,t(e)}):t(r("No token to load"))},update:function(e,t){t=t||!1,e=this.extractCredentials(e),a.util.each.call(this,e,function(e,r){(t||Object.prototype.hasOwnProperty.call(this.keys,e)||a.Service.hasService(e))&&this.set(e,r)})},loadFromPath:function(e){this.clear();var t=JSON.parse(a.util.readFileSync(e)),r=new a.FileSystemCredentials(e),i=new a.CredentialProviderChain;return i.providers.unshift(r),i.resolve(function(e,r){if(e)throw e;t.credentials=r}),this.constructor(t),this},clear:function(){a.util.each.call(this,this.keys,function(e){delete this[e]}),this.set("credentials",void 0),this.set("credentialProvider",void 0)},set:function(e,t,r){void 0===t?(void 0===r&&(r=this.keys[e]),this[e]="function"==typeof r?r.call(this):r):"httpOptions"===e&&this[e]?this[e]=a.util.merge(this[e],t):this[e]=t},keys:{credentials:null,credentialProvider:null,region:null,logger:null,apiVersions:{},apiVersion:null,endpoint:void 0,httpOptions:{timeout:12e4},maxRetries:void 0,maxRedirects:10,paramValidation:!0,sslEnabled:!0,s3ForcePathStyle:!1,s3BucketEndpoint:!1,s3DisableBodySigning:!0,s3UsEast1RegionalEndpoint:"legacy",s3UseArnRegion:void 0,computeChecksums:!0,convertResponseTypes:!0,correctClockSkew:!1,customUserAgent:null,dynamoDbCrc32:!0,systemClockOffset:0,signatureVersion:null,signatureCache:!0,retryDelayOptions:{},useAccelerateEndpoint:!1,clientSideMonitoring:!1,endpointDiscoveryEnabled:void 0,endpointCacheSize:1e3,hostPrefixEnabled:!0,stsRegionalEndpoints:"legacy",useFipsEndpoint:!1,useDualstackEndpoint:!1,token:null},extractCredentials:function(e){return e.accessKeyId&&e.secretAccessKey&&(e=a.util.copy(e),e.credentials=new a.Credentials(e)),e},setPromisesDependency:function(e){i=e,null===e&&"function"==typeof Promise&&(i=Promise);var t=[a.Request,a.Credentials,a.CredentialProviderChain];a.S3&&(t.push(a.S3),a.S3.ManagedUpload&&t.push(a.S3.ManagedUpload)),a.util.addPromises(t,i)},getPromisesDependency:function(){return i}}),a.config=new a.Config},{"./core":342,"./credentials":343,"./credentials/credential_provider_chain":346}],341:[function(e,t,r){(function(r){(function(){function a(e,t){if("string"==typeof e){if(["legacy","regional"].indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw s.util.error(new Error,t)}}function i(e,t){e=e||{};var i;if(e[t.clientConfig]&&(i=a(e[t.clientConfig],{code:"InvalidConfiguration",message:'invalid "'+t.clientConfig+'" configuration. Expect "legacy" or "regional". Got "'+e[t.clientConfig]+'".'})))return i;if(!s.util.isNode())return i;if(Object.prototype.hasOwnProperty.call(r.env,t.env)){if(i=a(r.env[t.env],{code:"InvalidEnvironmentalVariable",message:"invalid "+t.env+' environmental variable. Expect "legacy" or "regional". Got "'+r.env[t.env]+'".'}))return i}var o={};try{o=s.util.getProfilesFromSharedConfig(s.util.iniLoader)[r.env.AWS_PROFILE||s.util.defaultProfile]}catch(e){}if(o&&Object.prototype.hasOwnProperty.call(o,t.sharedConfig)){if(i=a(o[t.sharedConfig],{code:"InvalidConfiguration",message:"invalid "+t.sharedConfig+' profile config. Expect "legacy" or "regional". Got "'+o[t.sharedConfig]+'".'}))return i}return i}var s=e("./core");t.exports=i}).call(this)}).call(this,e("_process"))},{"./core":342,_process:436}],342:[function(e,t,r){var a={util:e("./util")};({}).toString(),t.exports=a,a.util.update(a,{VERSION:"2.1204.0",Signers:{},Protocol:{Json:e("./protocol/json"),Query:e("./protocol/query"),Rest:e("./protocol/rest"),RestJson:e("./protocol/rest_json"),RestXml:e("./protocol/rest_xml")},XML:{Builder:e("./xml/builder"),Parser:null},JSON:{Builder:e("./json/builder"),Parser:e("./json/parser")},Model:{Api:e("./model/api"),Operation:e("./model/operation"),Shape:e("./model/shape"),Paginator:e("./model/paginator"),ResourceWaiter:e("./model/resource_waiter")},apiLoader:e("./api_loader"),EndpointCache:e("../vendor/endpoint-cache").EndpointCache}),e("./sequential_executor"),e("./service"),e("./config"),e("./http"),e("./event_listeners"),e("./request"),e("./response"),e("./resource_waiter"),e("./signers/request_signer"),e("./param_validator"),a.events=new a.SequentialExecutor,a.util.memoizedProperty(a,"endpointCache",function(){return new a.EndpointCache(a.config.endpointCacheSize)},!0)},{"../vendor/endpoint-cache":456,"./api_loader":331,"./config":340,"./event_listeners":363,"./http":364,"./json/builder":366,"./json/parser":367,"./model/api":368,"./model/operation":370,"./model/paginator":371,"./model/resource_waiter":372,"./model/shape":373,"./param_validator":374,"./protocol/json":377,"./protocol/query":378,"./protocol/rest":379,"./protocol/rest_json":380,"./protocol/rest_xml":381,"./request":388,"./resource_waiter":389,"./response":390,"./sequential_executor":392,"./service":393,"./signers/request_signer":411,"./util":419,"./xml/builder":421}],343:[function(e,t,r){var a=e("./core");a.Credentials=a.util.inherit({constructor:function(){if(a.util.hideProperties(this,["secretAccessKey"]),this.expired=!1,this.expireTime=null,this.refreshCallbacks=[],1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0].credentials||arguments[0];this.accessKeyId=e.accessKeyId,this.secretAccessKey=e.secretAccessKey,this.sessionToken=e.sessionToken}else this.accessKeyId=arguments[0],this.secretAccessKey=arguments[1],this.sessionToken=arguments[2]},expiryWindow:15,needsRefresh:function(){var e=a.util.date.getDate().getTime(),t=new Date(e+1e3*this.expiryWindow);return!!(this.expireTime&&t>this.expireTime)||(this.expired||!this.accessKeyId||!this.secretAccessKey)},get:function(e){var t=this;this.needsRefresh()?this.refresh(function(r){r||(t.expired=!1),e&&e(r)}):e&&e()},refresh:function(e){this.expired=!1,e()},coalesceRefresh:function(e,t){var r=this;1===r.refreshCallbacks.push(e)&&r.load(function(e){a.util.arrayEach(r.refreshCallbacks,function(r){t?r(e):a.util.defer(function(){r(e)})}),r.refreshCallbacks.length=0})},load:function(e){e()}}),a.Credentials.addPromisesToClass=function(e){this.prototype.getPromise=a.util.promisifyMethod("get",e),this.prototype.refreshPromise=a.util.promisifyMethod("refresh",e)},a.Credentials.deletePromisesFromClass=function(){delete this.prototype.getPromise,delete this.prototype.refreshPromise},a.util.addPromises(a.Credentials)},{"./core":342}],344:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.ChainableTemporaryCredentials=a.util.inherit(a.Credentials,{constructor:function(e){a.Credentials.call(this),e=e||{},this.errorCode="ChainableTemporaryCredentialsProviderFailure",this.expired=!0,this.tokenCodeFn=null;var t=a.util.copy(e.params)||{};if(t.RoleArn&&(t.RoleSessionName=t.RoleSessionName||"temporary-credentials"),t.SerialNumber){if(!e.tokenCodeFn||"function"!=typeof e.tokenCodeFn)throw new a.util.error(new Error("tokenCodeFn must be a function when params.SerialNumber is given"),{code:this.errorCode});this.tokenCodeFn=e.tokenCodeFn}var r=a.util.merge({params:t,credentials:e.masterCredentials||a.config.credentials},e.stsConfig||{});this.service=new i(r)},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this,r=t.service.config.params.RoleArn?"assumeRole":"getSessionToken";this.getTokenCode(function(a,i){var s={};if(a)return void e(a);i&&(s.TokenCode=i),t.service[r](s,function(r,a){r||t.service.credentialsFrom(a,t),e(r)})})},getTokenCode:function(e){var t=this;this.tokenCodeFn?this.tokenCodeFn(this.service.config.params.SerialNumber,function(r,i){if(r){var s=r;return r instanceof Error&&(s=r.message),void e(a.util.error(new Error("Error fetching MFA token: "+s),{code:t.errorCode}))}e(null,i)}):e(null)}})},{"../../clients/sts":326,"../core":342}],345:[function(e,t,r){var a=e("../core"),i=e("../../clients/cognitoidentity"),s=e("../../clients/sts");a.CognitoIdentityCredentials=a.util.inherit(a.Credentials,{localStorageKey:{id:"aws.cognito.identity-id.",providers:"aws.cognito.identity-providers."},constructor:function(e,t){a.Credentials.call(this),this.expired=!0,this.params=e,this.data=null,this._identityId=null,this._clientConfig=a.util.copy(t||{}),this.loadCachedId();var r=this;Object.defineProperty(this,"identityId",{get:function(){return r.loadCachedId(),r._identityId||r.params.IdentityId},set:function(e){r._identityId=e}})},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.data=null,t._identityId=null,t.getId(function(r){r?(t.clearIdOnNotAuthorized(r),e(r)):t.params.RoleArn?t.getCredentialsFromSTS(e):t.getCredentialsForIdentity(e)})},clearCachedId:function(){this._identityId=null,delete this.params.IdentityId;var e=this.params.IdentityPoolId,t=this.params.LoginId||"";delete this.storage[this.localStorageKey.id+e+t],delete this.storage[this.localStorageKey.providers+e+t]},clearIdOnNotAuthorized:function(e){var t=this;"NotAuthorizedException"==e.code&&t.clearCachedId()},getId:function(e){var t=this;if("string"==typeof t.params.IdentityId)return e(null,t.params.IdentityId);t.cognito.getId(function(r,a){!r&&a.IdentityId?(t.params.IdentityId=a.IdentityId,e(null,a.IdentityId)):e(r)})},loadCredentials:function(e,t){e&&t&&(t.expired=!1,t.accessKeyId=e.Credentials.AccessKeyId,t.secretAccessKey=e.Credentials.SecretKey,t.sessionToken=e.Credentials.SessionToken,t.expireTime=e.Credentials.Expiration)},getCredentialsForIdentity:function(e){var t=this;t.cognito.getCredentialsForIdentity(function(r,a){r?t.clearIdOnNotAuthorized(r):(t.cacheId(a),t.data=a,t.loadCredentials(t.data,t)),e(r)})},getCredentialsFromSTS:function(e){var t=this;t.cognito.getOpenIdToken(function(r,a){r?(t.clearIdOnNotAuthorized(r),e(r)):(t.cacheId(a),t.params.WebIdentityToken=a.Token,t.webIdentityCredentials.refresh(function(r){r||(t.data=t.webIdentityCredentials.data,t.sts.credentialsFrom(t.data,t)),e(r)}))})},loadCachedId:function(){var e=this;if(a.util.isBrowser()&&!e.params.IdentityId){var t=e.getStorage("id");if(t&&e.params.Logins){var r=Object.keys(e.params.Logins);0!==(e.getStorage("providers")||"").split(",").filter(function(e){return-1!==r.indexOf(e)}).length&&(e.params.IdentityId=t)}else t&&(e.params.IdentityId=t)}},createClients:function(){var e=this._clientConfig;if(this.webIdentityCredentials=this.webIdentityCredentials||new a.WebIdentityCredentials(this.params,e),!this.cognito){var t=a.util.merge({},e);t.params=this.params,this.cognito=new i(t)}this.sts=this.sts||new s(e)},cacheId:function(e){this._identityId=e.IdentityId,this.params.IdentityId=this._identityId,a.util.isBrowser()&&(this.setStorage("id",e.IdentityId),this.params.Logins&&this.setStorage("providers",Object.keys(this.params.Logins).join(",")))},getStorage:function(e){return this.storage[this.localStorageKey[e]+this.params.IdentityPoolId+(this.params.LoginId||"")]},setStorage:function(e,t){try{this.storage[this.localStorageKey[e]+this.params.IdentityPoolId+(this.params.LoginId||"")]=t}catch(e){}},storage:function(){try{var e=a.util.isBrowser()&&null!==window.localStorage&&"object"==typeof window.localStorage?window.localStorage:{};return e["aws.test-storage"]="foobar",delete e["aws.test-storage"],e}catch(e){return{}}}()})},{"../../clients/cognitoidentity":258,"../../clients/sts":326,"../core":342}],346:[function(e,t,r){var a=e("../core");a.CredentialProviderChain=a.util.inherit(a.Credentials,{constructor:function(e){this.providers=e||a.CredentialProviderChain.defaultProviders.slice(0),this.resolveCallbacks=[]},resolve:function(e){function t(e,o){if(!e&&o||i===s.length)return a.util.arrayEach(r.resolveCallbacks,function(t){t(e,o)}),void(r.resolveCallbacks.length=0);var n=s[i++];o="function"==typeof n?n.call():n,o.get?o.get(function(e){t(e,e?null:o)}):t(null,o)}var r=this;if(0===r.providers.length)return e(new Error("No providers")),r;if(1===r.resolveCallbacks.push(e)){var i=0,s=r.providers.slice(0);t()}return r}}),a.CredentialProviderChain.defaultProviders=[],a.CredentialProviderChain.addPromisesToClass=function(e){this.prototype.resolvePromise=a.util.promisifyMethod("resolve",e)},a.CredentialProviderChain.deletePromisesFromClass=function(){delete this.prototype.resolvePromise},a.util.addPromises(a.CredentialProviderChain)},{"../core":342}],347:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.SAMLCredentials=a.util.inherit(a.Credentials,{constructor:function(e){a.Credentials.call(this),this.expired=!0,this.params=e},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.service.assumeRoleWithSAML(function(r,a){r||t.service.credentialsFrom(a,t),e(r)})},createClients:function(){this.service=this.service||new i({params:this.params})}})},{"../../clients/sts":326,"../core":342}],348:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.TemporaryCredentials=a.util.inherit(a.Credentials,{constructor:function(e,t){a.Credentials.call(this),this.loadMasterCredentials(t),this.expired=!0,this.params=e||{},this.params.RoleArn&&(this.params.RoleSessionName=this.params.RoleSessionName||"temporary-credentials")},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.masterCredentials.get(function(){t.service.config.credentials=t.masterCredentials,(t.params.RoleArn?t.service.assumeRole:t.service.getSessionToken).call(t.service,function(r,a){r||t.service.credentialsFrom(a,t),e(r)})})},loadMasterCredentials:function(e){for(this.masterCredentials=e||a.config.credentials;this.masterCredentials.masterCredentials;)this.masterCredentials=this.masterCredentials.masterCredentials;"function"!=typeof this.masterCredentials.get&&(this.masterCredentials=new a.Credentials(this.masterCredentials))},createClients:function(){this.service=this.service||new i({params:this.params})}})},{"../../clients/sts":326,"../core":342}],349:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.WebIdentityCredentials=a.util.inherit(a.Credentials,{constructor:function(e,t){a.Credentials.call(this),this.expired=!0,this.params=e,this.params.RoleSessionName=this.params.RoleSessionName||"web-identity",this.data=null,this._clientConfig=a.util.copy(t||{})},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.service.assumeRoleWithWebIdentity(function(r,a){t.data=null,r||(t.data=a,t.service.credentialsFrom(a,t)),e(r)})},createClients:function(){if(!this.service){var e=a.util.merge({},this._clientConfig);e.params=this.params,this.service=new i(e)}}})},{"../../clients/sts":326,"../core":342}],350:[function(e,t,r){(function(r){(function(){function a(e){var t=e.service,r=t.api||{},a={};return t.config.region&&(a.region=t.config.region),r.serviceId&&(a.serviceId=r.serviceId),t.config.credentials.accessKeyId&&(a.accessKeyId=t.config.credentials.accessKeyId),a}function i(e,t,r){r&&void 0!==t&&null!==t&&"structure"===r.type&&r.required&&r.required.length>0&&b.arrayEach(r.required,function(a){var s=r.members[a];if(!0===s.endpointDiscoveryId){var o=s.isLocationName?s.name:a;e[o]=String(t[a])}else i(e,t[a],s)})}function s(e,t){var r={};return i(r,e.params,t),r}function o(e){var t=e.service,r=t.api,i=r.operations?r.operations[e.operation]:void 0,o=i?i.input:void 0,n=s(e,o),p=a(e);Object.keys(n).length>0&&(p=b.update(p,n),i&&(p.operation=i.name));var m=y.endpointCache.get(p);if(!m||1!==m.length||""!==m[0].Address)if(m&&m.length>0)e.httpRequest.updateEndpoint(m[0].Address);else{var c=t.makeRequest(r.endpointOperation,{Operation:i.name,Identifiers:n});u(c),c.removeListener("validate",y.EventListeners.Core.VALIDATE_PARAMETERS),c.removeListener("retry",y.EventListeners.Core.RETRY_CHECK),y.endpointCache.put(p,[{Address:"",CachePeriodInMinutes:1}]),c.send(function(e,t){t&&t.Endpoints?y.endpointCache.put(p,t.Endpoints):e&&y.endpointCache.put(p,[{Address:"",CachePeriodInMinutes:1}])})}}function n(e,t){var r=e.service,i=r.api,o=i.operations?i.operations[e.operation]:void 0,n=o?o.input:void 0,p=s(e,n),m=a(e);Object.keys(p).length>0&&(m=b.update(m,p),o&&(m.operation=o.name));var c=y.EndpointCache.getKeyString(m),l=y.endpointCache.get(c);if(l&&1===l.length&&""===l[0].Address)return g[c]||(g[c]=[]),void g[c].push({request:e,callback:t});if(l&&l.length>0)e.httpRequest.updateEndpoint(l[0].Address),t();else{var d=r.makeRequest(i.endpointOperation,{Operation:o.name,Identifiers:p});d.removeListener("validate",y.EventListeners.Core.VALIDATE_PARAMETERS),u(d),y.endpointCache.put(c,[{Address:"",CachePeriodInMinutes:60}]),d.send(function(r,a){if(r){if(e.response.error=b.error(r,{retryable:!1}),y.endpointCache.remove(m),g[c]){var i=g[c];b.arrayEach(i,function(e){e.request.response.error=b.error(r,{retryable:!1}),e.callback()}),delete g[c]}}else if(a&&(y.endpointCache.put(c,a.Endpoints),e.httpRequest.updateEndpoint(a.Endpoints[0].Address),g[c])){var i=g[c];b.arrayEach(i,function(e){e.request.httpRequest.updateEndpoint(a.Endpoints[0].Address),e.callback()}),delete g[c]}t()})}}function u(e){var t=e.service.api,r=t.apiVersion;r&&!e.httpRequest.headers["x-amz-api-version"]&&(e.httpRequest.headers["x-amz-api-version"]=r)}function p(e){var t=e.error,r=e.httpResponse;if(t&&("InvalidEndpointException"===t.code||421===r.statusCode)){var i=e.request,o=i.service.api.operations||{},n=o[i.operation]?o[i.operation].input:void 0,u=s(i,n),p=a(i);Object.keys(u).length>0&&(p=b.update(p,u),o[i.operation]&&(p.operation=o[i.operation].name)),y.endpointCache.remove(p)}}function m(e){if(e._originalConfig&&e._originalConfig.endpoint&&!0===e._originalConfig.endpointDiscoveryEnabled)throw b.error(new Error,{code:"ConfigurationException",message:"Custom endpoint is supplied; endpointDiscoveryEnabled must not be true."});var t=y.config[e.serviceIdentifier]||{};return Boolean(y.config.endpoint||t.endpoint||e._originalConfig&&e._originalConfig.endpoint)}function c(e){return["false","0"].indexOf(e)>=0}function l(e){var t=e.service||{};if(void 0!==t.config.endpointDiscoveryEnabled)return t.config.endpointDiscoveryEnabled;if(!b.isBrowser()){for(var a=0;a=0;t-=8)this.write(this.totalLength>>t);var r=new i(20),a=new DataView(r.buffer);return a.setUint32(0,this.h0,!1),a.setUint32(4,this.h1,!1),a.setUint32(8,this.h2,!1),a.setUint32(12,this.h3,!1),a.setUint32(16,this.h4,!1),e?r.toString(e):r},a.prototype.processBlock=function(){for(var e=16;e<80;e++){var t=this.block[e-3]^this.block[e-8]^this.block[e-14]^this.block[e-16];this.block[e]=t<<1|t>>>31}var r,a,i=this.h0,s=this.h1,o=this.h2,n=this.h3,u=this.h4;for(e=0;e<80;e++){e<20?(r=n^s&(o^n),a=1518500249):e<40?(r=s^o^n,a=1859775393):e<60?(r=s&o|n&(s|o),a=2400959708):(r=s^o^n,a=3395469782);var p=(i<<5|i>>>27)+r+u+a+(0|this.block[e]);u=n,n=o,o=s<<30|s>>>2,s=i,i=p}for(this.h0=this.h0+i|0,this.h1=this.h1+s|0,this.h2=this.h2+o|0,this.h3=this.h3+n|0,this.h4=this.h4+u|0,this.offset=0,e=0;e<16;e++)this.block[e]=0}},{"./browserHashUtils":333,"buffer/":431}],337:[function(e,t,r){function a(){this.state=[1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225],this.temp=new Int32Array(64),this.buffer=new Uint8Array(64),this.bufferLength=0,this.bytesHashed=0,this.finished=!1}var i=e("buffer/").Buffer,s=e("./browserHashUtils"),o=new Uint32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),n=Math.pow(2,53)-1;t.exports=a,a.BLOCK_SIZE=64,a.prototype.update=function(e){if(this.finished)throw new Error("Attempted to update an already finished hash.");if(s.isEmptyData(e))return this;e=s.convertToBuffer(e);var t=0,r=e.byteLength;if(this.bytesHashed+=r,8*this.bytesHashed>n)throw new Error("Cannot hash more than 2^53 - 1 bits");for(;r>0;)this.buffer[this.bufferLength++]=e[t++],r--,64===this.bufferLength&&(this.hashBuffer(),this.bufferLength=0);return this},a.prototype.digest=function(e){if(!this.finished){var t=8*this.bytesHashed,r=new DataView(this.buffer.buffer,this.buffer.byteOffset,this.buffer.byteLength),a=this.bufferLength;if(r.setUint8(this.bufferLength++,128),a%64>=56){for(var s=this.bufferLength;s<64;s++)r.setUint8(s,0);this.hashBuffer(),this.bufferLength=0}for(var s=this.bufferLength;s<56;s++)r.setUint8(s,0);r.setUint32(56,Math.floor(t/4294967296),!0),r.setUint32(60,t),this.hashBuffer(),this.finished=!0}for(var o=new i(32),s=0;s<8;s++)o[4*s]=this.state[s]>>>24&255,o[4*s+1]=this.state[s]>>>16&255,o[4*s+2]=this.state[s]>>>8&255,o[4*s+3]=this.state[s]>>>0&255;return e?o.toString(e):o},a.prototype.hashBuffer=function(){for(var e=this,t=e.buffer,r=e.state,a=r[0],i=r[1],s=r[2],n=r[3],u=r[4],p=r[5],m=r[6],c=r[7],l=0;l<64;l++){if(l<16)this.temp[l]=(255&t[4*l])<<24|(255&t[4*l+1])<<16|(255&t[4*l+2])<<8|255&t[4*l+3];else{var d=this.temp[l-2],y=(d>>>17|d<<15)^(d>>>19|d<<13)^d>>>10;d=this.temp[l-15];var b=(d>>>7|d<<25)^(d>>>18|d<<14)^d>>>3;this.temp[l]=(y+this.temp[l-7]|0)+(b+this.temp[l-16]|0)}var S=(((u>>>6|u<<26)^(u>>>11|u<<21)^(u>>>25|u<<7))+(u&p^~u&m)|0)+(c+(o[l]+this.temp[l]|0)|0)|0,g=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+(a&i^a&s^i&s)|0;c=m,m=p,p=u,u=n+S|0,n=s,s=i,i=a,a=S+g|0}r[0]+=a,r[1]+=i,r[2]+=s,r[3]+=n,r[4]+=u,r[5]+=p,r[6]+=m,r[7]+=c}},{"./browserHashUtils":333,"buffer/":431}],338:[function(e,t,r){(function(r){(function(){var r=e("./util");r.crypto.lib=e("./browserCryptoLib"),r.Buffer=e("buffer/").Buffer,r.url=e("url/"),r.querystring=e("querystring/"),r.realClock=e("./realclock/browserClock"),r.environment="js",r.createEventStream=e("./event-stream/buffered-create-event-stream").createEventStream,r.isBrowser=function(){return!0},r.isNode=function(){return!1};var a=e("./core");if(t.exports=a,e("./credentials"),e("./credentials/credential_provider_chain"),e("./credentials/temporary_credentials"),e("./credentials/chainable_temporary_credentials"),e("./credentials/web_identity_credentials"),e("./credentials/cognito_identity_credentials"),e("./credentials/saml_credentials"),a.XML.Parser=e("./xml/browser_parser"),e("./http/xhr"),void 0===i)var i={browser:!0}}).call(this)}).call(this,e("_process"))},{"./browserCryptoLib":332,"./core":342,"./credentials":343,"./credentials/chainable_temporary_credentials":344,"./credentials/cognito_identity_credentials":345,"./credentials/credential_provider_chain":346,"./credentials/saml_credentials":347,"./credentials/temporary_credentials":348,"./credentials/web_identity_credentials":349,"./event-stream/buffered-create-event-stream":357,"./http/xhr":365,"./realclock/browserClock":384,"./util":419,"./xml/browser_parser":420,_process:436,"buffer/":431,"querystring/":443,"url/":445}],339:[function(e,t,r){var a=e("../core"),i=a.util.url,s=a.util.crypto.lib,o=a.util.base64.encode,n=a.util.inherit,u=function(e){var t={"+":"-","=":"_","/":"~"};return e.replace(/[\+=\/]/g,function(e){return t[e]})},p=function(e,t){var r=s.createSign("RSA-SHA1");return r.write(e),u(r.sign(t,"base64"))},m=function(e,t,r,a){var i=JSON.stringify({Statement:[{Resource:e,Condition:{DateLessThan:{"AWS:EpochTime":t}}}]});return{Expires:t,"Key-Pair-Id":r,Signature:p(i.toString(),a)}},c=function(e,t,r){return e=e.replace(/\s/gm,""),{Policy:u(o(e)),"Key-Pair-Id":t,Signature:p(e,r)}},l=function(e){var t=e.split("://");if(t.length<2)throw new Error("Invalid URL.");return t[0].replace("*","")},d=function(e){var t=i.parse(e);return t.path.replace(/^\//,"")+(t.hash||"")},y=function(e){switch(l(e)){case"http":case"https":return e;case"rtmp":return d(e);default:throw new Error("Invalid URI scheme. Scheme must be one of http, https, or rtmp")}},b=function(e,t){if(!t||"function"!=typeof t)throw e;t(e)},S=function(e,t){if(!t||"function"!=typeof t)return e;t(null,e)};a.CloudFront.Signer=n({constructor:function(e,t){if(void 0===e||void 0===t)throw new Error("A key pair ID and private key are required");this.keyPairId=e,this.privateKey=t},getSignedCookie:function(e,t){var r="policy"in e?c(e.policy,this.keyPairId,this.privateKey):m(e.url,e.expires,this.keyPairId,this.privateKey),a={};for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(a["CloudFront-"+i]=r[i]);return S(a,t)},getSignedUrl:function(e,t){try{var r=y(e.url)}catch(e){return b(e,t)}var a=i.parse(e.url,!0),s=Object.prototype.hasOwnProperty.call(e,"policy")?c(e.policy,this.keyPairId,this.privateKey):m(r,e.expires,this.keyPairId,this.privateKey);a.search=null;for(var o in s)Object.prototype.hasOwnProperty.call(s,o)&&(a.query[o]=s[o]);try{var n="rtmp"===l(e.url)?d(i.format(a)):i.format(a)}catch(e){return b(e,t)}return S(n,t)}}),t.exports=a.CloudFront.Signer},{"../core":342}],340:[function(e,t,r){var a=e("./core");e("./credentials"),e("./credentials/credential_provider_chain");var i;a.Config=a.util.inherit({constructor:function(e){void 0===e&&(e={}),e=this.extractCredentials(e),a.util.each.call(this,this.keys,function(t,r){this.set(t,e[t],r)})},getCredentials:function(e){function t(t){e(t,t?null:i.credentials)}function r(e,t){return new a.util.error(t||new Error,{code:"CredentialsError",message:e,name:"CredentialsError"})}var i=this;i.credentials?"function"==typeof i.credentials.get?function(){i.credentials.get(function(e){e&&(e=r("Could not load credentials from "+i.credentials.constructor.name,e)),t(e)})}():function(){var e=null;i.credentials.accessKeyId&&i.credentials.secretAccessKey||(e=r("Missing credentials")),t(e)}():i.credentialProvider?i.credentialProvider.resolve(function(e,a){e&&(e=r("Could not load credentials from any providers",e)),i.credentials=a,t(e)}):t(r("No credentials to load"))},getToken:function(e){function t(t){e(t,t?null:i.token)}function r(e,t){return new a.util.error(t||new Error,{code:"TokenError",message:e,name:"TokenError"})}var i=this;i.token?"function"==typeof i.token.get?function(){i.token.get(function(e){e&&(e=r("Could not load token from "+i.token.constructor.name,e)),t(e)})}():function(){var e=null;i.token.token||(e=r("Missing token")),t(e)}():i.tokenProvider?i.tokenProvider.resolve(function(e,a){e&&(e=r("Could not load token from any providers",e)),i.token=a,t(e)}):t(r("No token to load"))},update:function(e,t){t=t||!1,e=this.extractCredentials(e),a.util.each.call(this,e,function(e,r){(t||Object.prototype.hasOwnProperty.call(this.keys,e)||a.Service.hasService(e))&&this.set(e,r)})},loadFromPath:function(e){this.clear();var t=JSON.parse(a.util.readFileSync(e)),r=new a.FileSystemCredentials(e),i=new a.CredentialProviderChain;return i.providers.unshift(r),i.resolve(function(e,r){if(e)throw e;t.credentials=r}),this.constructor(t),this},clear:function(){a.util.each.call(this,this.keys,function(e){delete this[e]}),this.set("credentials",void 0),this.set("credentialProvider",void 0)},set:function(e,t,r){void 0===t?(void 0===r&&(r=this.keys[e]),this[e]="function"==typeof r?r.call(this):r):"httpOptions"===e&&this[e]?this[e]=a.util.merge(this[e],t):this[e]=t},keys:{credentials:null,credentialProvider:null,region:null,logger:null,apiVersions:{},apiVersion:null,endpoint:void 0,httpOptions:{timeout:12e4},maxRetries:void 0,maxRedirects:10,paramValidation:!0,sslEnabled:!0,s3ForcePathStyle:!1,s3BucketEndpoint:!1,s3DisableBodySigning:!0,s3UsEast1RegionalEndpoint:"legacy",s3UseArnRegion:void 0,computeChecksums:!0,convertResponseTypes:!0,correctClockSkew:!1,customUserAgent:null,dynamoDbCrc32:!0,systemClockOffset:0,signatureVersion:null,signatureCache:!0,retryDelayOptions:{},useAccelerateEndpoint:!1,clientSideMonitoring:!1,endpointDiscoveryEnabled:void 0,endpointCacheSize:1e3,hostPrefixEnabled:!0,stsRegionalEndpoints:"legacy",useFipsEndpoint:!1,useDualstackEndpoint:!1,token:null},extractCredentials:function(e){return e.accessKeyId&&e.secretAccessKey&&(e=a.util.copy(e),e.credentials=new a.Credentials(e)),e},setPromisesDependency:function(e){i=e,null===e&&"function"==typeof Promise&&(i=Promise);var t=[a.Request,a.Credentials,a.CredentialProviderChain];a.S3&&(t.push(a.S3),a.S3.ManagedUpload&&t.push(a.S3.ManagedUpload)),a.util.addPromises(t,i)},getPromisesDependency:function(){return i}}),a.config=new a.Config},{"./core":342,"./credentials":343,"./credentials/credential_provider_chain":346}],341:[function(e,t,r){(function(r){(function(){function a(e,t){if("string"==typeof e){if(["legacy","regional"].indexOf(e.toLowerCase())>=0)return e.toLowerCase();throw s.util.error(new Error,t)}}function i(e,t){e=e||{};var i;if(e[t.clientConfig]&&(i=a(e[t.clientConfig],{code:"InvalidConfiguration",message:'invalid "'+t.clientConfig+'" configuration. Expect "legacy" or "regional". Got "'+e[t.clientConfig]+'".'})))return i;if(!s.util.isNode())return i;if(Object.prototype.hasOwnProperty.call(r.env,t.env)){if(i=a(r.env[t.env],{code:"InvalidEnvironmentalVariable",message:"invalid "+t.env+' environmental variable. Expect "legacy" or "regional". Got "'+r.env[t.env]+'".'}))return i}var o={};try{o=s.util.getProfilesFromSharedConfig(s.util.iniLoader)[r.env.AWS_PROFILE||s.util.defaultProfile]}catch(e){}if(o&&Object.prototype.hasOwnProperty.call(o,t.sharedConfig)){if(i=a(o[t.sharedConfig],{code:"InvalidConfiguration",message:"invalid "+t.sharedConfig+' profile config. Expect "legacy" or "regional". Got "'+o[t.sharedConfig]+'".'}))return i}return i}var s=e("./core");t.exports=i}).call(this)}).call(this,e("_process"))},{"./core":342,_process:436}],342:[function(e,t,r){var a={util:e("./util")};({}).toString(),t.exports=a,a.util.update(a,{VERSION:"2.1205.0",Signers:{},Protocol:{Json:e("./protocol/json"),Query:e("./protocol/query"),Rest:e("./protocol/rest"),RestJson:e("./protocol/rest_json"),RestXml:e("./protocol/rest_xml")},XML:{Builder:e("./xml/builder"),Parser:null},JSON:{Builder:e("./json/builder"),Parser:e("./json/parser")},Model:{Api:e("./model/api"),Operation:e("./model/operation"),Shape:e("./model/shape"),Paginator:e("./model/paginator"),ResourceWaiter:e("./model/resource_waiter")},apiLoader:e("./api_loader"),EndpointCache:e("../vendor/endpoint-cache").EndpointCache}),e("./sequential_executor"),e("./service"),e("./config"),e("./http"),e("./event_listeners"),e("./request"),e("./response"),e("./resource_waiter"),e("./signers/request_signer"),e("./param_validator"),a.events=new a.SequentialExecutor,a.util.memoizedProperty(a,"endpointCache",function(){return new a.EndpointCache(a.config.endpointCacheSize)},!0)},{"../vendor/endpoint-cache":456,"./api_loader":331,"./config":340,"./event_listeners":363,"./http":364,"./json/builder":366,"./json/parser":367,"./model/api":368,"./model/operation":370,"./model/paginator":371,"./model/resource_waiter":372,"./model/shape":373,"./param_validator":374,"./protocol/json":377,"./protocol/query":378,"./protocol/rest":379,"./protocol/rest_json":380,"./protocol/rest_xml":381,"./request":388,"./resource_waiter":389,"./response":390,"./sequential_executor":392,"./service":393,"./signers/request_signer":411,"./util":419,"./xml/builder":421}],343:[function(e,t,r){var a=e("./core");a.Credentials=a.util.inherit({constructor:function(){if(a.util.hideProperties(this,["secretAccessKey"]),this.expired=!1,this.expireTime=null,this.refreshCallbacks=[],1===arguments.length&&"object"==typeof arguments[0]){var e=arguments[0].credentials||arguments[0];this.accessKeyId=e.accessKeyId,this.secretAccessKey=e.secretAccessKey,this.sessionToken=e.sessionToken}else this.accessKeyId=arguments[0],this.secretAccessKey=arguments[1],this.sessionToken=arguments[2]},expiryWindow:15,needsRefresh:function(){var e=a.util.date.getDate().getTime(),t=new Date(e+1e3*this.expiryWindow);return!!(this.expireTime&&t>this.expireTime)||(this.expired||!this.accessKeyId||!this.secretAccessKey)},get:function(e){var t=this;this.needsRefresh()?this.refresh(function(r){r||(t.expired=!1),e&&e(r)}):e&&e()},refresh:function(e){this.expired=!1,e()},coalesceRefresh:function(e,t){var r=this;1===r.refreshCallbacks.push(e)&&r.load(function(e){a.util.arrayEach(r.refreshCallbacks,function(r){t?r(e):a.util.defer(function(){r(e)})}),r.refreshCallbacks.length=0})},load:function(e){e()}}),a.Credentials.addPromisesToClass=function(e){this.prototype.getPromise=a.util.promisifyMethod("get",e),this.prototype.refreshPromise=a.util.promisifyMethod("refresh",e)},a.Credentials.deletePromisesFromClass=function(){delete this.prototype.getPromise,delete this.prototype.refreshPromise},a.util.addPromises(a.Credentials)},{"./core":342}],344:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.ChainableTemporaryCredentials=a.util.inherit(a.Credentials,{constructor:function(e){a.Credentials.call(this),e=e||{},this.errorCode="ChainableTemporaryCredentialsProviderFailure",this.expired=!0,this.tokenCodeFn=null;var t=a.util.copy(e.params)||{};if(t.RoleArn&&(t.RoleSessionName=t.RoleSessionName||"temporary-credentials"),t.SerialNumber){if(!e.tokenCodeFn||"function"!=typeof e.tokenCodeFn)throw new a.util.error(new Error("tokenCodeFn must be a function when params.SerialNumber is given"),{code:this.errorCode});this.tokenCodeFn=e.tokenCodeFn}var r=a.util.merge({params:t,credentials:e.masterCredentials||a.config.credentials},e.stsConfig||{});this.service=new i(r)},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this,r=t.service.config.params.RoleArn?"assumeRole":"getSessionToken";this.getTokenCode(function(a,i){var s={};if(a)return void e(a);i&&(s.TokenCode=i),t.service[r](s,function(r,a){r||t.service.credentialsFrom(a,t),e(r)})})},getTokenCode:function(e){var t=this;this.tokenCodeFn?this.tokenCodeFn(this.service.config.params.SerialNumber,function(r,i){if(r){var s=r;return r instanceof Error&&(s=r.message),void e(a.util.error(new Error("Error fetching MFA token: "+s),{code:t.errorCode}))}e(null,i)}):e(null)}})},{"../../clients/sts":326,"../core":342}],345:[function(e,t,r){var a=e("../core"),i=e("../../clients/cognitoidentity"),s=e("../../clients/sts");a.CognitoIdentityCredentials=a.util.inherit(a.Credentials,{localStorageKey:{id:"aws.cognito.identity-id.",providers:"aws.cognito.identity-providers."},constructor:function(e,t){a.Credentials.call(this),this.expired=!0,this.params=e,this.data=null,this._identityId=null,this._clientConfig=a.util.copy(t||{}),this.loadCachedId();var r=this;Object.defineProperty(this,"identityId",{get:function(){return r.loadCachedId(),r._identityId||r.params.IdentityId},set:function(e){r._identityId=e}})},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.data=null,t._identityId=null,t.getId(function(r){r?(t.clearIdOnNotAuthorized(r),e(r)):t.params.RoleArn?t.getCredentialsFromSTS(e):t.getCredentialsForIdentity(e)})},clearCachedId:function(){this._identityId=null,delete this.params.IdentityId;var e=this.params.IdentityPoolId,t=this.params.LoginId||"";delete this.storage[this.localStorageKey.id+e+t],delete this.storage[this.localStorageKey.providers+e+t]},clearIdOnNotAuthorized:function(e){var t=this;"NotAuthorizedException"==e.code&&t.clearCachedId()},getId:function(e){var t=this;if("string"==typeof t.params.IdentityId)return e(null,t.params.IdentityId);t.cognito.getId(function(r,a){!r&&a.IdentityId?(t.params.IdentityId=a.IdentityId,e(null,a.IdentityId)):e(r)})},loadCredentials:function(e,t){e&&t&&(t.expired=!1,t.accessKeyId=e.Credentials.AccessKeyId,t.secretAccessKey=e.Credentials.SecretKey,t.sessionToken=e.Credentials.SessionToken,t.expireTime=e.Credentials.Expiration)},getCredentialsForIdentity:function(e){var t=this;t.cognito.getCredentialsForIdentity(function(r,a){r?t.clearIdOnNotAuthorized(r):(t.cacheId(a),t.data=a,t.loadCredentials(t.data,t)),e(r)})},getCredentialsFromSTS:function(e){var t=this;t.cognito.getOpenIdToken(function(r,a){r?(t.clearIdOnNotAuthorized(r),e(r)):(t.cacheId(a),t.params.WebIdentityToken=a.Token,t.webIdentityCredentials.refresh(function(r){r||(t.data=t.webIdentityCredentials.data,t.sts.credentialsFrom(t.data,t)),e(r)}))})},loadCachedId:function(){var e=this;if(a.util.isBrowser()&&!e.params.IdentityId){var t=e.getStorage("id");if(t&&e.params.Logins){var r=Object.keys(e.params.Logins);0!==(e.getStorage("providers")||"").split(",").filter(function(e){return-1!==r.indexOf(e)}).length&&(e.params.IdentityId=t)}else t&&(e.params.IdentityId=t)}},createClients:function(){var e=this._clientConfig;if(this.webIdentityCredentials=this.webIdentityCredentials||new a.WebIdentityCredentials(this.params,e),!this.cognito){var t=a.util.merge({},e);t.params=this.params,this.cognito=new i(t)}this.sts=this.sts||new s(e)},cacheId:function(e){this._identityId=e.IdentityId,this.params.IdentityId=this._identityId,a.util.isBrowser()&&(this.setStorage("id",e.IdentityId),this.params.Logins&&this.setStorage("providers",Object.keys(this.params.Logins).join(",")))},getStorage:function(e){return this.storage[this.localStorageKey[e]+this.params.IdentityPoolId+(this.params.LoginId||"")]},setStorage:function(e,t){try{this.storage[this.localStorageKey[e]+this.params.IdentityPoolId+(this.params.LoginId||"")]=t}catch(e){}},storage:function(){try{var e=a.util.isBrowser()&&null!==window.localStorage&&"object"==typeof window.localStorage?window.localStorage:{};return e["aws.test-storage"]="foobar",delete e["aws.test-storage"],e}catch(e){return{}}}()})},{"../../clients/cognitoidentity":258,"../../clients/sts":326,"../core":342}],346:[function(e,t,r){var a=e("../core");a.CredentialProviderChain=a.util.inherit(a.Credentials,{constructor:function(e){this.providers=e||a.CredentialProviderChain.defaultProviders.slice(0),this.resolveCallbacks=[]},resolve:function(e){function t(e,o){if(!e&&o||i===s.length)return a.util.arrayEach(r.resolveCallbacks,function(t){t(e,o)}),void(r.resolveCallbacks.length=0);var n=s[i++];o="function"==typeof n?n.call():n,o.get?o.get(function(e){t(e,e?null:o)}):t(null,o)}var r=this;if(0===r.providers.length)return e(new Error("No providers")),r;if(1===r.resolveCallbacks.push(e)){var i=0,s=r.providers.slice(0);t()}return r}}),a.CredentialProviderChain.defaultProviders=[],a.CredentialProviderChain.addPromisesToClass=function(e){this.prototype.resolvePromise=a.util.promisifyMethod("resolve",e)},a.CredentialProviderChain.deletePromisesFromClass=function(){delete this.prototype.resolvePromise},a.util.addPromises(a.CredentialProviderChain)},{"../core":342}],347:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.SAMLCredentials=a.util.inherit(a.Credentials,{constructor:function(e){a.Credentials.call(this),this.expired=!0,this.params=e},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.service.assumeRoleWithSAML(function(r,a){r||t.service.credentialsFrom(a,t),e(r)})},createClients:function(){this.service=this.service||new i({params:this.params})}})},{"../../clients/sts":326,"../core":342}],348:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.TemporaryCredentials=a.util.inherit(a.Credentials,{constructor:function(e,t){a.Credentials.call(this),this.loadMasterCredentials(t),this.expired=!0,this.params=e||{},this.params.RoleArn&&(this.params.RoleSessionName=this.params.RoleSessionName||"temporary-credentials")},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.masterCredentials.get(function(){t.service.config.credentials=t.masterCredentials,(t.params.RoleArn?t.service.assumeRole:t.service.getSessionToken).call(t.service,function(r,a){r||t.service.credentialsFrom(a,t),e(r)})})},loadMasterCredentials:function(e){for(this.masterCredentials=e||a.config.credentials;this.masterCredentials.masterCredentials;)this.masterCredentials=this.masterCredentials.masterCredentials;"function"!=typeof this.masterCredentials.get&&(this.masterCredentials=new a.Credentials(this.masterCredentials))},createClients:function(){this.service=this.service||new i({params:this.params})}})},{"../../clients/sts":326,"../core":342}],349:[function(e,t,r){var a=e("../core"),i=e("../../clients/sts");a.WebIdentityCredentials=a.util.inherit(a.Credentials,{constructor:function(e,t){a.Credentials.call(this),this.expired=!0,this.params=e,this.params.RoleSessionName=this.params.RoleSessionName||"web-identity",this.data=null,this._clientConfig=a.util.copy(t||{})},refresh:function(e){this.coalesceRefresh(e||a.util.fn.callback)},load:function(e){var t=this;t.createClients(),t.service.assumeRoleWithWebIdentity(function(r,a){t.data=null,r||(t.data=a,t.service.credentialsFrom(a,t)),e(r)})},createClients:function(){if(!this.service){var e=a.util.merge({},this._clientConfig);e.params=this.params,this.service=new i(e)}}})},{"../../clients/sts":326,"../core":342}],350:[function(e,t,r){(function(r){(function(){function a(e){var t=e.service,r=t.api||{},a={};return t.config.region&&(a.region=t.config.region),r.serviceId&&(a.serviceId=r.serviceId),t.config.credentials.accessKeyId&&(a.accessKeyId=t.config.credentials.accessKeyId),a}function i(e,t,r){r&&void 0!==t&&null!==t&&"structure"===r.type&&r.required&&r.required.length>0&&b.arrayEach(r.required,function(a){var s=r.members[a];if(!0===s.endpointDiscoveryId){var o=s.isLocationName?s.name:a;e[o]=String(t[a])}else i(e,t[a],s)})}function s(e,t){var r={};return i(r,e.params,t),r}function o(e){var t=e.service,r=t.api,i=r.operations?r.operations[e.operation]:void 0,o=i?i.input:void 0,n=s(e,o),p=a(e);Object.keys(n).length>0&&(p=b.update(p,n),i&&(p.operation=i.name));var m=y.endpointCache.get(p);if(!m||1!==m.length||""!==m[0].Address)if(m&&m.length>0)e.httpRequest.updateEndpoint(m[0].Address);else{var c=t.makeRequest(r.endpointOperation,{Operation:i.name,Identifiers:n});u(c),c.removeListener("validate",y.EventListeners.Core.VALIDATE_PARAMETERS),c.removeListener("retry",y.EventListeners.Core.RETRY_CHECK),y.endpointCache.put(p,[{Address:"",CachePeriodInMinutes:1}]),c.send(function(e,t){t&&t.Endpoints?y.endpointCache.put(p,t.Endpoints):e&&y.endpointCache.put(p,[{Address:"",CachePeriodInMinutes:1}])})}}function n(e,t){var r=e.service,i=r.api,o=i.operations?i.operations[e.operation]:void 0,n=o?o.input:void 0,p=s(e,n),m=a(e);Object.keys(p).length>0&&(m=b.update(m,p),o&&(m.operation=o.name));var c=y.EndpointCache.getKeyString(m),l=y.endpointCache.get(c);if(l&&1===l.length&&""===l[0].Address)return g[c]||(g[c]=[]),void g[c].push({request:e,callback:t});if(l&&l.length>0)e.httpRequest.updateEndpoint(l[0].Address),t();else{var d=r.makeRequest(i.endpointOperation,{Operation:o.name,Identifiers:p});d.removeListener("validate",y.EventListeners.Core.VALIDATE_PARAMETERS),u(d),y.endpointCache.put(c,[{Address:"",CachePeriodInMinutes:60}]),d.send(function(r,a){if(r){if(e.response.error=b.error(r,{retryable:!1}),y.endpointCache.remove(m),g[c]){var i=g[c];b.arrayEach(i,function(e){e.request.response.error=b.error(r,{retryable:!1}),e.callback()}),delete g[c]}}else if(a&&(y.endpointCache.put(c,a.Endpoints),e.httpRequest.updateEndpoint(a.Endpoints[0].Address),g[c])){var i=g[c];b.arrayEach(i,function(e){e.request.httpRequest.updateEndpoint(a.Endpoints[0].Address),e.callback()}),delete g[c]}t()})}}function u(e){var t=e.service.api,r=t.apiVersion;r&&!e.httpRequest.headers["x-amz-api-version"]&&(e.httpRequest.headers["x-amz-api-version"]=r)}function p(e){var t=e.error,r=e.httpResponse;if(t&&("InvalidEndpointException"===t.code||421===r.statusCode)){var i=e.request,o=i.service.api.operations||{},n=o[i.operation]?o[i.operation].input:void 0,u=s(i,n),p=a(i);Object.keys(u).length>0&&(p=b.update(p,u),o[i.operation]&&(p.operation=o[i.operation].name)),y.endpointCache.remove(p)}}function m(e){if(e._originalConfig&&e._originalConfig.endpoint&&!0===e._originalConfig.endpointDiscoveryEnabled)throw b.error(new Error,{code:"ConfigurationException",message:"Custom endpoint is supplied; endpointDiscoveryEnabled must not be true."});var t=y.config[e.serviceIdentifier]||{};return Boolean(y.config.endpoint||t.endpoint||e._originalConfig&&e._originalConfig.endpoint)}function c(e){return["false","0"].indexOf(e)>=0}function l(e){var t=e.service||{};if(void 0!==t.config.endpointDiscoveryEnabled)return t.config.endpointDiscoveryEnabled;if(!b.isBrowser()){for(var a=0;a-1&&0===++e[t];t--);}var s=e("../core").util,o=s.buffer.toBuffer;a.fromNumber=function(e){if(e>0x8000000000000000||e<-0x8000000000000000)throw new Error(e+" is too large (or, if negative, too small) to represent as an Int64");for(var t=new Uint8Array(8),r=7,s=Math.abs(Math.round(e));r>-1&&s>0;r--,s/=256)t[r]=s;return e<0&&i(t),new a(t)},a.prototype.valueOf=function(){var e=this.bytes.slice(0),t=128&e[0];return t&&i(e),parseInt(e.toString("hex"),16)*(t?-1:1)},a.prototype.toString=function(){return String(this.valueOf())},t.exports={Int64:a}},{"../core":342}],360:[function(e,t,r){function a(e,t,r){var a=s(t),o=a.headers[":message-type"];if(o){if("error"===o.value)throw i(a);if("event"!==o.value)return}var n=a.headers[":event-type"],u=r.members[n.value];if(u){var p={},m=u.eventPayloadMemberName;if(m){var c=u.members[m];"binary"===c.type?p[m]=a.body:p[m]=e.parse(a.body.toString(),c)}for(var l=u.eventHeaderMemberNames,d=0;d=0)return e.httpRequest.headers["X-Amz-Content-Sha256"]="UNSIGNED-PAYLOAD",t();a.util.computeSha256(s,function(r,a){r?t(r):(e.httpRequest.headers["X-Amz-Content-Sha256"]=a,t())})}else t()}}),e("SET_CONTENT_LENGTH","afterBuild",function(e){var t=r(e),i=a.util.getRequestPayloadShape(e);if(void 0===e.httpRequest.headers["Content-Length"])try{var s=a.util.string.byteLength(e.httpRequest.body);e.httpRequest.headers["Content-Length"]=s}catch(r){if(i&&i.isStreaming){if(i.requiresLength)throw r;if(t.indexOf("unsigned-body")>=0)return void(e.httpRequest.headers["Transfer-Encoding"]="chunked");throw r}throw r}}),e("SET_HTTP_HOST","afterBuild",function(e){e.httpRequest.headers.Host=e.httpRequest.endpoint.host}),e("SET_TRACE_ID","afterBuild",function(e){if(a.util.isNode()&&!Object.hasOwnProperty.call(e.httpRequest.headers,"X-Amzn-Trace-Id")){var r=t.env.AWS_LAMBDA_FUNCTION_NAME,i=t.env._X_AMZN_TRACE_ID;"string"==typeof r&&r.length>0&&"string"==typeof i&&i.length>0&&(e.httpRequest.headers["X-Amzn-Trace-Id"]=i)}}),e("RESTART","restart",function(){var e=this.response.error;e&&e.retryable&&(this.httpRequest=new a.HttpRequest(this.service.endpoint,this.service.region),this.response.retryCount=600?this.emit("sign",[this],function(e){e?t(e):o()}):o()}),e("HTTP_HEADERS","httpHeaders",function(e,t,r,i){r.httpResponse.statusCode=e,r.httpResponse.statusMessage=i,r.httpResponse.headers=t,r.httpResponse.body=a.util.buffer.toBuffer(""),r.httpResponse.buffers=[],r.httpResponse.numBytes=0;var s=t.date||t.Date,o=r.request.service;if(s){var n=Date.parse(s);o.config.correctClockSkew&&o.isClockSkewed(n)&&o.applyClockOffset(n)}}),e("HTTP_DATA","httpData",function(e,t){if(e){if(a.util.isNode()){t.httpResponse.numBytes+=e.length;var r=t.httpResponse.headers["content-length"],i={loaded:t.httpResponse.numBytes,total:r};t.request.emit("httpDownloadProgress",[i,t])}t.httpResponse.buffers.push(a.util.buffer.toBuffer(e))}}),e("HTTP_DONE","httpDone",function(e){if(e.httpResponse.buffers&&e.httpResponse.buffers.length>0){var t=a.util.buffer.concat(e.httpResponse.buffers);e.httpResponse.body=t}delete e.httpResponse.numBytes,delete e.httpResponse.buffers}),e("FINALIZE_ERROR","retry",function(e){e.httpResponse.statusCode&&(e.error.statusCode=e.httpResponse.statusCode,void 0===e.error.retryable&&(e.error.retryable=this.service.retryableError(e.error,this)))}),e("INVALIDATE_CREDENTIALS","retry",function(e){if(e.error)switch(e.error.code){case"RequestExpired":case"ExpiredTokenException":case"ExpiredToken":e.error.retryable=!0,e.request.service.config.credentials.expired=!0}}),e("EXPIRED_SIGNATURE","retry",function(e){var t=e.error;t&&"string"==typeof t.code&&"string"==typeof t.message&&t.code.match(/Signature/)&&t.message.match(/expired/)&&(e.error.retryable=!0)}),e("CLOCK_SKEWED","retry",function(e){e.error&&this.service.clockSkewError(e.error)&&this.service.config.correctClockSkew&&(e.error.retryable=!0)}),e("REDIRECT","retry",function(e){e.error&&e.error.statusCode>=300&&e.error.statusCode<400&&e.httpResponse.headers.location&&(this.httpRequest.endpoint=new a.Endpoint(e.httpResponse.headers.location),this.httpRequest.headers.Host=this.httpRequest.endpoint.host,e.error.redirect=!0,e.error.retryable=!0)}),e("RETRY_CHECK","retry",function(e){e.error&&(e.error.redirect&&e.redirectCount=0?(e.error=null,setTimeout(t,r)):t()})}),CorePost:(new i).addNamedListeners(function(e){e("EXTRACT_REQUEST_ID","extractData",a.util.extractRequestId),e("EXTRACT_REQUEST_ID","extractError",a.util.extractRequestId),e("ENOTFOUND_ERROR","httpError",function(e){if("NetworkingError"===e.code&&function(e){return"ENOTFOUND"===e.errno||"number"==typeof e.errno&&"function"==typeof a.util.getSystemErrorName&&["EAI_NONAME","EAI_NODATA"].indexOf(a.util.getSystemErrorName(e.errno)>=0)}(e)){var t="Inaccessible host: `"+e.hostname+"' at port `"+e.port+"'. This service may not be available in the `"+e.region+"' region.";this.response.error=a.util.error(new Error(t),{code:"UnknownEndpoint",region:e.region,hostname:e.hostname,retryable:!0,originalError:e})}})}),Logger:(new i).addNamedListeners(function(t){t("LOG_REQUEST","complete",function(t){function r(e,t){if(!t)return t;if(e.isSensitive)return"***SensitiveInformation***";switch(e.type){case"structure":var i={};return a.util.each(t,function(t,a){Object.prototype.hasOwnProperty.call(e.members,t)?i[t]=r(e.members[t],a):i[t]=a}),i;case"list":var s=[];return a.util.arrayEach(t,function(t,a){s.push(r(e.member,t))}),s;case"map":var o={};return a.util.each(t,function(t,a){o[t]=r(e.value,a)}),o;default:return t}}var i=t.request,s=i.service.config.logger;if(s){var o=function(){var o=t.request.service.getSkewCorrectedDate().getTime(),n=(o-i.startTime.getTime())/1e3,u=!!s.isTTY,p=t.httpResponse.statusCode,m=i.params;if(i.service.api.operations&&i.service.api.operations[i.operation]&&i.service.api.operations[i.operation].input){m=r(i.service.api.operations[i.operation].input,i.params)}var c=e("util").inspect(m,!0,null),l="";return u&&(l+=""),l+="[AWS "+i.service.serviceIdentifier+" "+p,l+=" "+n.toString()+"s "+t.retryCount+" retries]",u&&(l+=""),l+=" "+a.util.string.lowerFirst(i.operation),l+="("+c+")",u&&(l+=""),l}();"function"==typeof s.log?s.log(o):"function"==typeof s.write&&s.write(o+"\n")}})}),Json:(new i).addNamedListeners(function(t){var r=e("./protocol/json");t("BUILD","build",r.buildRequest),t("EXTRACT_DATA","extractData",r.extractData),t("EXTRACT_ERROR","extractError",r.extractError)}),Rest:(new i).addNamedListeners(function(t){var r=e("./protocol/rest");t("BUILD","build",r.buildRequest),t("EXTRACT_DATA","extractData",r.extractData),t("EXTRACT_ERROR","extractError",r.extractError)}),RestJson:(new i).addNamedListeners(function(t){var r=e("./protocol/rest_json");t("BUILD","build",r.buildRequest),t("EXTRACT_DATA","extractData",r.extractData),t("EXTRACT_ERROR","extractError",r.extractError)}),RestXml:(new i).addNamedListeners(function(t){var r=e("./protocol/rest_xml");t("BUILD","build",r.buildRequest),t("EXTRACT_DATA","extractData",r.extractData),t("EXTRACT_ERROR","extractError",r.extractError)}),Query:(new i).addNamedListeners(function(t){var r=e("./protocol/query");t("BUILD","build",r.buildRequest),t("EXTRACT_DATA","extractData",r.extractData),t("EXTRACT_ERROR","extractError",r.extractError)})}}).call(this)}).call(this,e("_process"))},{"./core":342,"./discover_endpoint":350,"./protocol/json":377,"./protocol/query":378,"./protocol/rest":379,"./protocol/rest_json":380,"./protocol/rest_xml":381,"./sequential_executor":392,_process:436,util:430}],364:[function(e,t,r){var a=e("./core"),i=a.util.inherit;a.Endpoint=i({constructor:function(e,t){if(a.util.hideProperties(this,["slashes","auth","hash","search","query"]),void 0===e||null===e)throw new Error("Invalid endpoint: "+e);if("string"!=typeof e)return a.util.copy(e);if(!e.match(/^http/)){e=((t&&void 0!==t.sslEnabled?t.sslEnabled:a.config.sslEnabled)?"https":"http")+"://"+e}a.util.update(this,a.util.urlParse(e)),this.port?this.port=parseInt(this.port,10):this.port="https:"===this.protocol?443:80}}),a.HttpRequest=i({constructor:function(e,t){e=new a.Endpoint(e),this.method="POST",this.path=e.path||"/",this.headers={},this.body="",this.endpoint=e,this.region=t,this._userAgent="",this.setUserAgent()},setUserAgent:function(){this._userAgent=this.headers[this.getUserAgentHeaderName()]=a.util.userAgent()},getUserAgentHeaderName:function(){return(a.util.isBrowser()?"X-Amz-":"")+"User-Agent"},appendToUserAgent:function(e){"string"==typeof e&&e&&(this._userAgent+=" "+e),this.headers[this.getUserAgentHeaderName()]=this._userAgent},getUserAgent:function(){return this._userAgent},pathname:function(){return this.path.split("?",1)[0]},search:function(){var e=this.path.split("?",2)[1];return e?(e=a.util.queryStringParse(e),a.util.queryParamsToString(e)):""},updateEndpoint:function(e){var t=new a.Endpoint(e);this.endpoint=t,this.path=t.path||"/",this.headers.Host&&(this.headers.Host=t.host)}}),a.HttpResponse=i({constructor:function(){this.statusCode=void 0,this.headers={},this.body=void 0,this.streaming=!1,this.stream=null},createUnbufferedStream:function(){return this.streaming=!0,this.stream}}),a.HttpClient=i({}),a.HttpClient.getInstance=function(){return void 0===this.singleton&&(this.singleton=new this),this.singleton}},{"./core":342}],365:[function(e,t,r){var a=e("../core"),i=e("events").EventEmitter;e("../http"),a.XHRClient=a.util.inherit({handleRequest:function(e,t,r,s){var o=this,n=e.endpoint,u=new i,p=n.protocol+"//"+n.hostname;80!==n.port&&443!==n.port&&(p+=":"+n.port),p+=e.path;var m=new XMLHttpRequest,c=!1;e.stream=m,m.addEventListener("readystatechange",function(){try{if(0===m.status)return}catch(e){return}this.readyState>=this.HEADERS_RECEIVED&&!c&&(u.statusCode=m.status,u.headers=o.parseHeaders(m.getAllResponseHeaders()),u.emit("headers",u.statusCode,u.headers,m.statusText),c=!0),this.readyState===this.DONE&&o.finishRequest(m,u)},!1),m.upload.addEventListener("progress",function(e){u.emit("sendProgress",e)}),m.addEventListener("progress",function(e){u.emit("receiveProgress",e)},!1),m.addEventListener("timeout",function(){s(a.util.error(new Error("Timeout"),{code:"TimeoutError"}))},!1),m.addEventListener("error",function(){s(a.util.error(new Error("Network Failure"),{code:"NetworkingError"}))},!1),m.addEventListener("abort",function(){s(a.util.error(new Error("Request aborted"),{code:"RequestAbortedError"}))},!1),r(u),m.open(e.method,p,!1!==t.xhrAsync),a.util.each(e.headers,function(e,t){"Content-Length"!==e&&"User-Agent"!==e&&"Host"!==e&&m.setRequestHeader(e,t)}),t.timeout&&!1!==t.xhrAsync&&(m.timeout=t.timeout),t.xhrWithCredentials&&(m.withCredentials=!0);try{m.responseType="arraybuffer"}catch(e){}try{e.body?m.send(e.body):m.send()}catch(t){if(!e.body||"object"!=typeof e.body.buffer)throw t;m.send(e.body.buffer)}return u},parseHeaders:function(e){var t={};return a.util.arrayEach(e.split(/\r?\n/),function(e){var r=e.split(":",1)[0],a=e.substring(r.length+2);r.length>0&&(t[r.toLowerCase()]=a)}),t},finishRequest:function(e,t){var r;if("arraybuffer"===e.responseType&&e.response){var i=e.response;r=new a.util.Buffer(i.byteLength);for(var s=new Uint8Array(i),o=0;o-1?t||"":t,this.isJsonValue?JSON.parse(t):t&&"function"==typeof t.toString?t.toString():t},this.toWireFormat=function(e){return this.isJsonValue?JSON.stringify(e):e}}function l(){s.apply(this,arguments),this.toType=function(e){return null===e||void 0===e?null:parseFloat(e)},this.toWireFormat=this.toType}function d(){s.apply(this,arguments),this.toType=function(e){return null===e||void 0===e?null:parseInt(e,10)},this.toWireFormat=this.toType}function y(){s.apply(this,arguments),this.toType=function(e){var t=h.base64.decode(e);if(this.isSensitive&&h.isNode()&&"function"==typeof h.Buffer.alloc){var r=h.Buffer.alloc(t.length,t);t.fill(0),t=r}return t},this.toWireFormat=h.base64.encode}function b(){y.apply(this,arguments)}function S(){s.apply(this,arguments),this.toType=function(e){return"boolean"==typeof e?e:null===e||void 0===e?null:"true"===e}}var g=e("./collection"),h=e("../util");s.normalizedTypes={character:"string",double:"float",long:"integer",short:"integer",biginteger:"integer",bigdecimal:"float",blob:"binary"},s.types={structure:n,list:u,map:p,boolean:S,timestamp:m,float:l,integer:d,string:c,base64:b,binary:y},s.resolve=function(e,t){if(e.shape){var r=t.api.shapes[e.shape];if(!r)throw new Error("Cannot find shape reference: "+e.shape);return r}return null},s.create=function(e,t,r){if(e.isShape)return e;var a=s.resolve(e,t);if(a){var i=Object.keys(e);t.documentation||(i=i.filter(function(e){return!e.match(/documentation/)}));var o=function(){a.constructor.call(this,e,t,r)};return o.prototype=a,new o}e.type||(e.members?e.type="structure":e.member?e.type="list":e.key?e.type="map":e.type="string");var n=e.type;if(s.normalizedTypes[e.type]&&(e.type=s.normalizedTypes[e.type]),s.types[e.type])return new s.types[e.type](e,t,r);throw new Error("Unrecognized shape type: "+n)},s.shapes={StructureShape:n,ListShape:u,MapShape:p,StringShape:c,BooleanShape:S,Base64Shape:b},t.exports=s},{"../util":419,"./collection":369}],374:[function(e,t,r){var a=e("./core");a.ParamValidator=a.util.inherit({constructor:function(e){!0!==e&&void 0!==e||(e={min:!0}),this.validation=e},validate:function(e,t,r){if(this.errors=[],this.validateMember(e,t||{},r||"params"),this.errors.length>1){var i=this.errors.join("\n* ");throw i="There were "+this.errors.length+" validation errors:\n* "+i,a.util.error(new Error(i),{code:"MultipleValidationErrors",errors:this.errors})}if(1===this.errors.length)throw this.errors[0];return!0},fail:function(e,t){this.errors.push(a.util.error(new Error(t),{code:e}))},validateStructure:function(e,t,r){if(e.isDocument)return!0;this.validateType(t,r,["object"],"structure");for(var a,i=0;e.required&&i= 1, but found "'+t+'" for '+r)},validatePattern:function(e,t,r){this.validation.pattern&&void 0!==e.pattern&&(new RegExp(e.pattern).test(t)||this.fail("PatternMatchError",'Provided value "'+t+'" does not match regex pattern /'+e.pattern+"/ for "+r))},validateRange:function(e,t,r,a){this.validation.min&&void 0!==e.min&&t= "+e.min+", but found "+t+" for "+r),this.validation.max&&void 0!==e.max&&t>e.max&&this.fail("MaxRangeError","Expected "+a+" <= "+e.max+", but found "+t+" for "+r)},validateEnum:function(e,t,r){this.validation.enum&&void 0!==e.enum&&-1===e.enum.indexOf(t)&&this.fail("EnumError","Found string value of "+t+", but expected "+e.enum.join("|")+" for "+r)},validateType:function(e,t,r,i){if(null===e||void 0===e)return!1;for(var s=!1,o=0;o63)throw u.error(new Error,{code:"ValidationError",message:"Hostname label length should be between 1 to 63 characters, inclusive."});if(!r.test(e))throw p.util.error(new Error,{code:"ValidationError",message:e+" is not hostname compatible."})})}var u=e("../util"),p=e("../core");t.exports={populateHostPrefix:a}},{"../core":342,"../util":419}],377:[function(e,t,r){function a(e){var t=e.httpRequest,r=e.service.api,a=r.targetPrefix+"."+r.operations[e.operation].name,i=r.jsonVersion||"1.0",s=r.operations[e.operation].input,o=new n;1===i&&(i="1.0"),t.body=o.build(e.params||{},s),t.headers["Content-Type"]="application/x-amz-json-"+i,t.headers["X-Amz-Target"]=a,p(e)}function i(e){var t={},r=e.httpResponse;if(t.code=r.headers["x-amzn-errortype"]||"UnknownError","string"==typeof t.code&&(t.code=t.code.split(":")[0]),r.body.length>0)try{var a=JSON.parse(r.body.toString()),i=a.__type||a.code||a.Code;i&&(t.code=i.split("#").pop()),"RequestEntityTooLarge"===t.code?t.message="Request body must be less than 1 MB":t.message=a.message||a.Message||null}catch(a){t.statusCode=r.statusCode,t.message=r.statusMessage}else t.statusCode=r.statusCode,t.message=r.statusCode.toString();e.error=o.error(new Error,t)}function s(e){var t=e.httpResponse.body.toString()||"{}";if(!1===e.request.service.config.convertResponseTypes)e.data=JSON.parse(t);else{var r=e.request.service.api.operations[e.request.operation],a=r.output||{},i=new u;e.data=i.parse(t,a)}}var o=e("../util"),n=e("../json/builder"),u=e("../json/parser"),p=e("./helpers").populateHostPrefix;t.exports={buildRequest:a,extractError:i,extractData:s}},{"../json/builder":366,"../json/parser":367,"../util":419,"./helpers":376}],378:[function(e,t,r){function a(e){var t=e.service.api.operations[e.operation],r=e.httpRequest;r.headers["Content-Type"]="application/x-www-form-urlencoded; charset=utf-8",r.params={Version:e.service.api.apiVersion,Action:t.name},(new u).serialize(e.params,t.input,function(e,t){r.params[e]=t}),r.body=n.queryParamsToString(r.params),m(e)}function i(e){var t,r=e.httpResponse.body.toString();if(r.match("=0?"&":"?";var n=[];m.arrayEach(Object.keys(s).sort(),function(e){Array.isArray(s[e])||(s[e]=[s[e]]);for(var t=0;t0){t=new n.XML.Parser;var c=t.parse(a.toString(),s);u.update(e.data,c)}}var n=e("../core"),u=e("../util"),p=e("./rest");t.exports={buildRequest:i,extractError:s,extractData:o}},{"../core":342,"../util":419,"./rest":379}],382:[function(e,t,r){function a(){}function i(e){return e.isQueryName||"ec2"!==e.api.protocol?e.name:e.name[0].toUpperCase()+e.name.substr(1)}function s(e,t,r,a){p.each(r.members,function(r,s){var o=t[r];if(null!==o&&void 0!==o){var n=i(s);n=e?e+"."+n:n,u(n,o,s,a)}})}function o(e,t,r,a){var i=1;p.each(t,function(t,s){var o=r.flattened?".":".entry.",n=o+i+++".",p=n+(r.key.name||"key"),m=n+(r.value.name||"value");u(e+p,t,r.key,a),u(e+m,s,r.value,a)})}function n(e,t,r,a){var s=r.member||{};if(0===t.length)return void a.call(this,e,null);p.arrayEach(t,function(t,o){var n="."+(o+1);if("ec2"===r.api.protocol)n+="";else if(r.flattened){if(s.name){var p=e.split(".");p.pop(),p.push(i(s)),e=p.join(".")}}else n="."+(s.name?s.name:"member")+n;u(e+n,t,s,a)})}function u(e,t,r,a){null!==t&&void 0!==t&&("structure"===r.type?s(e,t,r,a):"list"===r.type?n(e,t,r,a):"map"===r.type?o(e,t,r,a):a(e,r.toWireFormat(t).toString()))}var p=e("../util");a.prototype.serialize=function(e,t,r){s("",e,t,r)},t.exports=a},{"../util":419}],383:[function(e,t,r){var a=e("../core"),i=null,s={signatureVersion:"v4",signingName:"rds-db",operations:{}},o={region:"string",hostname:"string",port:"number",username:"string"};a.RDS.Signer=a.util.inherit({constructor:function(e){this.options=e||{}},convertUrlToAuthToken:function(e){if(0===e.indexOf("https://"))return e.substring("https://".length)},getAuthToken:function(e,t){"function"==typeof e&&void 0===t&&(t=e,e={});var r=this,o="function"==typeof t;e=a.util.merge(this.options,e);var n=this.validateAuthTokenOptions(e);if(!0!==n){if(o)return t(n,null);throw n}var u={region:e.region,endpoint:new a.Endpoint(e.hostname+":"+e.port),paramValidation:!1,signatureVersion:"v4"};e.credentials&&(u.credentials=e.credentials),i=new a.Service(u),i.api=s;var p=i.makeRequest();if(this.modifyRequestForAuthToken(p,e),!o){var m=p.presign(900);return this.convertUrlToAuthToken(m)}p.presign(900,function(e,a){a&&(a=r.convertUrlToAuthToken(a)),t(e,a)})},modifyRequestForAuthToken:function(e,t){e.on("build",e.buildAsGet),e.httpRequest.body=a.util.queryParamsToString({Action:"connect",DBUser:t.username})},validateAuthTokenOptions:function(e){var t="";e=e||{};for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&typeof e[r]!==o[r]&&(t+="option '"+r+"' should have been type '"+o[r]+"', was '"+typeof e[r]+"'.\n");return!t.length||a.util.error(new Error,{code:"InvalidParameter",message:t})}})},{"../core":342}],384:[function(e,t,r){t.exports={now:function(){return"undefined"!=typeof performance&&"function"==typeof performance.now?performance.now():Date.now()}}},{}],385:[function(e,t,r){function a(e){return"string"==typeof e&&(e.startsWith("fips-")||e.endsWith("-fips"))}function i(e){return"string"==typeof e&&["aws-global","aws-us-gov-global"].includes(e)}function s(e){return["fips-aws-global","aws-fips","aws-global"].includes(e)?"us-east-1":["fips-aws-us-gov-global","aws-us-gov-global"].includes(e)?"us-gov-west-1":e.replace(/fips-(dkr-|prod-)?|-fips/,"")}t.exports={isFipsRegion:a,isGlobalRegion:i,getRealRegion:s}},{}],386:[function(e,t,r){function a(e){if(!e)return null;var t=e.split("-");return t.length<3?null:t.slice(0,t.length-2).join("-")+"-*"}function i(e){var t=e.config.region,r=a(t),i=e.api.endpointPrefix;return[[t,i],[r,i],[t,"*"],[r,"*"],["*",i],["*","*"]].map(function(e){return e[0]&&e[1]?e.join("/"):null})}function s(e,t){u.each(t,function(t,r){"globalEndpoint"!==t&&(void 0!==e.config[t]&&null!==e.config[t]||(e.config[t]=r))})}function o(e){for(var t=i(e),r=e.config.useFipsEndpoint,a=e.config.useDualstackEndpoint,o=0;o=0){u=!0;var p=0}var m=function(){u&&p!==n?i.emit("error",a.util.error(new Error("Stream content length mismatch. Received "+p+" of "+n+" bytes."),{code:"StreamContentLengthMismatch"})):2===a.HttpClient.streamsApiVersion?i.end():i.emit("end")},c=o.httpResponse.createUnbufferedStream();if(2===a.HttpClient.streamsApiVersion)if(u){var l=new e.PassThrough;l._write=function(t){return t&&t.length&&(p+=t.length),e.PassThrough.prototype._write.apply(this,arguments)},l.on("end",m),i.on("error",function(e){u=!1,c.unpipe(l),l.emit("end"),l.end()}),c.pipe(l).pipe(i,{end:!1})}else c.pipe(i);else u&&c.on("data",function(e){e&&e.length&&(p+=e.length)}),c.on("data",function(e){i.emit("data",e)}),c.on("end",m);c.on("error",function(e){u=!1,i.emit("error",e)})}}),i},emitEvent:function(e,t,r){"function"==typeof t&&(r=t,t=null),r||(r=function(){}),t||(t=this.eventParameters(e,this.response)),a.SequentialExecutor.prototype.emit.call(this,e,t,function(e){e&&(this.response.error=e),r.call(this,e)})},eventParameters:function(e){switch(e){case"restart":case"validate":case"sign":case"build":case"afterValidate":case"afterBuild":return[this];case"error":return[this.response.error,this.response];default:return[this.response]}},presign:function(e,t){return t||"function"!=typeof e||(t=e,e=null),(new a.Signers.Presign).sign(this.toGet(),e,t)},isPresigned:function(){return Object.prototype.hasOwnProperty.call(this.httpRequest.headers,"presigned-expires")},toUnauthenticated:function(){return this._unAuthenticated=!0,this.removeListener("validate",a.EventListeners.Core.VALIDATE_CREDENTIALS),this.removeListener("sign",a.EventListeners.Core.SIGN),this},toGet:function(){return"query"!==this.service.api.protocol&&"ec2"!==this.service.api.protocol||(this.removeListener("build",this.buildAsGet),this.addListener("build",this.buildAsGet)),this},buildAsGet:function(e){e.httpRequest.method="GET",e.httpRequest.path=e.service.endpoint.path+"?"+e.httpRequest.body,e.httpRequest.body="",delete e.httpRequest.headers["Content-Length"],delete e.httpRequest.headers["Content-Type"]},haltHandlersOnError:function(){this._haltHandlersOnError=!0}}),a.Request.addPromisesToClass=function(e){this.prototype.promise=function(){var t=this;return this.httpRequest.appendToUserAgent("promise"),new e(function(e,r){t.on("complete",function(t){t.error?r(t.error):e(Object.defineProperty(t.data||{},"$response",{value:t}))}),t.runTo()})}},a.Request.deletePromisesFromClass=function(){delete this.prototype.promise},a.util.addPromises(a.Request),a.util.mixin(a.Request,a.SequentialExecutor)}).call(this)}).call(this,e("_process"))},{"./core":342,"./state_machine":418,_process:436,jmespath:435}],389:[function(e,t,r){function a(e){var t=e.request._waiter,r=t.config.acceptors,a=!1,i="retry";r.forEach(function(r){if(!a){var s=t.matchers[r.matcher];s&&s(e,r.expected,r.argument)&&(a=!0,i=r.state)}}),!a&&e.error&&(i="failure"),"success"===i?t.setSuccess(e):t.setError(e,"retry"===i)}var i=e("./core"),s=i.util.inherit,o=e("jmespath");i.ResourceWaiter=s({constructor:function(e,t){this.service=e,this.state=t,this.loadWaiterConfig(this.state)},service:null,state:null,config:null,matchers:{path:function(e,t,r){try{var a=o.search(e.data,r)}catch(e){return!1}return o.strictDeepEqual(a,t)},pathAll:function(e,t,r){try{var a=o.search(e.data,r)}catch(e){return!1}Array.isArray(a)||(a=[a]);var i=a.length;if(!i)return!1;for(var s=0;s=1&&t.doneParts===t.numParts&&t.finishMultiPart()}))}r&&t.fillQueue.call(t)},abort:function(){var e=this;!0===e.isDoneChunking&&1===e.totalPartNumbers&&e.singlePart?e.singlePart.abort():e.cleanup(a.util.error(new Error("Request aborted by user"),{code:"RequestAbortedError",retryable:!1}))},validateBody:function(){var e=this;if(e.body=e.service.config.params.Body,"string"==typeof e.body)e.body=a.util.buffer.toBuffer(e.body);else if(!e.body)throw new Error("params.Body is required");e.sliceFn=a.util.arraySliceFn(e.body)},bindServiceObject:function(e){e=e||{};var t=this;if(t.service){var r=t.service,i=a.util.copy(r.config);i.signatureVersion=r.getSignatureVersion(),t.service=new r.constructor.__super__(i),t.service.config.params=a.util.merge(t.service.config.params||{},e),Object.defineProperty(t.service,"_originalConfig",{get:function(){return r._originalConfig},enumerable:!1,configurable:!0})}else t.service=new a.S3({params:e})},adjustTotalBytes:function(){var e=this;try{e.totalBytes=i(e.body)}catch(e){}if(e.totalBytes){var t=Math.ceil(e.totalBytes/e.maxTotalParts);t>e.partSize&&(e.partSize=t)}else e.totalBytes=void 0},isDoneChunking:!1,partPos:0,totalChunkedBytes:0,totalUploadedBytes:0,totalBytes:void 0,numParts:0,totalPartNumbers:0,activeParts:0,doneParts:0,parts:null,completeInfo:null,failed:!1,multipartReq:null,partBuffers:null,partBufferLength:0,fillBuffer:function(){var e=this,t=i(e.body);if(0===t)return e.isDoneChunking=!0,e.numParts=1,void e.nextChunk(e.body);for(;e.activeParts=e.queueSize)){var t=e.body.read(e.partSize-e.partBufferLength)||e.body.read();if(t&&(e.partBuffers.push(t),e.partBufferLength+=t.length,e.totalChunkedBytes+=t.length),e.partBufferLength>=e.partSize){var r=1===e.partBuffers.length?e.partBuffers[0]:s.concat(e.partBuffers);if(e.partBuffers=[],e.partBufferLength=0,r.length>e.partSize){var a=r.slice(e.partSize);e.partBuffers.push(a),e.partBufferLength+=a.length,r=r.slice(0,e.partSize)}e.nextChunk(r)}e.isDoneChunking&&!e.isDoneSending&&(r=1===e.partBuffers.length?e.partBuffers[0]:s.concat(e.partBuffers),e.partBuffers=[],e.partBufferLength=0,e.totalBytes=e.totalChunkedBytes,e.isDoneSending=!0,(0===e.numParts||r.length>0)&&(e.numParts++,e.nextChunk(r))),e.body.read(0)}},nextChunk:function(e){var t=this;if(t.failed)return null;var r=++t.totalPartNumbers;if(t.isDoneChunking&&1===r){var i={Body:e};this.tags&&(i.Tagging=this.getTaggingHeader());var s=t.service.putObject(i);return s._managedUpload=t,s.on("httpUploadProgress",t.progress).send(t.finishSinglePart),t.singlePart=s,null}if(t.service.config.params.ContentMD5){var o=a.util.error(new Error("The Content-MD5 you specified is invalid for multi-part uploads."),{code:"InvalidDigest",retryable:!1});return t.cleanup(o),null}if(t.completeInfo[r]&&null!==t.completeInfo[r].ETag)return null;t.activeParts++,t.service.config.params.UploadId?t.uploadPart(e,r):t.multipartReq?t.queueChunks(e,r):(t.multipartReq=t.service.createMultipartUpload(),t.multipartReq.on("success",function(e){t.service.config.params.UploadId=e.data.UploadId,t.multipartReq=null}),t.queueChunks(e,r),t.multipartReq.on("error",function(e){t.cleanup(e)}),t.multipartReq.send())},getTaggingHeader:function(){for(var e=[],t=0;t-1&&r.splice(i,1)}return this},removeAllListeners:function(e){return e?delete this._events[e]:this._events={},this},emit:function(e,t,r){r||(r=function(){});var a=this.listeners(e),i=a.length;return this.callListeners(a,t,r),i>0},callListeners:function(e,t,r,i){function s(i){if(i&&(n=a.util.error(n||new Error,i),o._haltHandlersOnError))return r.call(o,n);o.callListeners(e,t,r,n)}for(var o=this,n=i||null;e.length>0;){var u=e.shift();if(u._isAsync)return void u.apply(o,t.concat([s]));try{u.apply(o,t)}catch(e){n=a.util.error(n||new Error,e)}if(n&&o._haltHandlersOnError)return void r.call(o,n)}r.call(o,n)},addListeners:function(e){var t=this;return e._events&&(e=e._events),a.util.each(e,function(e,r){"function"==typeof r&&(r=[r]),a.util.arrayEach(r,function(r){t.on(e,r)})}),t},addNamedListener:function(e,t,r,a){return this[e]=r,this.addListener(t,r,a),this},addNamedAsyncListener:function(e,t,r,a){return r._isAsync=!0,this.addNamedListener(e,t,r,a)},addNamedListeners:function(e){var t=this;return e(function(){t.addNamedListener.apply(t,arguments)},function(){t.addNamedAsyncListener.apply(t,arguments)}),this}}),a.SequentialExecutor.prototype.addListener=a.SequentialExecutor.prototype.on,t.exports=a.SequentialExecutor},{"./core":342}],393:[function(e,t,r){(function(r){(function(){var a=e("./core"),i=e("./model/api"),s=e("./region_config"),o=a.util.inherit,n=0,u=e("./region/utils");a.Service=o({constructor:function(e){if(!this.loadServiceClass)throw a.util.error(new Error,"Service must be constructed with `new' operator");if(e){if(e.region){var t=e.region;u.isFipsRegion(t)&&(e.region=u.getRealRegion(t),e.useFipsEndpoint=!0),u.isGlobalRegion(t)&&(e.region=u.getRealRegion(t))}"boolean"==typeof e.useDualstack&&"boolean"!=typeof e.useDualstackEndpoint&&(e.useDualstackEndpoint=e.useDualstack)}var r=this.loadServiceClass(e||{});if(r){var i=a.util.copy(e),s=new r(e);return Object.defineProperty(s,"_originalConfig",{get:function(){return i},enumerable:!1,configurable:!0}),s._clientId=++n,s}this.initialize(e)},initialize:function(e){var t=a.config[this.serviceIdentifier];if(this.config=new a.Config(a.config),t&&this.config.update(t,!0),e&&this.config.update(e,!0),this.validateService(),this.config.endpoint||s.configureEndpoint(this),this.config.endpoint=this.endpointFromTemplate(this.config.endpoint),this.setEndpoint(this.config.endpoint),a.SequentialExecutor.call(this),a.Service.addDefaultMonitoringListeners(this),(this.config.clientSideMonitoring||a.Service._clientSideMonitoring)&&this.publisher){var i=this.publisher;this.addNamedListener("PUBLISH_API_CALL","apiCall",function(e){r.nextTick(function(){i.eventHandler(e)})}),this.addNamedListener("PUBLISH_API_ATTEMPT","apiCallAttempt",function(e){r.nextTick(function(){i.eventHandler(e)})})}},validateService:function(){},loadServiceClass:function(e){var t=e;if(a.util.isEmpty(this.api)){if(t.apiConfig)return a.Service.defineServiceApi(this.constructor,t.apiConfig);if(this.constructor.services){t=new a.Config(a.config),t.update(e,!0);var r=t.apiVersions[this.constructor.serviceIdentifier];return r=r||t.apiVersion,this.getLatestServiceClass(r)}return null}return null},getLatestServiceClass:function(e){return e=this.getLatestServiceVersion(e),null===this.constructor.services[e]&&a.Service.defineServiceApi(this.constructor,e),this.constructor.services[e]},getLatestServiceVersion:function(e){if(!this.constructor.services||0===this.constructor.services.length)throw new Error("No services defined on "+this.constructor.serviceIdentifier);if(e?a.util.isType(e,Date)&&(e=a.util.date.iso8601(e).split("T")[0]):e="latest",Object.hasOwnProperty(this.constructor.services,e))return e;for(var t=Object.keys(this.constructor.services).sort(),r=null,i=t.length-1;i>=0;i--)if("*"!==t[i][t[i].length-1]&&(r=t[i]),t[i].substr(0,10)<=e)return r;throw new Error("Could not find "+this.constructor.serviceIdentifier+" API to satisfy version constraint `"+e+"'")},api:{},defaultRetryCount:3,customizeRequests:function(e){if(e){if("function"!=typeof e)throw new Error("Invalid callback type '"+typeof e+"' provided in customizeRequests");this.customRequestHandler=e}else this.customRequestHandler=null},makeRequest:function(e,t,r){if("function"==typeof t&&(r=t,t=null),t=t||{},this.config.params){var i=this.api.operations[e];i&&(t=a.util.copy(t),a.util.each(this.config.params,function(e,r){i.input.members[e]&&(void 0!==t[e]&&null!==t[e]||(t[e]=r))}))}var s=new a.Request(this,e,t);return this.addAllRequestListeners(s),this.attachMonitoringEmitter(s),r&&s.send(r),s},makeUnauthenticatedRequest:function(e,t,r){"function"==typeof t&&(r=t,t={});var a=this.makeRequest(e,t).toUnauthenticated();return r?a.send(r):a},waitFor:function(e,t,r){return new a.ResourceWaiter(this,e).wait(t,r)},addAllRequestListeners:function(e){for(var t=[a.events,a.EventListeners.Core,this.serviceInterface(),a.EventListeners.CorePost],r=0;r299?(i.code&&(r.FinalAwsException=i.code),i.message&&(r.FinalAwsExceptionMessage=i.message)):((i.code||i.name)&&(r.FinalSdkException=i.code||i.name),i.message&&(r.FinalSdkExceptionMessage=i.message))}return r},apiAttemptEvent:function(e){var t=e.service.api.operations[e.operation],r={Type:"ApiCallAttempt",Api:t?t.name:e.operation,Version:1,Service:e.service.api.serviceId||e.service.api.endpointPrefix,Fqdn:e.httpRequest.endpoint.hostname,UserAgent:e.httpRequest.getUserAgent()},a=e.response;return a.httpResponse.statusCode&&(r.HttpStatusCode=a.httpResponse.statusCode),!e._unAuthenticated&&e.service.config.credentials&&e.service.config.credentials.accessKeyId&&(r.AccessKey=e.service.config.credentials.accessKeyId),a.httpResponse.headers?(e.httpRequest.headers["x-amz-security-token"]&&(r.SessionToken=e.httpRequest.headers["x-amz-security-token"]),a.httpResponse.headers["x-amzn-requestid"]&&(r.XAmznRequestId=a.httpResponse.headers["x-amzn-requestid"]),a.httpResponse.headers["x-amz-request-id"]&&(r.XAmzRequestId=a.httpResponse.headers["x-amz-request-id"]),a.httpResponse.headers["x-amz-id-2"]&&(r.XAmzId2=a.httpResponse.headers["x-amz-id-2"]),r):r},attemptFailEvent:function(e){var t=this.apiAttemptEvent(e),r=e.response,a=r.error;return r.httpResponse.statusCode>299?(a.code&&(t.AwsException=a.code),a.message&&(t.AwsExceptionMessage=a.message)):((a.code||a.name)&&(t.SdkException=a.code||a.name),a.message&&(t.SdkExceptionMessage=a.message)),t},attachMonitoringEmitter:function(e){var t,r,i,s,o,n,u=0,p=this;e.on("validate",function(){s=a.util.realClock.now(),n=Date.now()},!0),e.on("sign",function(){r=a.util.realClock.now(),t=Date.now(),o=e.httpRequest.region,u++},!0),e.on("validateResponse",function(){i=Math.round(a.util.realClock.now()-r)}),e.addNamedListener("API_CALL_ATTEMPT","success",function(){var r=p.apiAttemptEvent(e);r.Timestamp=t,r.AttemptLatency=i>=0?i:0,r.Region=o,p.emit("apiCallAttempt",[r])}),e.addNamedListener("API_CALL_ATTEMPT_RETRY","retry",function(){var s=p.attemptFailEvent(e);s.Timestamp=t,i=i||Math.round(a.util.realClock.now()-r),s.AttemptLatency=i>=0?i:0,s.Region=o,p.emit("apiCallAttempt",[s])}),e.addNamedListener("API_CALL","complete",function(){var t=p.apiCallEvent(e);if(t.AttemptCount=u,!(t.AttemptCount<=0)){t.Timestamp=n;var r=Math.round(a.util.realClock.now()-s);t.Latency=r>=0?r:0;var i=e.response;i.error&&i.error.retryable&&"number"==typeof i.retryCount&&"number"==typeof i.maxRetries&&i.retryCount>=i.maxRetries&&(t.MaxRetriesExceeded=1),p.emit("apiCall",[t])}})},setupRequestListeners:function(e){},getSigningName:function(){return this.api.signingName||this.api.endpointPrefix},getSignerClass:function(e){var t,r=null,i="";if(e){r=(e.service.api.operations||{})[e.operation]||null,i=r?r.authtype:""}return t=this.config.signatureVersion?this.config.signatureVersion:"v4"===i||"v4-unsigned-body"===i?"v4":"bearer"===i?"bearer":this.api.signatureVersion,a.Signers.RequestSigner.getVersion(t)},serviceInterface:function(){switch(this.api.protocol){case"ec2":case"query":return a.EventListeners.Query;case"json":return a.EventListeners.Json;case"rest-json":return a.EventListeners.RestJson;case"rest-xml":return a.EventListeners.RestXml}if(this.api.protocol)throw new Error("Invalid service `protocol' "+this.api.protocol+" in API config")},successfulResponse:function(e){return e.httpResponse.statusCode<300},numRetries:function(){return void 0!==this.config.maxRetries?this.config.maxRetries:this.defaultRetryCount},retryDelays:function(e,t){return a.util.calculateRetryDelay(e,this.config.retryDelayOptions,t)},retryableError:function(e){return!!this.timeoutError(e)||(!!this.networkingError(e)||(!!this.expiredCredentialsError(e)||(!!this.throttledError(e)||e.statusCode>=500)))},networkingError:function(e){return"NetworkingError"===e.code},timeoutError:function(e){return"TimeoutError"===e.code},expiredCredentialsError:function(e){return"ExpiredTokenException"===e.code},clockSkewError:function(e){switch(e.code){case"RequestTimeTooSkewed":case"RequestExpired":case"InvalidSignatureException":case"SignatureDoesNotMatch":case"AuthFailure":case"RequestInTheFuture":return!0;default:return!1}},getSkewCorrectedDate:function(){return new Date(Date.now()+this.config.systemClockOffset)},applyClockOffset:function(e){e&&(this.config.systemClockOffset=e-Date.now())},isClockSkewed:function(e){if(e)return Math.abs(this.getSkewCorrectedDate().getTime()-e)>=3e5},throttledError:function(e){if(429===e.statusCode)return!0;switch(e.code){case"ProvisionedThroughputExceededException":case"Throttling":case"ThrottlingException":case"RequestLimitExceeded":case"RequestThrottled":case"RequestThrottledException":case"TooManyRequestsException":case"TransactionInProgressException":case"EC2ThrottledException":return!0;default:return!1}},endpointFromTemplate:function(e){if("string"!=typeof e)return e;var t=e;return t=t.replace(/\{service\}/g,this.api.endpointPrefix),t=t.replace(/\{region\}/g,this.config.region),t=t.replace(/\{scheme\}/g,this.config.sslEnabled?"https":"http")},setEndpoint:function(e){this.endpoint=new a.Endpoint(e,this.config)},paginationConfig:function(e,t){var r=this.api.operations[e].paginator;if(!r){if(t){var i=new Error;throw a.util.error(i,"No pagination configuration for "+e)}return null}return r}}),a.util.update(a.Service,{defineMethods:function(e){a.util.each(e.prototype.api.operations,function(t){if(!e.prototype[t]){"none"===e.prototype.api.operations[t].authtype?e.prototype[t]=function(e,r){return this.makeUnauthenticatedRequest(t,e,r)}:e.prototype[t]=function(e,r){return this.makeRequest(t,e,r)}}})},defineService:function(e,t,r){a.Service._serviceMap[e]=!0,Array.isArray(t)||(r=t,t=[]);var i=o(a.Service,r||{});if("string"==typeof e){a.Service.addVersions(i,t);var s=i.serviceIdentifier||e;i.serviceIdentifier=s}else i.prototype.api=e,a.Service.defineMethods(i);if(a.SequentialExecutor.call(this.prototype),!this.prototype.publisher&&a.util.clientSideMonitoring){var n=a.util.clientSideMonitoring.Publisher,u=a.util.clientSideMonitoring.configProvider,p=u();this.prototype.publisher=new n(p),p.enabled&&(a.Service._clientSideMonitoring=!0)}return a.SequentialExecutor.call(i.prototype),a.Service.addDefaultMonitoringListeners(i.prototype),i},addVersions:function(e,t){Array.isArray(t)||(t=[t]),e.services=e.services||{};for(var r=0;r