@yxw007/translate 0.0.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.umd.js","sources":["../src/engines/google.ts","../src/engines/azure.ts","../node_modules/.pnpm/@smithy+protocol-http@4.1.0/node_modules/@smithy/protocol-http/dist-es/extensions/httpExtensionConfiguration.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/auth/auth.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/auth/HttpApiKeyAuth.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/endpoint.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/extensions/checksum.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/http.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/middleware.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/profile.js","../node_modules/.pnpm/@smithy+types@3.3.0/node_modules/@smithy/types/dist-es/transfer.js","../node_modules/.pnpm/@smithy+protocol-http@4.1.0/node_modules/@smithy/protocol-http/dist-es/httpRequest.js","../node_modules/.pnpm/@smithy+protocol-http@4.1.0/node_modules/@smithy/protocol-http/dist-es/httpResponse.js","../node_modules/.pnpm/@aws-sdk+middleware-host-header@3.620.0/node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","../node_modules/.pnpm/@aws-sdk+middleware-logger@3.609.0/node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","../node_modules/.pnpm/@aws-sdk+middleware-recursion-detection@3.620.0/node_modules/@aws-sdk/middleware-recursion-detection/dist-es/index.js","../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.637.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/isIpAddress.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/isValidHostLabel.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/customEndpointFunctions.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/debug/debugId.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/debug/toDebugString.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/types/EndpointError.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/booleanEquals.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/getAttrPathList.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/isSet.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/not.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/parseURL.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/stringEquals.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/substring.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/lib/uriEncode.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/endpointFunctions.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTemplate.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/getReferenceValue.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/callFunction.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperty.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointUrl.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTreeRule.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js","../node_modules/.pnpm/@smithy+util-endpoints@2.0.5/node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js","../node_modules/.pnpm/@aws-sdk+util-endpoints@3.637.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/isVirtualHostableS3Bucket.js","../node_modules/.pnpm/@aws-sdk+util-endpoints@3.637.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/parseArn.js","../node_modules/.pnpm/@aws-sdk+util-endpoints@3.637.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partition.js","../node_modules/.pnpm/@aws-sdk+util-endpoints@3.637.0/node_modules/@aws-sdk/util-endpoints/dist-es/aws.js","../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.637.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js","../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.637.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js","../node_modules/.pnpm/@smithy+util-config-provider@3.0.0/node_modules/@smithy/util-config-provider/dist-es/types.js","../node_modules/.pnpm/@smithy+config-resolver@3.0.5/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js","../node_modules/.pnpm/@smithy+config-resolver@3.0.5/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js","../node_modules/.pnpm/@smithy+util-middleware@3.0.3/node_modules/@smithy/util-middleware/dist-es/getSmithyContext.js","../node_modules/.pnpm/@smithy+util-middleware@3.0.3/node_modules/@smithy/util-middleware/dist-es/normalizeProvider.js","../node_modules/.pnpm/@smithy+config-resolver@3.0.5/node_modules/@smithy/config-resolver/dist-es/regionConfig/isFipsRegion.js","../node_modules/.pnpm/@smithy+config-resolver@3.0.5/node_modules/@smithy/config-resolver/dist-es/regionConfig/getRealRegion.js","../node_modules/.pnpm/@smithy+config-resolver@3.0.5/node_modules/@smithy/config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/s3.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/createConfigValueProvider.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromConfig.browser.js","../node_modules/.pnpm/@smithy+querystring-parser@3.0.3/node_modules/@smithy/querystring-parser/dist-es/index.js","../node_modules/.pnpm/@smithy+url-parser@3.0.3/node_modules/@smithy/url-parser/dist-es/index.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/toEndpointV1.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromInstructions.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/endpointMiddleware.js","../node_modules/.pnpm/@smithy+middleware-serde@3.0.3/node_modules/@smithy/middleware-serde/dist-es/deserializerMiddleware.js","../node_modules/.pnpm/@smithy+middleware-serde@3.0.3/node_modules/@smithy/middleware-serde/dist-es/serializerMiddleware.js","../node_modules/.pnpm/@smithy+middleware-serde@3.0.3/node_modules/@smithy/middleware-serde/dist-es/serdePlugin.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/getEndpointPlugin.js","../node_modules/.pnpm/@smithy+middleware-endpoint@3.1.0/node_modules/@smithy/middleware-endpoint/dist-es/resolveEndpointConfig.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/config.js","../node_modules/.pnpm/@smithy+service-error-classification@3.0.3/node_modules/@smithy/service-error-classification/dist-es/constants.js","../node_modules/.pnpm/@smithy+service-error-classification@3.0.3/node_modules/@smithy/service-error-classification/dist-es/index.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/constants.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/defaultRetryBackoffStrategy.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/defaultRetryToken.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js","../node_modules/.pnpm/@smithy+util-retry@3.0.3/node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js","../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/rng.js","../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/stringify.js","../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/native.js","../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-browser/v4.js","../node_modules/.pnpm/@smithy+middleware-retry@3.0.15/node_modules/@smithy/middleware-retry/dist-es/util.js","../node_modules/.pnpm/@smithy+middleware-retry@3.0.15/node_modules/@smithy/middleware-retry/dist-es/configurations.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/NoOpLogger.js","../node_modules/.pnpm/@smithy+middleware-stack@3.0.3/node_modules/@smithy/middleware-stack/dist-es/MiddlewareStack.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/client.js","../node_modules/.pnpm/@smithy+util-base64@3.0.0/node_modules/@smithy/util-base64/dist-es/constants.browser.js","../node_modules/.pnpm/@smithy+util-base64@3.0.0/node_modules/@smithy/util-base64/dist-es/fromBase64.browser.js","../node_modules/.pnpm/@smithy+util-utf8@3.0.0/node_modules/@smithy/util-utf8/dist-es/fromUtf8.browser.js","../node_modules/.pnpm/@smithy+util-utf8@3.0.0/node_modules/@smithy/util-utf8/dist-es/toUint8Array.js","../node_modules/.pnpm/@smithy+util-utf8@3.0.0/node_modules/@smithy/util-utf8/dist-es/toUtf8.browser.js","../node_modules/.pnpm/@smithy+util-base64@3.0.0/node_modules/@smithy/util-base64/dist-es/toBase64.browser.js","../node_modules/.pnpm/@smithy+util-stream@3.1.3/node_modules/@smithy/util-stream/dist-es/blob/transforms.js","../node_modules/.pnpm/@smithy+util-stream@3.1.3/node_modules/@smithy/util-stream/dist-es/blob/Uint8ArrayBlobAdapter.js","../node_modules/.pnpm/@smithy+util-uri-escape@3.0.0/node_modules/@smithy/util-uri-escape/dist-es/escape-uri.js","../node_modules/.pnpm/@smithy+querystring-builder@3.0.3/node_modules/@smithy/querystring-builder/dist-es/index.js","../node_modules/.pnpm/@smithy+fetch-http-handler@3.2.4/node_modules/@smithy/fetch-http-handler/dist-es/request-timeout.js","../node_modules/.pnpm/@smithy+fetch-http-handler@3.2.4/node_modules/@smithy/fetch-http-handler/dist-es/fetch-http-handler.js","../node_modules/.pnpm/@smithy+fetch-http-handler@3.2.4/node_modules/@smithy/fetch-http-handler/dist-es/stream-collector.js","../node_modules/.pnpm/@smithy+util-hex-encoding@3.0.0/node_modules/@smithy/util-hex-encoding/dist-es/index.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/collect-stream-body.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/command.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/exceptions.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/default-error-handler.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/defaults-mode.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/extensions/checksum.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/extensions/retry.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/extensions/defaultExtensionConfiguration.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/lazy-json.js","../node_modules/.pnpm/@smithy+smithy-client@3.2.0/node_modules/@smithy/smithy-client/dist-es/serde-json.js","../node_modules/.pnpm/@smithy+middleware-retry@3.0.15/node_modules/@smithy/middleware-retry/dist-es/isStreamingPayload/isStreamingPayload.browser.js","../node_modules/.pnpm/@smithy+middleware-retry@3.0.15/node_modules/@smithy/middleware-retry/dist-es/retryMiddleware.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js","../node_modules/.pnpm/@smithy+core@2.4.0/node_modules/@smithy/core/dist-es/normalizeProvider.js","../node_modules/.pnpm/@smithy+middleware-content-length@3.0.5/node_modules/@smithy/middleware-content-length/dist-es/index.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js","../node_modules/.pnpm/@smithy+property-provider@3.1.3/node_modules/@smithy/property-provider/dist-es/memoize.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/constants.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/credentialDerivation.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/getCanonicalQuery.js","../node_modules/.pnpm/@smithy+is-array-buffer@3.0.0/node_modules/@smithy/is-array-buffer/dist-es/index.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/getPayloadHash.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/headerUtil.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/moveHeadersToQuery.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/prepareRequest.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/utilDate.js","../node_modules/.pnpm/@smithy+signature-v4@4.1.0/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js","../node_modules/.pnpm/@aws-sdk+core@3.635.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/auth/httpAuthSchemeProvider.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/endpoint/EndpointParameters.js","../node_modules/.pnpm/@smithy+util-utf8@2.3.0/node_modules/@smithy/util-utf8/dist-es/fromUtf8.browser.js","../node_modules/.pnpm/@aws-crypto+util@5.2.0/node_modules/@aws-crypto/util/build/module/convertToBuffer.js","../node_modules/.pnpm/@aws-crypto+util@5.2.0/node_modules/@aws-crypto/util/build/module/isEmptyData.js","../node_modules/.pnpm/@aws-crypto+sha256-browser@5.2.0/node_modules/@aws-crypto/sha256-browser/build/module/constants.js","../node_modules/.pnpm/@aws-sdk+util-locate-window@3.568.0/node_modules/@aws-sdk/util-locate-window/dist-es/index.js","../node_modules/.pnpm/@aws-crypto+sha256-browser@5.2.0/node_modules/@aws-crypto/sha256-browser/build/module/webCryptoSha256.js","../node_modules/.pnpm/@rollup+plugin-typescript@11.1.6_rollup@4.21.2_tslib@2.7.0_typescript@5.5.4/node_modules/tslib/tslib.es6.js","../node_modules/.pnpm/@aws-crypto+sha256-js@5.2.0/node_modules/@aws-crypto/sha256-js/build/module/constants.js","../node_modules/.pnpm/@aws-crypto+sha256-js@5.2.0/node_modules/@aws-crypto/sha256-js/build/module/RawSha256.js","../node_modules/.pnpm/@aws-crypto+sha256-js@5.2.0/node_modules/@aws-crypto/sha256-js/build/module/jsSha256.js","../node_modules/.pnpm/@aws-crypto+supports-web-crypto@5.2.0/node_modules/@aws-crypto/supports-web-crypto/build/module/supportsWebCrypto.js","../node_modules/.pnpm/@aws-crypto+sha256-browser@5.2.0/node_modules/@aws-crypto/sha256-browser/build/module/crossPlatformSha256.js","../node_modules/.pnpm/bowser@2.11.0/node_modules/bowser/es5.js","../node_modules/.pnpm/@aws-sdk+util-user-agent-browser@3.609.0/node_modules/@aws-sdk/util-user-agent-browser/dist-es/index.js","../node_modules/.pnpm/@smithy+invalid-dependency@3.0.3/node_modules/@smithy/invalid-dependency/dist-es/invalidProvider.js","../node_modules/.pnpm/@smithy+util-body-length-browser@3.0.0/node_modules/@smithy/util-body-length-browser/dist-es/calculateBodyLength.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/endpoint/ruleset.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/endpoint/endpointResolver.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/runtimeConfig.shared.js","../node_modules/.pnpm/@smithy+util-defaults-mode-browser@3.0.15/node_modules/@smithy/util-defaults-mode-browser/dist-es/constants.js","../node_modules/.pnpm/@smithy+util-defaults-mode-browser@3.0.15/node_modules/@smithy/util-defaults-mode-browser/dist-es/resolveDefaultsModeConfig.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/runtimeConfig.browser.js","../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.614.0/node_modules/@aws-sdk/region-config-resolver/dist-es/extensions/index.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/auth/httpAuthExtensionConfiguration.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/runtimeExtensions.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/TranslateClient.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/models/TranslateServiceException.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/models/models_0.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/protocols/Aws_json1_1.js","../node_modules/.pnpm/@aws-sdk+client-translate@3.637.0/node_modules/@aws-sdk/client-translate/dist-es/commands/TranslateTextCommand.js","../src/engines/amazon.ts","../node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/core.js","../node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/md5.js","../src/engines/baidu.ts","../src/engines/index.ts","../src/language/iso.ts","../src/language/index.ts","../src/utils/cache.ts","../src/utils/logger.ts","../src/index.ts"],"sourcesContent":[null,null,"export const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {\n let httpHandler = runtimeConfig.httpHandler;\n return {\n setHttpHandler(handler) {\n httpHandler = handler;\n },\n httpHandler() {\n return httpHandler;\n },\n updateHttpClientConfig(key, value) {\n httpHandler.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return httpHandler.httpHandlerConfigs();\n },\n };\n};\nexport const resolveHttpHandlerRuntimeConfig = (httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler(),\n };\n};\n","export var HttpAuthLocation;\n(function (HttpAuthLocation) {\n HttpAuthLocation[\"HEADER\"] = \"header\";\n HttpAuthLocation[\"QUERY\"] = \"query\";\n})(HttpAuthLocation || (HttpAuthLocation = {}));\n","export var HttpApiKeyAuthLocation;\n(function (HttpApiKeyAuthLocation) {\n HttpApiKeyAuthLocation[\"HEADER\"] = \"header\";\n HttpApiKeyAuthLocation[\"QUERY\"] = \"query\";\n})(HttpApiKeyAuthLocation || (HttpApiKeyAuthLocation = {}));\n","export var EndpointURLScheme;\n(function (EndpointURLScheme) {\n EndpointURLScheme[\"HTTP\"] = \"http\";\n EndpointURLScheme[\"HTTPS\"] = \"https\";\n})(EndpointURLScheme || (EndpointURLScheme = {}));\n","export var AlgorithmId;\n(function (AlgorithmId) {\n AlgorithmId[\"MD5\"] = \"md5\";\n AlgorithmId[\"CRC32\"] = \"crc32\";\n AlgorithmId[\"CRC32C\"] = \"crc32c\";\n AlgorithmId[\"SHA1\"] = \"sha1\";\n AlgorithmId[\"SHA256\"] = \"sha256\";\n})(AlgorithmId || (AlgorithmId = {}));\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n if (runtimeConfig.sha256 !== undefined) {\n checksumAlgorithms.push({\n algorithmId: () => AlgorithmId.SHA256,\n checksumConstructor: () => runtimeConfig.sha256,\n });\n }\n if (runtimeConfig.md5 != undefined) {\n checksumAlgorithms.push({\n algorithmId: () => AlgorithmId.MD5,\n checksumConstructor: () => runtimeConfig.md5,\n });\n }\n return {\n _checksumAlgorithms: checksumAlgorithms,\n addChecksumAlgorithm(algo) {\n this._checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return this._checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n","export var FieldPosition;\n(function (FieldPosition) {\n FieldPosition[FieldPosition[\"HEADER\"] = 0] = \"HEADER\";\n FieldPosition[FieldPosition[\"TRAILER\"] = 1] = \"TRAILER\";\n})(FieldPosition || (FieldPosition = {}));\n","export const SMITHY_CONTEXT_KEY = \"__smithy_context\";\n","export var IniSectionType;\n(function (IniSectionType) {\n IniSectionType[\"PROFILE\"] = \"profile\";\n IniSectionType[\"SSO_SESSION\"] = \"sso-session\";\n IniSectionType[\"SERVICES\"] = \"services\";\n})(IniSectionType || (IniSectionType = {}));\n","export var RequestHandlerProtocol;\n(function (RequestHandlerProtocol) {\n RequestHandlerProtocol[\"HTTP_0_9\"] = \"http/0.9\";\n RequestHandlerProtocol[\"HTTP_1_0\"] = \"http/1.0\";\n RequestHandlerProtocol[\"TDS_8_0\"] = \"tds/8.0\";\n})(RequestHandlerProtocol || (RequestHandlerProtocol = {}));\n","export class HttpRequest {\n constructor(options) {\n this.method = options.method || \"GET\";\n this.hostname = options.hostname || \"localhost\";\n this.port = options.port;\n this.query = options.query || {};\n this.headers = options.headers || {};\n this.body = options.body;\n this.protocol = options.protocol\n ? options.protocol.slice(-1) !== \":\"\n ? `${options.protocol}:`\n : options.protocol\n : \"https:\";\n this.path = options.path ? (options.path.charAt(0) !== \"/\" ? `/${options.path}` : options.path) : \"/\";\n this.username = options.username;\n this.password = options.password;\n this.fragment = options.fragment;\n }\n static clone(request) {\n const cloned = new HttpRequest({\n ...request,\n headers: { ...request.headers },\n });\n if (cloned.query) {\n cloned.query = cloneQuery(cloned.query);\n }\n return cloned;\n }\n static isInstance(request) {\n if (!request) {\n return false;\n }\n const req = request;\n return (\"method\" in req &&\n \"protocol\" in req &&\n \"hostname\" in req &&\n \"path\" in req &&\n typeof req[\"query\"] === \"object\" &&\n typeof req[\"headers\"] === \"object\");\n }\n clone() {\n return HttpRequest.clone(this);\n }\n}\nfunction cloneQuery(query) {\n return Object.keys(query).reduce((carry, paramName) => {\n const param = query[paramName];\n return {\n ...carry,\n [paramName]: Array.isArray(param) ? [...param] : param,\n };\n }, {});\n}\n","export class HttpResponse {\n constructor(options) {\n this.statusCode = options.statusCode;\n this.reason = options.reason;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n static isInstance(response) {\n if (!response)\n return false;\n const resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n }\n}\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport const hostHeaderMiddleware = (options) => (next) => async (args) => {\n if (!HttpRequest.isInstance(args.request))\n return next(args);\n const { request } = args;\n const { handlerProtocol = \"\" } = options.requestHandler.metadata || {};\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = request.hostname + (request.port ? \":\" + request.port : \"\");\n }\n else if (!request.headers[\"host\"]) {\n let host = request.hostname;\n if (request.port != null)\n host += `:${request.port}`;\n request.headers[\"host\"] = host;\n }\n return next(args);\n};\nexport const hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport const getHostHeaderPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n});\n","export const loggerMiddleware = () => (next, context) => async (args) => {\n try {\n const response = await next(args);\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;\n const { $metadata, ...outputWithoutMetadata } = response.output;\n logger?.info?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n return response;\n }\n catch (error) {\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n logger?.error?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n error,\n metadata: error.$metadata,\n });\n throw error;\n }\n};\nexport const loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport const getLoggerPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n});\n","import { HttpRequest } from \"@smithy/protocol-http\";\nconst TRACE_ID_HEADER_NAME = \"X-Amzn-Trace-Id\";\nconst ENV_LAMBDA_FUNCTION_NAME = \"AWS_LAMBDA_FUNCTION_NAME\";\nconst ENV_TRACE_ID = \"_X_AMZN_TRACE_ID\";\nexport const recursionDetectionMiddleware = (options) => (next) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request) ||\n options.runtime !== \"node\" ||\n request.headers.hasOwnProperty(TRACE_ID_HEADER_NAME)) {\n return next(args);\n }\n const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];\n const traceId = process.env[ENV_TRACE_ID];\n const nonEmptyString = (str) => typeof str === \"string\" && str.length > 0;\n if (nonEmptyString(functionName) && nonEmptyString(traceId)) {\n request.headers[TRACE_ID_HEADER_NAME] = traceId;\n }\n return next({\n ...args,\n request,\n });\n};\nexport const addRecursionDetectionMiddlewareOptions = {\n step: \"build\",\n tags: [\"RECURSION_DETECTION\"],\n name: \"recursionDetectionMiddleware\",\n override: true,\n priority: \"low\",\n};\nexport const getRecursionDetectionPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(recursionDetectionMiddleware(options), addRecursionDetectionMiddlewareOptions);\n },\n});\n","export function resolveUserAgentConfig(input) {\n return {\n ...input,\n customUserAgent: typeof input.customUserAgent === \"string\" ? [[input.customUserAgent]] : input.customUserAgent,\n };\n}\n","const IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$`);\nexport const isIpAddress = (value) => IP_V4_REGEX.test(value) || (value.startsWith(\"[\") && value.endsWith(\"]\"));\n","const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);\nexport const isValidHostLabel = (value, allowSubDomains = false) => {\n if (!allowSubDomains) {\n return VALID_HOST_LABEL_REGEX.test(value);\n }\n const labels = value.split(\".\");\n for (const label of labels) {\n if (!isValidHostLabel(label)) {\n return false;\n }\n }\n return true;\n};\n","export const customEndpointFunctions = {};\n","export const debugId = \"endpoints\";\n","export function toDebugString(input) {\n if (typeof input !== \"object\" || input == null) {\n return input;\n }\n if (\"ref\" in input) {\n return `$${toDebugString(input.ref)}`;\n }\n if (\"fn\" in input) {\n return `${input.fn}(${(input.argv || []).map(toDebugString).join(\", \")})`;\n }\n return JSON.stringify(input, null, 2);\n}\n","export class EndpointError extends Error {\n constructor(message) {\n super(message);\n this.name = \"EndpointError\";\n }\n}\n","export const booleanEquals = (value1, value2) => value1 === value2;\n","import { EndpointError } from \"../types\";\nexport const getAttrPathList = (path) => {\n const parts = path.split(\".\");\n const pathList = [];\n for (const part of parts) {\n const squareBracketIndex = part.indexOf(\"[\");\n if (squareBracketIndex !== -1) {\n if (part.indexOf(\"]\") !== part.length - 1) {\n throw new EndpointError(`Path: '${path}' does not end with ']'`);\n }\n const arrayIndex = part.slice(squareBracketIndex + 1, -1);\n if (Number.isNaN(parseInt(arrayIndex))) {\n throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`);\n }\n if (squareBracketIndex !== 0) {\n pathList.push(part.slice(0, squareBracketIndex));\n }\n pathList.push(arrayIndex);\n }\n else {\n pathList.push(part);\n }\n }\n return pathList;\n};\n","import { EndpointError } from \"../types\";\nimport { getAttrPathList } from \"./getAttrPathList\";\nexport const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {\n if (typeof acc !== \"object\") {\n throw new EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`);\n }\n else if (Array.isArray(acc)) {\n return acc[parseInt(index)];\n }\n return acc[index];\n}, value);\n","export const isSet = (value) => value != null;\n","export const not = (value) => !value;\n","import { EndpointURLScheme } from \"@smithy/types\";\nimport { isIpAddress } from \"./isIpAddress\";\nconst DEFAULT_PORTS = {\n [EndpointURLScheme.HTTP]: 80,\n [EndpointURLScheme.HTTPS]: 443,\n};\nexport const parseURL = (value) => {\n const whatwgURL = (() => {\n try {\n if (value instanceof URL) {\n return value;\n }\n if (typeof value === \"object\" && \"hostname\" in value) {\n const { hostname, port, protocol = \"\", path = \"\", query = {} } = value;\n const url = new URL(`${protocol}//${hostname}${port ? `:${port}` : \"\"}${path}`);\n url.search = Object.entries(query)\n .map(([k, v]) => `${k}=${v}`)\n .join(\"&\");\n return url;\n }\n return new URL(value);\n }\n catch (error) {\n return null;\n }\n })();\n if (!whatwgURL) {\n console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);\n return null;\n }\n const urlString = whatwgURL.href;\n const { host, hostname, pathname, protocol, search } = whatwgURL;\n if (search) {\n return null;\n }\n const scheme = protocol.slice(0, -1);\n if (!Object.values(EndpointURLScheme).includes(scheme)) {\n return null;\n }\n const isIp = isIpAddress(hostname);\n const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) ||\n (typeof value === \"string\" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`));\n const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;\n return {\n scheme,\n authority,\n path: pathname,\n normalizedPath: pathname.endsWith(\"/\") ? pathname : `${pathname}/`,\n isIp,\n };\n};\n","export const stringEquals = (value1, value2) => value1 === value2;\n","export const substring = (input, start, stop, reverse) => {\n if (start >= stop || input.length < stop) {\n return null;\n }\n if (!reverse) {\n return input.substring(start, stop);\n }\n return input.substring(input.length - stop, input.length - start);\n};\n","export const uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);\n","import { booleanEquals, getAttr, isSet, isValidHostLabel, not, parseURL, stringEquals, substring, uriEncode, } from \"../lib\";\nexport const endpointFunctions = {\n booleanEquals,\n getAttr,\n isSet,\n isValidHostLabel,\n not,\n parseURL,\n stringEquals,\n substring,\n uriEncode,\n};\n","import { getAttr } from \"../lib\";\nexport const evaluateTemplate = (template, options) => {\n const evaluatedTemplateArr = [];\n const templateContext = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n let currentIndex = 0;\n while (currentIndex < template.length) {\n const openingBraceIndex = template.indexOf(\"{\", currentIndex);\n if (openingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(currentIndex));\n break;\n }\n evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));\n const closingBraceIndex = template.indexOf(\"}\", openingBraceIndex);\n if (closingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex));\n break;\n }\n if (template[openingBraceIndex + 1] === \"{\" && template[closingBraceIndex + 1] === \"}\") {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));\n currentIndex = closingBraceIndex + 2;\n }\n const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);\n if (parameterName.includes(\"#\")) {\n const [refName, attrName] = parameterName.split(\"#\");\n evaluatedTemplateArr.push(getAttr(templateContext[refName], attrName));\n }\n else {\n evaluatedTemplateArr.push(templateContext[parameterName]);\n }\n currentIndex = closingBraceIndex + 1;\n }\n return evaluatedTemplateArr.join(\"\");\n};\n","export const getReferenceValue = ({ ref }, options) => {\n const referenceRecord = {\n ...options.endpointParams,\n ...options.referenceRecord,\n };\n return referenceRecord[ref];\n};\n","import { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getReferenceValue } from \"./getReferenceValue\";\nexport const evaluateExpression = (obj, keyName, options) => {\n if (typeof obj === \"string\") {\n return evaluateTemplate(obj, options);\n }\n else if (obj[\"fn\"]) {\n return callFunction(obj, options);\n }\n else if (obj[\"ref\"]) {\n return getReferenceValue(obj, options);\n }\n throw new EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`);\n};\n","import { customEndpointFunctions } from \"./customEndpointFunctions\";\nimport { endpointFunctions } from \"./endpointFunctions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const callFunction = ({ fn, argv }, options) => {\n const evaluatedArgs = argv.map((arg) => [\"boolean\", \"number\"].includes(typeof arg) ? arg : evaluateExpression(arg, \"arg\", options));\n const fnSegments = fn.split(\".\");\n if (fnSegments[0] in customEndpointFunctions && fnSegments[1] != null) {\n return customEndpointFunctions[fnSegments[0]][fnSegments[1]](...evaluatedArgs);\n }\n return endpointFunctions[fn](...evaluatedArgs);\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nexport const evaluateCondition = ({ assign, ...fnArgs }, options) => {\n if (assign && assign in options.referenceRecord) {\n throw new EndpointError(`'${assign}' is already defined in Reference Record.`);\n }\n const value = callFunction(fnArgs, options);\n options.logger?.debug?.(`${debugId} evaluateCondition: ${toDebugString(fnArgs)} = ${toDebugString(value)}`);\n return {\n result: value === \"\" ? true : !!value,\n ...(assign != null && { toAssign: { name: assign, value } }),\n };\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { evaluateCondition } from \"./evaluateCondition\";\nexport const evaluateConditions = (conditions = [], options) => {\n const conditionsReferenceRecord = {};\n for (const condition of conditions) {\n const { result, toAssign } = evaluateCondition(condition, {\n ...options,\n referenceRecord: {\n ...options.referenceRecord,\n ...conditionsReferenceRecord,\n },\n });\n if (!result) {\n return { result };\n }\n if (toAssign) {\n conditionsReferenceRecord[toAssign.name] = toAssign.value;\n options.logger?.debug?.(`${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);\n }\n }\n return { result: true, referenceRecord: conditionsReferenceRecord };\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointHeaders = (headers, options) => Object.entries(headers).reduce((acc, [headerKey, headerVal]) => ({\n ...acc,\n [headerKey]: headerVal.map((headerValEntry) => {\n const processedExpr = evaluateExpression(headerValEntry, \"Header value entry\", options);\n if (typeof processedExpr !== \"string\") {\n throw new EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`);\n }\n return processedExpr;\n }),\n}), {});\n","import { EndpointError } from \"../types\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nexport const getEndpointProperty = (property, options) => {\n if (Array.isArray(property)) {\n return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));\n }\n switch (typeof property) {\n case \"string\":\n return evaluateTemplate(property, options);\n case \"object\":\n if (property === null) {\n throw new EndpointError(`Unexpected endpoint property: ${property}`);\n }\n return getEndpointProperties(property, options);\n case \"boolean\":\n return property;\n default:\n throw new EndpointError(`Unexpected endpoint property type: ${typeof property}`);\n }\n};\n","import { getEndpointProperty } from \"./getEndpointProperty\";\nexport const getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => ({\n ...acc,\n [propertyKey]: getEndpointProperty(propertyVal, options),\n}), {});\n","import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointUrl = (endpointUrl, options) => {\n const expression = evaluateExpression(endpointUrl, \"Endpoint URL\", options);\n if (typeof expression === \"string\") {\n try {\n return new URL(expression);\n }\n catch (error) {\n console.error(`Failed to construct URL with ${expression}`, error);\n throw error;\n }\n }\n throw new EndpointError(`Endpoint URL must be a string, got ${typeof expression}`);\n};\n","import { debugId, toDebugString } from \"../debug\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { getEndpointHeaders } from \"./getEndpointHeaders\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nimport { getEndpointUrl } from \"./getEndpointUrl\";\nexport const evaluateEndpointRule = (endpointRule, options) => {\n const { conditions, endpoint } = endpointRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const endpointRuleOptions = {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n };\n const { url, properties, headers } = endpoint;\n options.logger?.debug?.(`${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);\n return {\n ...(headers != undefined && {\n headers: getEndpointHeaders(headers, endpointRuleOptions),\n }),\n ...(properties != undefined && {\n properties: getEndpointProperties(properties, endpointRuleOptions),\n }),\n url: getEndpointUrl(url, endpointRuleOptions),\n };\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const evaluateErrorRule = (errorRule, options) => {\n const { conditions, error } = errorRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n throw new EndpointError(evaluateExpression(error, \"Error\", {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n }));\n};\n","import { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateRules } from \"./evaluateRules\";\nexport const evaluateTreeRule = (treeRule, options) => {\n const { conditions, rules } = treeRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n return evaluateRules(rules, {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n });\n};\n","import { EndpointError } from \"../types\";\nimport { evaluateEndpointRule } from \"./evaluateEndpointRule\";\nimport { evaluateErrorRule } from \"./evaluateErrorRule\";\nimport { evaluateTreeRule } from \"./evaluateTreeRule\";\nexport const evaluateRules = (rules, options) => {\n for (const rule of rules) {\n if (rule.type === \"endpoint\") {\n const endpointOrUndefined = evaluateEndpointRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else if (rule.type === \"error\") {\n evaluateErrorRule(rule, options);\n }\n else if (rule.type === \"tree\") {\n const endpointOrUndefined = evaluateTreeRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else {\n throw new EndpointError(`Unknown endpoint rule: ${rule}`);\n }\n }\n throw new EndpointError(`Rules evaluation failed`);\n};\n","import { debugId, toDebugString } from \"./debug\";\nimport { EndpointError } from \"./types\";\nimport { evaluateRules } from \"./utils\";\nexport const resolveEndpoint = (ruleSetObject, options) => {\n const { endpointParams, logger } = options;\n const { parameters, rules } = ruleSetObject;\n options.logger?.debug?.(`${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);\n const paramsWithDefault = Object.entries(parameters)\n .filter(([, v]) => v.default != null)\n .map(([k, v]) => [k, v.default]);\n if (paramsWithDefault.length > 0) {\n for (const [paramKey, paramDefaultValue] of paramsWithDefault) {\n endpointParams[paramKey] = endpointParams[paramKey] ?? paramDefaultValue;\n }\n }\n const requiredParams = Object.entries(parameters)\n .filter(([, v]) => v.required)\n .map(([k]) => k);\n for (const requiredParam of requiredParams) {\n if (endpointParams[requiredParam] == null) {\n throw new EndpointError(`Missing required parameter: '${requiredParam}'`);\n }\n }\n const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });\n if (options.endpointParams?.Endpoint) {\n try {\n const givenEndpoint = new URL(options.endpointParams.Endpoint);\n const { protocol, port } = givenEndpoint;\n endpoint.url.protocol = protocol;\n endpoint.url.port = port;\n }\n catch (e) {\n }\n }\n options.logger?.debug?.(`${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);\n return endpoint;\n};\n","import { isValidHostLabel } from \"@smithy/util-endpoints\";\nimport { isIpAddress } from \"../isIpAddress\";\nexport const isVirtualHostableS3Bucket = (value, allowSubDomains = false) => {\n if (allowSubDomains) {\n for (const label of value.split(\".\")) {\n if (!isVirtualHostableS3Bucket(label)) {\n return false;\n }\n }\n return true;\n }\n if (!isValidHostLabel(value)) {\n return false;\n }\n if (value.length < 3 || value.length > 63) {\n return false;\n }\n if (value !== value.toLowerCase()) {\n return false;\n }\n if (isIpAddress(value)) {\n return false;\n }\n return true;\n};\n","const ARN_DELIMITER = \":\";\nconst RESOURCE_DELIMITER = \"/\";\nexport const parseArn = (value) => {\n const segments = value.split(ARN_DELIMITER);\n if (segments.length < 6)\n return null;\n const [arn, partition, service, region, accountId, ...resourcePath] = segments;\n if (arn !== \"arn\" || partition === \"\" || service === \"\" || resourcePath.join(ARN_DELIMITER) === \"\")\n return null;\n const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();\n return {\n partition,\n service,\n region,\n accountId,\n resourceId,\n };\n};\n","import partitionsInfo from \"./partitions.json\";\nlet selectedPartitionsInfo = partitionsInfo;\nlet selectedUserAgentPrefix = \"\";\nexport const partition = (value) => {\n const { partitions } = selectedPartitionsInfo;\n for (const partition of partitions) {\n const { regions, outputs } = partition;\n for (const [region, regionData] of Object.entries(regions)) {\n if (region === value) {\n return {\n ...outputs,\n ...regionData,\n };\n }\n }\n }\n for (const partition of partitions) {\n const { regionRegex, outputs } = partition;\n if (new RegExp(regionRegex).test(value)) {\n return {\n ...outputs,\n };\n }\n }\n const DEFAULT_PARTITION = partitions.find((partition) => partition.id === \"aws\");\n if (!DEFAULT_PARTITION) {\n throw new Error(\"Provided region was not found in the partition array or regex,\" +\n \" and default partition with id 'aws' doesn't exist.\");\n }\n return {\n ...DEFAULT_PARTITION.outputs,\n };\n};\nexport const setPartitionInfo = (partitionsInfo, userAgentPrefix = \"\") => {\n selectedPartitionsInfo = partitionsInfo;\n selectedUserAgentPrefix = userAgentPrefix;\n};\nexport const useDefaultPartitionInfo = () => {\n setPartitionInfo(partitionsInfo, \"\");\n};\nexport const getUserAgentPrefix = () => selectedUserAgentPrefix;\n","import { customEndpointFunctions } from \"@smithy/util-endpoints\";\nimport { isVirtualHostableS3Bucket } from \"./lib/aws/isVirtualHostableS3Bucket\";\nimport { parseArn } from \"./lib/aws/parseArn\";\nimport { partition } from \"./lib/aws/partition\";\nexport const awsEndpointFunctions = {\n isVirtualHostableS3Bucket: isVirtualHostableS3Bucket,\n parseArn: parseArn,\n partition: partition,\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","export const USER_AGENT = \"user-agent\";\nexport const X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport const SPACE = \" \";\nexport const UA_NAME_SEPARATOR = \"/\";\nexport const UA_NAME_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w]/g;\nexport const UA_VALUE_ESCAPE_REGEX = /[^\\!\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w\\#]/g;\nexport const UA_ESCAPE_CHAR = \"-\";\n","import { getUserAgentPrefix } from \"@aws-sdk/util-endpoints\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request))\n return next(args);\n const { headers } = request;\n const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n const prefix = getUserAgentPrefix();\n const sdkUserAgentValue = (prefix ? [prefix] : [])\n .concat([...defaultUserAgent, ...userAgent, ...customUserAgent])\n .join(SPACE);\n const normalUAValue = [\n ...defaultUserAgent.filter((section) => section.startsWith(\"aws-sdk-\")),\n ...customUserAgent,\n ].join(SPACE);\n if (options.runtime !== \"browser\") {\n if (normalUAValue) {\n headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT]\n ? `${headers[USER_AGENT]} ${normalUAValue}`\n : normalUAValue;\n }\n headers[USER_AGENT] = sdkUserAgentValue;\n }\n else {\n headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;\n }\n return next({\n ...args,\n request,\n });\n};\nconst escapeUserAgent = (userAgentPair) => {\n const name = userAgentPair[0]\n .split(UA_NAME_SEPARATOR)\n .map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR))\n .join(UA_NAME_SEPARATOR);\n const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);\n const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);\n const prefix = name.substring(0, prefixSeparatorIndex);\n let uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter((item) => item && item.length > 0)\n .reduce((acc, item, index) => {\n switch (index) {\n case 0:\n return item;\n case 1:\n return `${acc}/${item}`;\n default:\n return `${acc}#${item}`;\n }\n }, \"\");\n};\nexport const getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport const getUserAgentPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n});\n","export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport const CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport const DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n","import { booleanSelector, SelectorType } from \"@smithy/util-config-provider\";\nexport const ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport const CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport const DEFAULT_USE_FIPS_ENDPOINT = false;\nexport const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\n","import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\n","export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n","export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n","import { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return {\n ...input,\n region: async () => {\n if (typeof region === \"string\") {\n return getRealRegion(region);\n }\n const providedRegion = await region();\n return getRealRegion(providedRegion);\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n };\n};\n","import { SMITHY_CONTEXT_KEY, } from \"@smithy/types\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nfunction convertHttpAuthSchemesToMap(httpAuthSchemes) {\n const map = new Map();\n for (const scheme of httpAuthSchemes) {\n map.set(scheme.schemeId, scheme);\n }\n return map;\n}\nexport const httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {\n const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));\n const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);\n const smithyContext = getSmithyContext(context);\n const failureReasons = [];\n for (const option of options) {\n const scheme = authSchemes.get(option.schemeId);\n if (!scheme) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` was not enabled for this service.`);\n continue;\n }\n const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));\n if (!identityProvider) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` did not have an IdentityProvider configured.`);\n continue;\n }\n const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};\n option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);\n option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);\n smithyContext.selectedHttpAuthScheme = {\n httpAuthOption: option,\n identity: await identityProvider(option.identityProperties),\n signer: scheme.signer,\n };\n break;\n }\n if (!smithyContext.selectedHttpAuthScheme) {\n throw new Error(failureReasons.join(\"\\n\"));\n }\n return next(args);\n};\n","export const resolveParamsForS3 = async (endpointParams) => {\n const bucket = endpointParams?.Bucket || \"\";\n if (typeof endpointParams.Bucket === \"string\") {\n endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent(\"#\")).replace(/\\?/g, encodeURIComponent(\"?\"));\n }\n if (isArnBucketName(bucket)) {\n if (endpointParams.ForcePathStyle === true) {\n throw new Error(\"Path-style addressing cannot be used with ARN buckets\");\n }\n }\n else if (!isDnsCompatibleBucketName(bucket) ||\n (bucket.indexOf(\".\") !== -1 && !String(endpointParams.Endpoint).startsWith(\"http:\")) ||\n bucket.toLowerCase() !== bucket ||\n bucket.length < 3) {\n endpointParams.ForcePathStyle = true;\n }\n if (endpointParams.DisableMultiRegionAccessPoints) {\n endpointParams.disableMultiRegionAccessPoints = true;\n endpointParams.DisableMRAP = true;\n }\n return endpointParams;\n};\nconst DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$/;\nconst IP_ADDRESS_PATTERN = /(\\d+\\.){3}\\d+/;\nconst DOTS_PATTERN = /\\.\\./;\nexport const DOT_PATTERN = /\\./;\nexport const S3_HOSTNAME_PATTERN = /^(.+\\.)?s3(-fips)?(\\.dualstack)?[.-]([a-z0-9-]+)\\./;\nexport const isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);\nexport const isArnBucketName = (bucketName) => {\n const [arn, partition, service, , , bucket] = bucketName.split(\":\");\n const isArn = arn === \"arn\" && bucketName.split(\":\").length >= 6;\n const isValidArn = Boolean(isArn && partition && service && bucket);\n if (isArn && !isValidArn) {\n throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);\n }\n return isValidArn;\n};\n","export const createConfigValueProvider = (configKey, canonicalEndpointParamKey, config) => {\n const configProvider = async () => {\n const configValue = config[configKey] ?? config[canonicalEndpointParamKey];\n if (typeof configValue === \"function\") {\n return configValue();\n }\n return configValue;\n };\n if (configKey === \"credentialScope\" || canonicalEndpointParamKey === \"CredentialScope\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.credentialScope ?? credentials?.CredentialScope;\n return configValue;\n };\n }\n if (configKey === \"accountId\" || canonicalEndpointParamKey === \"AccountId\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.accountId ?? credentials?.AccountId;\n return configValue;\n };\n }\n if (configKey === \"endpoint\" || canonicalEndpointParamKey === \"endpoint\") {\n return async () => {\n const endpoint = await configProvider();\n if (endpoint && typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return endpoint.url.href;\n }\n if (\"hostname\" in endpoint) {\n const { protocol, hostname, port, path } = endpoint;\n return `${protocol}//${hostname}${port ? \":\" + port : \"\"}${path}`;\n }\n }\n return endpoint;\n };\n }\n return configProvider;\n};\n","export const getEndpointFromConfig = async (serviceId) => undefined;\n","export function parseQueryString(querystring) {\n const query = {};\n querystring = querystring.replace(/^\\?/, \"\");\n if (querystring) {\n for (const pair of querystring.split(\"&\")) {\n let [key, value = null] = pair.split(\"=\");\n key = decodeURIComponent(key);\n if (value) {\n value = decodeURIComponent(value);\n }\n if (!(key in query)) {\n query[key] = value;\n }\n else if (Array.isArray(query[key])) {\n query[key].push(value);\n }\n else {\n query[key] = [query[key], value];\n }\n }\n }\n return query;\n}\n","import { parseQueryString } from \"@smithy/querystring-parser\";\nexport const parseUrl = (url) => {\n if (typeof url === \"string\") {\n return parseUrl(new URL(url));\n }\n const { hostname, pathname, port, protocol, search } = url;\n let query;\n if (search) {\n query = parseQueryString(search);\n }\n return {\n hostname,\n port: port ? parseInt(port) : undefined,\n protocol,\n path: pathname,\n query,\n };\n};\n","import { parseUrl } from \"@smithy/url-parser\";\nexport const toEndpointV1 = (endpoint) => {\n if (typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return parseUrl(endpoint.url);\n }\n return endpoint;\n }\n return parseUrl(endpoint);\n};\n","import { resolveParamsForS3 } from \"../service-customizations\";\nimport { createConfigValueProvider } from \"./createConfigValueProvider\";\nimport { getEndpointFromConfig } from \"./getEndpointFromConfig\";\nimport { toEndpointV1 } from \"./toEndpointV1\";\nexport const getEndpointFromInstructions = async (commandInput, instructionsSupplier, clientConfig, context) => {\n if (!clientConfig.endpoint) {\n const endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId || \"\");\n if (endpointFromConfig) {\n clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));\n }\n }\n const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);\n if (typeof clientConfig.endpointProvider !== \"function\") {\n throw new Error(\"config.endpointProvider is not set.\");\n }\n const endpoint = clientConfig.endpointProvider(endpointParams, context);\n return endpoint;\n};\nexport const resolveParams = async (commandInput, instructionsSupplier, clientConfig) => {\n const endpointParams = {};\n const instructions = instructionsSupplier?.getEndpointParameterInstructions?.() || {};\n for (const [name, instruction] of Object.entries(instructions)) {\n switch (instruction.type) {\n case \"staticContextParams\":\n endpointParams[name] = instruction.value;\n break;\n case \"contextParams\":\n endpointParams[name] = commandInput[instruction.name];\n break;\n case \"clientContextParams\":\n case \"builtInParams\":\n endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig)();\n break;\n default:\n throw new Error(\"Unrecognized endpoint parameter instruction: \" + JSON.stringify(instruction));\n }\n }\n if (Object.keys(instructions).length === 0) {\n Object.assign(endpointParams, clientConfig);\n }\n if (String(clientConfig.serviceId).toLowerCase() === \"s3\") {\n await resolveParamsForS3(endpointParams);\n }\n return endpointParams;\n};\n","import { getSmithyContext } from \"@smithy/util-middleware\";\nimport { getEndpointFromInstructions } from \"./adaptors/getEndpointFromInstructions\";\nexport const endpointMiddleware = ({ config, instructions, }) => {\n return (next, context) => async (args) => {\n const endpoint = await getEndpointFromInstructions(args.input, {\n getEndpointParameterInstructions() {\n return instructions;\n },\n }, { ...config }, context);\n context.endpointV2 = endpoint;\n context.authSchemes = endpoint.properties?.authSchemes;\n const authScheme = context.authSchemes?.[0];\n if (authScheme) {\n context[\"signing_region\"] = authScheme.signingRegion;\n context[\"signing_service\"] = authScheme.signingName;\n const smithyContext = getSmithyContext(context);\n const httpAuthOption = smithyContext?.selectedHttpAuthScheme?.httpAuthOption;\n if (httpAuthOption) {\n httpAuthOption.signingProperties = Object.assign(httpAuthOption.signingProperties || {}, {\n signing_region: authScheme.signingRegion,\n signingRegion: authScheme.signingRegion,\n signing_service: authScheme.signingName,\n signingName: authScheme.signingName,\n signingRegionSet: authScheme.signingRegionSet,\n }, authScheme.properties);\n }\n }\n return next({\n ...args,\n });\n };\n};\n","export const deserializerMiddleware = (options, deserializer) => (next) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n error.message += \"\\n \" + hint;\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n }\n throw error;\n }\n};\n","export const serializerMiddleware = (options, serializer) => (next, context) => async (args) => {\n const endpoint = context.endpointV2?.url && options.urlParser\n ? async () => options.urlParser(context.endpointV2.url)\n : options.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request,\n });\n};\n","import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport const deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport const serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n","import { serializerMiddlewareOption } from \"@smithy/middleware-serde\";\nimport { endpointMiddleware } from \"./endpointMiddleware\";\nexport const endpointMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"ENDPOINT_PARAMETERS\", \"ENDPOINT_V2\", \"ENDPOINT\"],\n name: \"endpointV2Middleware\",\n override: true,\n relation: \"before\",\n toMiddleware: serializerMiddlewareOption.name,\n};\nexport const getEndpointPlugin = (config, instructions) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(endpointMiddleware({\n config,\n instructions,\n }), endpointMiddlewareOptions);\n },\n});\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { toEndpointV1 } from \"./adaptors/toEndpointV1\";\nexport const resolveEndpointConfig = (input) => {\n const tls = input.tls ?? true;\n const { endpoint } = input;\n const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await normalizeProvider(endpoint)()) : undefined;\n const isCustomEndpoint = !!endpoint;\n return {\n ...input,\n endpoint: customEndpointProvider,\n tls,\n isCustomEndpoint,\n useDualstackEndpoint: normalizeProvider(input.useDualstackEndpoint ?? false),\n useFipsEndpoint: normalizeProvider(input.useFipsEndpoint ?? false),\n };\n};\n","import { endpointMiddlewareOptions } from \"@smithy/middleware-endpoint\";\nimport { httpAuthSchemeMiddleware } from \"./httpAuthSchemeMiddleware\";\nexport const httpAuthSchemeEndpointRuleSetMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: endpointMiddlewareOptions.name,\n};\nexport const getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider,\n }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);\n },\n});\n","import { serializerMiddlewareOption } from \"@smithy/middleware-serde\";\nimport { httpAuthSchemeMiddleware } from \"./httpAuthSchemeMiddleware\";\nexport const httpAuthSchemeMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: serializerMiddlewareOption.name,\n};\nexport const getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider,\n }), httpAuthSchemeMiddlewareOptions);\n },\n});\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { SMITHY_CONTEXT_KEY, } from \"@smithy/types\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nconst defaultErrorHandler = (signingProperties) => (error) => {\n throw error;\n};\nconst defaultSuccessHandler = (httpResponse, signingProperties) => { };\nexport const httpSigningMiddleware = (config) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const smithyContext = getSmithyContext(context);\n const scheme = smithyContext.selectedHttpAuthScheme;\n if (!scheme) {\n throw new Error(`No HttpAuthScheme was selected: unable to sign request`);\n }\n const { httpAuthOption: { signingProperties = {} }, identity, signer, } = scheme;\n const output = await next({\n ...args,\n request: await signer.sign(args.request, identity, signingProperties),\n }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));\n (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);\n return output;\n};\n","export var RETRY_MODES;\n(function (RETRY_MODES) {\n RETRY_MODES[\"STANDARD\"] = \"standard\";\n RETRY_MODES[\"ADAPTIVE\"] = \"adaptive\";\n})(RETRY_MODES || (RETRY_MODES = {}));\nexport const DEFAULT_MAX_ATTEMPTS = 3;\nexport const DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n","export const CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport const THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\",\n \"TransactionInProgressException\",\n];\nexport const TRANSIENT_ERROR_CODES = [\"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport const TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\nexport const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"ECONNREFUSED\", \"EPIPE\", \"ETIMEDOUT\"];\n","import { CLOCK_SKEW_ERROR_CODES, NODEJS_TIMEOUT_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport const isRetryableByTrait = (error) => error.$retryable !== undefined;\nexport const isClockSkewError = (error) => CLOCK_SKEW_ERROR_CODES.includes(error.name);\nexport const isClockSkewCorrectedError = (error) => error.$metadata?.clockSkewCorrected;\nexport const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n error.$retryable?.throttling == true;\nexport const isTransientError = (error) => isClockSkewCorrectedError(error) ||\n TRANSIENT_ERROR_CODES.includes(error.name) ||\n NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || \"\") ||\n TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0);\nexport const isServerError = (error) => {\n if (error.$metadata?.httpStatusCode !== undefined) {\n const statusCode = error.$metadata.httpStatusCode;\n if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {\n return true;\n }\n return false;\n }\n return false;\n};\n","import { isThrottlingError } from \"@smithy/service-error-classification\";\nexport class DefaultRateLimiter {\n constructor(options) {\n this.currentCapacity = 0;\n this.enabled = false;\n this.lastMaxRate = 0;\n this.measuredTxRate = 0;\n this.requestCount = 0;\n this.lastTimestamp = 0;\n this.timeWindow = 0;\n this.beta = options?.beta ?? 0.7;\n this.minCapacity = options?.minCapacity ?? 1;\n this.minFillRate = options?.minFillRate ?? 0.5;\n this.scaleConstant = options?.scaleConstant ?? 0.4;\n this.smooth = options?.smooth ?? 0.8;\n const currentTimeInSeconds = this.getCurrentTimeInSeconds();\n this.lastThrottleTime = currentTimeInSeconds;\n this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());\n this.fillRate = this.minFillRate;\n this.maxCapacity = this.minCapacity;\n }\n getCurrentTimeInSeconds() {\n return Date.now() / 1000;\n }\n async getSendToken() {\n return this.acquireTokenBucket(1);\n }\n async acquireTokenBucket(amount) {\n if (!this.enabled) {\n return;\n }\n this.refillTokenBucket();\n if (amount > this.currentCapacity) {\n const delay = ((amount - this.currentCapacity) / this.fillRate) * 1000;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n this.currentCapacity = this.currentCapacity - amount;\n }\n refillTokenBucket() {\n const timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n }\n updateClientSendingRate(response) {\n let calculatedRate;\n this.updateMeasuredRate();\n if (isThrottlingError(response)) {\n const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);\n this.lastMaxRate = rateToUse;\n this.calculateTimeWindow();\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n calculatedRate = this.cubicThrottle(rateToUse);\n this.enableTokenBucket();\n }\n else {\n this.calculateTimeWindow();\n calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());\n }\n const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n }\n calculateTimeWindow() {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n }\n cubicThrottle(rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n }\n cubicSuccess(timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n }\n enableTokenBucket() {\n this.enabled = true;\n }\n updateTokenBucketRate(newRate) {\n this.refillTokenBucket();\n this.fillRate = Math.max(newRate, this.minFillRate);\n this.maxCapacity = Math.max(newRate, this.minCapacity);\n this.currentCapacity = Math.min(this.currentCapacity, this.maxCapacity);\n }\n updateMeasuredRate() {\n const t = this.getCurrentTimeInSeconds();\n const timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);\n this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));\n this.requestCount = 0;\n this.lastTxRateBucket = timeBucket;\n }\n }\n getPrecise(num) {\n return parseFloat(num.toFixed(8));\n }\n}\n","export const DEFAULT_RETRY_DELAY_BASE = 100;\nexport const MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport const THROTTLING_RETRY_DELAY_BASE = 500;\nexport const INITIAL_RETRY_TOKENS = 500;\nexport const RETRY_COST = 5;\nexport const TIMEOUT_RETRY_COST = 10;\nexport const NO_RETRY_INCREMENT = 1;\nexport const INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport const REQUEST_HEADER = \"amz-sdk-request\";\n","import { DEFAULT_RETRY_DELAY_BASE, MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const getDefaultRetryBackoffStrategy = () => {\n let delayBase = DEFAULT_RETRY_DELAY_BASE;\n const computeNextBackoffDelay = (attempts) => {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n };\n const setDelayBase = (delay) => {\n delayBase = delay;\n };\n return {\n computeNextBackoffDelay,\n setDelayBase,\n };\n};\n","import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport const createDefaultRetryToken = ({ retryDelay, retryCount, retryCost, }) => {\n const getRetryCount = () => retryCount;\n const getRetryDelay = () => Math.min(MAXIMUM_RETRY_DELAY, retryDelay);\n const getRetryCost = () => retryCost;\n return {\n getRetryCount,\n getRetryDelay,\n getRetryCost,\n };\n};\n","import { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, NO_RETRY_INCREMENT, RETRY_COST, THROTTLING_RETRY_DELAY_BASE, TIMEOUT_RETRY_COST, } from \"./constants\";\nimport { getDefaultRetryBackoffStrategy } from \"./defaultRetryBackoffStrategy\";\nimport { createDefaultRetryToken } from \"./defaultRetryToken\";\nexport class StandardRetryStrategy {\n constructor(maxAttempts) {\n this.maxAttempts = maxAttempts;\n this.mode = RETRY_MODES.STANDARD;\n this.capacity = INITIAL_RETRY_TOKENS;\n this.retryBackoffStrategy = getDefaultRetryBackoffStrategy();\n this.maxAttemptsProvider = typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts;\n }\n async acquireInitialRetryToken(retryTokenScope) {\n return createDefaultRetryToken({\n retryDelay: DEFAULT_RETRY_DELAY_BASE,\n retryCount: 0,\n });\n }\n async refreshRetryTokenForRetry(token, errorInfo) {\n const maxAttempts = await this.getMaxAttempts();\n if (this.shouldRetry(token, errorInfo, maxAttempts)) {\n const errorType = errorInfo.errorType;\n this.retryBackoffStrategy.setDelayBase(errorType === \"THROTTLING\" ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE);\n const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());\n const retryDelay = errorInfo.retryAfterHint\n ? Math.max(errorInfo.retryAfterHint.getTime() - Date.now() || 0, delayFromErrorType)\n : delayFromErrorType;\n const capacityCost = this.getCapacityCost(errorType);\n this.capacity -= capacityCost;\n return createDefaultRetryToken({\n retryDelay,\n retryCount: token.getRetryCount() + 1,\n retryCost: capacityCost,\n });\n }\n throw new Error(\"No retry token available\");\n }\n recordSuccess(token) {\n this.capacity = Math.max(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));\n }\n getCapacity() {\n return this.capacity;\n }\n async getMaxAttempts() {\n try {\n return await this.maxAttemptsProvider();\n }\n catch (error) {\n console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);\n return DEFAULT_MAX_ATTEMPTS;\n }\n }\n shouldRetry(tokenToRenew, errorInfo, maxAttempts) {\n const attempts = tokenToRenew.getRetryCount() + 1;\n return (attempts < maxAttempts &&\n this.capacity >= this.getCapacityCost(errorInfo.errorType) &&\n this.isRetryableError(errorInfo.errorType));\n }\n getCapacityCost(errorType) {\n return errorType === \"TRANSIENT\" ? TIMEOUT_RETRY_COST : RETRY_COST;\n }\n isRetryableError(errorType) {\n return errorType === \"THROTTLING\" || errorType === \"TRANSIENT\";\n }\n}\n","import { RETRY_MODES } from \"./config\";\nimport { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy {\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = RETRY_MODES.ADAPTIVE;\n const { rateLimiter } = options ?? {};\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.standardRetryStrategy = new StandardRetryStrategy(maxAttemptsProvider);\n }\n async acquireInitialRetryToken(retryTokenScope) {\n await this.rateLimiter.getSendToken();\n return this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n this.rateLimiter.updateClientSendingRate(errorInfo);\n return this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n }\n recordSuccess(token) {\n this.rateLimiter.updateClientSendingRate({});\n this.standardRetryStrategy.recordSuccess(token);\n }\n}\n","// Unique ID creation requires a high quality random # generator. In the browser we therefore\n// require the crypto API and do not support built-in fallback to lower quality random number\n// generators (like Math.random()).\nlet getRandomValues;\nconst rnds8 = new Uint8Array(16);\nexport default function rng() {\n // lazy load so that environments that need to polyfill have a chance to do so\n if (!getRandomValues) {\n // getRandomValues needs to be invoked in a context where \"this\" is a Crypto implementation.\n getRandomValues = typeof crypto !== 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto);\n\n if (!getRandomValues) {\n throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');\n }\n }\n\n return getRandomValues(rnds8);\n}","import validate from './validate.js';\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\n\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).slice(1));\n}\n\nexport function unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return byteToHex[arr[offset + 0]] + byteToHex[arr[offset + 1]] + byteToHex[arr[offset + 2]] + byteToHex[arr[offset + 3]] + '-' + byteToHex[arr[offset + 4]] + byteToHex[arr[offset + 5]] + '-' + byteToHex[arr[offset + 6]] + byteToHex[arr[offset + 7]] + '-' + byteToHex[arr[offset + 8]] + byteToHex[arr[offset + 9]] + '-' + byteToHex[arr[offset + 10]] + byteToHex[arr[offset + 11]] + byteToHex[arr[offset + 12]] + byteToHex[arr[offset + 13]] + byteToHex[arr[offset + 14]] + byteToHex[arr[offset + 15]];\n}\n\nfunction stringify(arr, offset = 0) {\n const uuid = unsafeStringify(arr, offset); // Consistency check for valid UUID. If this throws, it's likely due to one\n // of the following:\n // - One or more input array values don't map to a hex octet (leading to\n // \"undefined\" in the uuid)\n // - Invalid input values for the RFC `version` or `variant` fields\n\n if (!validate(uuid)) {\n throw TypeError('Stringified UUID is invalid');\n }\n\n return uuid;\n}\n\nexport default stringify;","const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);\nexport default {\n randomUUID\n};","import native from './native.js';\nimport rng from './rng.js';\nimport { unsafeStringify } from './stringify.js';\n\nfunction v4(options, buf, offset) {\n if (native.randomUUID && !buf && !options) {\n return native.randomUUID();\n }\n\n options = options || {};\n const rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n\n rnds[6] = rnds[6] & 0x0f | 0x40;\n rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided\n\n if (buf) {\n offset = offset || 0;\n\n for (let i = 0; i < 16; ++i) {\n buf[offset + i] = rnds[i];\n }\n\n return buf;\n }\n\n return unsafeStringify(rnds);\n}\n\nexport default v4;","export const asSdkError = (error) => {\n if (error instanceof Error)\n return error;\n if (error instanceof Object)\n return Object.assign(new Error(), error);\n if (typeof error === \"string\")\n return new Error(error);\n return new Error(`AWS SDK error wrapper for ${error}`);\n};\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { AdaptiveRetryStrategy, DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES, StandardRetryStrategy, } from \"@smithy/util-retry\";\nexport const ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport const CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport const NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n const value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n configFileSelector: (profile) => {\n const value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n default: DEFAULT_MAX_ATTEMPTS,\n};\nexport const resolveRetryConfig = (input) => {\n const { retryStrategy } = input;\n const maxAttempts = normalizeProvider(input.maxAttempts ?? DEFAULT_MAX_ATTEMPTS);\n return {\n ...input,\n maxAttempts,\n retryStrategy: async () => {\n if (retryStrategy) {\n return retryStrategy;\n }\n const retryMode = await normalizeProvider(input.retryMode)();\n if (retryMode === RETRY_MODES.ADAPTIVE) {\n return new AdaptiveRetryStrategy(maxAttempts);\n }\n return new StandardRetryStrategy(maxAttempts);\n },\n };\n};\nexport const ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport const CONFIG_RETRY_MODE = \"retry_mode\";\nexport const NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_RETRY_MODE],\n configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],\n default: DEFAULT_RETRY_MODE,\n};\n","export class NoOpLogger {\n trace() { }\n debug() { }\n info() { }\n warn() { }\n error() { }\n}\n","const getAllAliases = (name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n};\nconst getMiddlewareNameWithAliases = (name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n};\nexport const constructStack = () => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = new Set();\n const sort = (entries) => entries.sort((a, b) => stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]);\n const removeByName = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const removeByReference = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const cloneTo = (toStack) => {\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n toStack.identifyOnResolve?.(stack.identifyOnResolve());\n return toStack;\n };\n const expandRelativeMiddlewareList = (from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n };\n const getMiddlewareList = (debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n if (debug) {\n return;\n }\n throw new Error(`${entry.toMiddleware} is not found when adding ` +\n `${getMiddlewareNameWithAliases(entry.name, entry.aliases)} ` +\n `middleware ${entry.relation} ${entry.toMiddleware}`);\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce((wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n }, []);\n return mainChain;\n };\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ` +\n `${toOverride.priority} priority in ${toOverride.step} step cannot ` +\n `be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ` +\n `${entry.priority} priority in ${entry.step} step.`);\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ` +\n `${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden ` +\n `by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} ` +\n `\"${entry.toMiddleware}\" middleware.`);\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(identifyOnResolve || cloned.identifyOnResolve() || (from.identifyOnResolve?.() ?? false));\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ??\n mw.relation +\n \" \" +\n mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList()\n .map((entry) => entry.middleware)\n .reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n },\n };\n return stack;\n};\nconst stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nconst priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n","import { constructStack } from \"@smithy/middleware-stack\";\nexport class Client {\n constructor(config) {\n this.middlewareStack = constructStack();\n this.config = config;\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n if (callback) {\n handler(command)\n .then((result) => callback(null, result.output), (err) => callback(err))\n .catch(() => { });\n }\n else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n if (this.config.requestHandler.destroy)\n this.config.requestHandler.destroy();\n }\n}\n","const alphabetByEncoding = {};\nconst alphabetByValue = new Array(64);\nfor (let i = 0, start = \"A\".charCodeAt(0), limit = \"Z\".charCodeAt(0); i + start <= limit; i++) {\n const char = String.fromCharCode(i + start);\n alphabetByEncoding[char] = i;\n alphabetByValue[i] = char;\n}\nfor (let i = 0, start = \"a\".charCodeAt(0), limit = \"z\".charCodeAt(0); i + start <= limit; i++) {\n const char = String.fromCharCode(i + start);\n const index = i + 26;\n alphabetByEncoding[char] = index;\n alphabetByValue[index] = char;\n}\nfor (let i = 0; i < 10; i++) {\n alphabetByEncoding[i.toString(10)] = i + 52;\n const char = i.toString(10);\n const index = i + 52;\n alphabetByEncoding[char] = index;\n alphabetByValue[index] = char;\n}\nalphabetByEncoding[\"+\"] = 62;\nalphabetByValue[62] = \"+\";\nalphabetByEncoding[\"/\"] = 63;\nalphabetByValue[63] = \"/\";\nconst bitsPerLetter = 6;\nconst bitsPerByte = 8;\nconst maxLetterValue = 0b111111;\nexport { alphabetByEncoding, alphabetByValue, bitsPerLetter, bitsPerByte, maxLetterValue };\n","import { alphabetByEncoding, bitsPerByte, bitsPerLetter } from \"./constants.browser\";\nexport const fromBase64 = (input) => {\n let totalByteLength = (input.length / 4) * 3;\n if (input.slice(-2) === \"==\") {\n totalByteLength -= 2;\n }\n else if (input.slice(-1) === \"=\") {\n totalByteLength--;\n }\n const out = new ArrayBuffer(totalByteLength);\n const dataView = new DataView(out);\n for (let i = 0; i < input.length; i += 4) {\n let bits = 0;\n let bitLength = 0;\n for (let j = i, limit = i + 3; j <= limit; j++) {\n if (input[j] !== \"=\") {\n if (!(input[j] in alphabetByEncoding)) {\n throw new TypeError(`Invalid character ${input[j]} in base64 string.`);\n }\n bits |= alphabetByEncoding[input[j]] << ((limit - j) * bitsPerLetter);\n bitLength += bitsPerLetter;\n }\n else {\n bits >>= bitsPerLetter;\n }\n }\n const chunkOffset = (i / 4) * 3;\n bits >>= bitLength % bitsPerByte;\n const byteLength = Math.floor(bitLength / bitsPerByte);\n for (let k = 0; k < byteLength; k++) {\n const offset = (byteLength - k - 1) * bitsPerByte;\n dataView.setUint8(chunkOffset + k, (bits & (255 << offset)) >> offset);\n }\n }\n return new Uint8Array(out);\n};\n","export const fromUtf8 = (input) => new TextEncoder().encode(input);\n","import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n","export const toUtf8 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return new TextDecoder(\"utf-8\").decode(input);\n};\n","import { fromUtf8 } from \"@smithy/util-utf8\";\nimport { alphabetByValue, bitsPerByte, bitsPerLetter, maxLetterValue } from \"./constants.browser\";\nexport function toBase64(_input) {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8(_input);\n }\n else {\n input = _input;\n }\n const isArrayLike = typeof input === \"object\" && typeof input.length === \"number\";\n const isUint8Array = typeof input === \"object\" &&\n typeof input.byteOffset === \"number\" &&\n typeof input.byteLength === \"number\";\n if (!isArrayLike && !isUint8Array) {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n let str = \"\";\n for (let i = 0; i < input.length; i += 3) {\n let bits = 0;\n let bitLength = 0;\n for (let j = i, limit = Math.min(i + 3, input.length); j < limit; j++) {\n bits |= input[j] << ((limit - j - 1) * bitsPerByte);\n bitLength += bitsPerByte;\n }\n const bitClusterCount = Math.ceil(bitLength / bitsPerLetter);\n bits <<= bitClusterCount * bitsPerLetter - bitLength;\n for (let k = 1; k <= bitClusterCount; k++) {\n const offset = (bitClusterCount - k) * bitsPerLetter;\n str += alphabetByValue[(bits & (maxLetterValue << offset)) >> offset];\n }\n str += \"==\".slice(0, 4 - bitClusterCount);\n }\n return str;\n}\n","import { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { Uint8ArrayBlobAdapter } from \"./Uint8ArrayBlobAdapter\";\nexport function transformToString(payload, encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return toBase64(payload);\n }\n return toUtf8(payload);\n}\nexport function transformFromString(str, encoding) {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate(fromBase64(str));\n }\n return Uint8ArrayBlobAdapter.mutate(fromUtf8(str));\n}\n","import { transformFromString, transformToString } from \"./transforms\";\nexport class Uint8ArrayBlobAdapter extends Uint8Array {\n static fromString(source, encoding = \"utf-8\") {\n switch (typeof source) {\n case \"string\":\n return transformFromString(source, encoding);\n default:\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n }\n static mutate(source) {\n Object.setPrototypeOf(source, Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n transformToString(encoding = \"utf-8\") {\n return transformToString(this, encoding);\n }\n}\n","export const escapeUri = (uri) => encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\nconst hexEncode = (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n","import { escapeUri } from \"@smithy/util-uri-escape\";\nexport function buildQueryString(query) {\n const parts = [];\n for (let key of Object.keys(query).sort()) {\n const value = query[key];\n key = escapeUri(key);\n if (Array.isArray(value)) {\n for (let i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(`${key}=${escapeUri(value[i])}`);\n }\n }\n else {\n let qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += `=${escapeUri(value)}`;\n }\n parts.push(qsEntry);\n }\n }\n return parts.join(\"&\");\n}\n","export function requestTimeout(timeoutInMs = 0) {\n return new Promise((resolve, reject) => {\n if (timeoutInMs) {\n setTimeout(() => {\n const timeoutError = new Error(`Request did not complete within ${timeoutInMs} ms`);\n timeoutError.name = \"TimeoutError\";\n reject(timeoutError);\n }, timeoutInMs);\n }\n });\n}\n","import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { requestTimeout } from \"./request-timeout\";\nexport const keepAliveSupport = {\n supported: undefined,\n};\nexport class FetchHttpHandler {\n static create(instanceOrOptions) {\n if (typeof instanceOrOptions?.handle === \"function\") {\n return instanceOrOptions;\n }\n return new FetchHttpHandler(instanceOrOptions);\n }\n constructor(options) {\n if (typeof options === \"function\") {\n this.configProvider = options().then((opts) => opts || {});\n }\n else {\n this.config = options ?? {};\n this.configProvider = Promise.resolve(this.config);\n }\n if (keepAliveSupport.supported === undefined) {\n keepAliveSupport.supported = Boolean(typeof Request !== \"undefined\" && \"keepalive\" in new Request(\"https://[::1]\"));\n }\n }\n destroy() {\n }\n async handle(request, { abortSignal } = {}) {\n if (!this.config) {\n this.config = await this.configProvider;\n }\n const requestTimeoutInMs = this.config.requestTimeout;\n const keepAlive = this.config.keepAlive === true;\n const credentials = this.config.credentials;\n if (abortSignal?.aborted) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n return Promise.reject(abortError);\n }\n let path = request.path;\n const queryString = buildQueryString(request.query || {});\n if (queryString) {\n path += `?${queryString}`;\n }\n if (request.fragment) {\n path += `#${request.fragment}`;\n }\n let auth = \"\";\n if (request.username != null || request.password != null) {\n const username = request.username ?? \"\";\n const password = request.password ?? \"\";\n auth = `${username}:${password}@`;\n }\n const { port, method } = request;\n const url = `${request.protocol}//${auth}${request.hostname}${port ? `:${port}` : \"\"}${path}`;\n const body = method === \"GET\" || method === \"HEAD\" ? undefined : request.body;\n const requestOptions = {\n body,\n headers: new Headers(request.headers),\n method: method,\n credentials,\n };\n if (body) {\n requestOptions.duplex = \"half\";\n }\n if (typeof AbortController !== \"undefined\") {\n requestOptions.signal = abortSignal;\n }\n if (keepAliveSupport.supported) {\n requestOptions.keepalive = keepAlive;\n }\n let removeSignalEventListener = () => { };\n const fetchRequest = new Request(url, requestOptions);\n const raceOfPromises = [\n fetch(fetchRequest).then((response) => {\n const fetchHeaders = response.headers;\n const transformedHeaders = {};\n for (const pair of fetchHeaders.entries()) {\n transformedHeaders[pair[0]] = pair[1];\n }\n const hasReadableStream = response.body != undefined;\n if (!hasReadableStream) {\n return response.blob().then((body) => ({\n response: new HttpResponse({\n headers: transformedHeaders,\n reason: response.statusText,\n statusCode: response.status,\n body,\n }),\n }));\n }\n return {\n response: new HttpResponse({\n headers: transformedHeaders,\n reason: response.statusText,\n statusCode: response.status,\n body: response.body,\n }),\n };\n }),\n requestTimeout(requestTimeoutInMs),\n ];\n if (abortSignal) {\n raceOfPromises.push(new Promise((resolve, reject) => {\n const onAbort = () => {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n if (typeof abortSignal.addEventListener === \"function\") {\n const signal = abortSignal;\n signal.addEventListener(\"abort\", onAbort, { once: true });\n removeSignalEventListener = () => signal.removeEventListener(\"abort\", onAbort);\n }\n else {\n abortSignal.onabort = onAbort;\n }\n }));\n }\n return Promise.race(raceOfPromises).finally(removeSignalEventListener);\n }\n updateHttpClientConfig(key, value) {\n this.config = undefined;\n this.configProvider = this.configProvider.then((config) => {\n config[key] = value;\n return config;\n });\n }\n httpHandlerConfigs() {\n return this.config ?? {};\n }\n}\n","import { fromBase64 } from \"@smithy/util-base64\";\nexport const streamCollector = (stream) => {\n if (typeof Blob === \"function\" && stream instanceof Blob) {\n return collectBlob(stream);\n }\n return collectStream(stream);\n};\nasync function collectBlob(blob) {\n const base64 = await readToBase64(blob);\n const arrayBuffer = fromBase64(base64);\n return new Uint8Array(arrayBuffer);\n}\nasync function collectStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nfunction readToBase64(blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n if (reader.readyState !== 2) {\n return reject(new Error(\"Reader aborted too early\"));\n }\n const result = (reader.result ?? \"\");\n const commaIndex = result.indexOf(\",\");\n const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;\n resolve(result.substring(dataOffset));\n };\n reader.onabort = () => reject(new Error(\"Read aborted\"));\n reader.onerror = () => reject(reader.error);\n reader.readAsDataURL(blob);\n });\n}\n","const SHORT_TO_HEX = {};\nconst HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nexport function fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nexport function toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n","import { Uint8ArrayBlobAdapter } from \"@smithy/util-stream\";\nexport const collectBody = async (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return Uint8ArrayBlobAdapter.mutate(streamBody);\n }\n if (!streamBody) {\n return Uint8ArrayBlobAdapter.mutate(new Uint8Array());\n }\n const fromContext = context.streamCollector(streamBody);\n return Uint8ArrayBlobAdapter.mutate(await fromContext);\n};\n","import { constructStack } from \"@smithy/middleware-stack\";\nimport { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport class Command {\n constructor() {\n this.middlewareStack = constructStack();\n }\n static classBuilder() {\n return new ClassBuilder();\n }\n resolveMiddlewareWithContext(clientStack, configuration, options, { middlewareFn, clientName, commandName, inputFilterSensitiveLog, outputFilterSensitiveLog, smithyContext, additionalContext, CommandCtor, }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger } = configuration;\n const handlerExecutionContext = {\n logger,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext,\n },\n ...additionalContext,\n };\n const { requestHandler } = configuration;\n return stack.resolve((request) => requestHandler.handle(request.request, options || {}), handlerExecutionContext);\n }\n}\nclass ClassBuilder {\n constructor() {\n this._init = () => { };\n this._ep = {};\n this._middlewareFn = () => [];\n this._commandName = \"\";\n this._clientName = \"\";\n this._additionalContext = {};\n this._smithyContext = {};\n this._inputFilterSensitiveLog = (_) => _;\n this._outputFilterSensitiveLog = (_) => _;\n this._serializer = null;\n this._deserializer = null;\n }\n init(cb) {\n this._init = cb;\n }\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext,\n };\n return this;\n }\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n build() {\n const closure = this;\n let CommandRef;\n return (CommandRef = class extends Command {\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n constructor(...[input]) {\n super();\n this.serialize = closure._serializer;\n this.deserialize = closure._deserializer;\n this.input = input ?? {};\n closure._init(this);\n }\n resolveMiddleware(stack, configuration, options) {\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog,\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog,\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext,\n });\n }\n });\n }\n}\n","export class ServiceException extends Error {\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, ServiceException.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n}\nexport const decorateServiceException = (exception, additions = {}) => {\n Object.entries(additions)\n .filter(([, v]) => v !== undefined)\n .forEach(([k, v]) => {\n if (exception[k] == undefined || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n};\n","import { decorateServiceException } from \"./exceptions\";\nexport const throwDefaultError = ({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : undefined;\n const response = new exceptionCtor({\n name: parsedBody?.code || parsedBody?.Code || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata,\n });\n throw decorateServiceException(response, parsedBody);\n};\nexport const withBaseException = (ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\n","export const loadConfigsForDefaultMode = (mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100,\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 30000,\n };\n default:\n return {};\n }\n};\n","import { AlgorithmId } from \"@smithy/types\";\nexport { AlgorithmId };\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in AlgorithmId) {\n const algorithmId = AlgorithmId[id];\n if (runtimeConfig[algorithmId] === undefined) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId],\n });\n }\n return {\n _checksumAlgorithms: checksumAlgorithms,\n addChecksumAlgorithm(algo) {\n this._checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return this._checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n","export const getRetryConfiguration = (runtimeConfig) => {\n let _retryStrategy = runtimeConfig.retryStrategy;\n return {\n setRetryStrategy(retryStrategy) {\n _retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return _retryStrategy;\n },\n };\n};\nexport const resolveRetryRuntimeConfig = (retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n};\n","import { getChecksumConfiguration, resolveChecksumRuntimeConfig } from \"./checksum\";\nimport { getRetryConfiguration, resolveRetryRuntimeConfig } from \"./retry\";\nexport const getDefaultExtensionConfiguration = (runtimeConfig) => {\n return {\n ...getChecksumConfiguration(runtimeConfig),\n ...getRetryConfiguration(runtimeConfig),\n };\n};\nexport const getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nexport const resolveDefaultRuntimeConfig = (config) => {\n return {\n ...resolveChecksumRuntimeConfig(config),\n ...resolveRetryRuntimeConfig(config),\n };\n};\n","export const StringWrapper = function () {\n const Class = Object.getPrototypeOf(this).constructor;\n const Constructor = Function.bind.apply(String, [null, ...arguments]);\n const instance = new Constructor();\n Object.setPrototypeOf(instance, Class.prototype);\n return instance;\n};\nStringWrapper.prototype = Object.create(String.prototype, {\n constructor: {\n value: StringWrapper,\n enumerable: false,\n writable: true,\n configurable: true,\n },\n});\nObject.setPrototypeOf(StringWrapper, String);\nexport class LazyJsonString extends StringWrapper {\n deserializeJSON() {\n return JSON.parse(super.toString());\n }\n toJSON() {\n return super.toString();\n }\n static fromObject(object) {\n if (object instanceof LazyJsonString) {\n return object;\n }\n else if (object instanceof String || typeof object === \"string\") {\n return new LazyJsonString(object);\n }\n return new LazyJsonString(JSON.stringify(object));\n }\n}\n","export const _json = (obj) => {\n if (obj == null) {\n return {};\n }\n if (Array.isArray(obj)) {\n return obj.filter((_) => _ != null).map(_json);\n }\n if (typeof obj === \"object\") {\n const target = {};\n for (const key of Object.keys(obj)) {\n if (obj[key] == null) {\n continue;\n }\n target[key] = _json(obj[key]);\n }\n return target;\n }\n return obj;\n};\n","export const isStreamingPayload = (request) => request?.body instanceof ReadableStream;\n","import { HttpRequest, HttpResponse } from \"@smithy/protocol-http\";\nimport { isServerError, isThrottlingError, isTransientError } from \"@smithy/service-error-classification\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"@smithy/util-retry\";\nimport { v4 } from \"uuid\";\nimport { isStreamingPayload } from \"./isStreamingPayload/isStreamingPayload\";\nimport { asSdkError } from \"./util\";\nexport const retryMiddleware = (options) => (next, context) => async (args) => {\n let retryStrategy = await options.retryStrategy();\n const maxAttempts = await options.maxAttempts();\n if (isRetryStrategyV2(retryStrategy)) {\n retryStrategy = retryStrategy;\n let retryToken = await retryStrategy.acquireInitialRetryToken(context[\"partition_id\"]);\n let lastError = new Error();\n let attempts = 0;\n let totalRetryDelay = 0;\n const { request } = args;\n const isRequest = HttpRequest.isInstance(request);\n if (isRequest) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (isRequest) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n const { response, output } = await next(args);\n retryStrategy.recordSuccess(retryToken);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalRetryDelay;\n return { response, output };\n }\n catch (e) {\n const retryErrorInfo = getRetryErrorInfo(e);\n lastError = asSdkError(e);\n if (isRequest && isStreamingPayload(request)) {\n (context.logger instanceof NoOpLogger ? console : context.logger)?.warn(\"An error was encountered in a non-retryable streaming request.\");\n throw lastError;\n }\n try {\n retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);\n }\n catch (refreshError) {\n if (!lastError.$metadata) {\n lastError.$metadata = {};\n }\n lastError.$metadata.attempts = attempts + 1;\n lastError.$metadata.totalRetryDelay = totalRetryDelay;\n throw lastError;\n }\n attempts = retryToken.getRetryCount();\n const delay = retryToken.getRetryDelay();\n totalRetryDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n }\n }\n }\n else {\n retryStrategy = retryStrategy;\n if (retryStrategy?.mode)\n context.userAgent = [...(context.userAgent || []), [\"cfg/retry-mode\", retryStrategy.mode]];\n return retryStrategy.retry(next, args);\n }\n};\nconst isRetryStrategyV2 = (retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== \"undefined\" &&\n typeof retryStrategy.refreshRetryTokenForRetry !== \"undefined\" &&\n typeof retryStrategy.recordSuccess !== \"undefined\";\nconst getRetryErrorInfo = (error) => {\n const errorInfo = {\n error,\n errorType: getRetryErrorType(error),\n };\n const retryAfterHint = getRetryAfterHint(error.$response);\n if (retryAfterHint) {\n errorInfo.retryAfterHint = retryAfterHint;\n }\n return errorInfo;\n};\nconst getRetryErrorType = (error) => {\n if (isThrottlingError(error))\n return \"THROTTLING\";\n if (isTransientError(error))\n return \"TRANSIENT\";\n if (isServerError(error))\n return \"SERVER_ERROR\";\n return \"CLIENT_ERROR\";\n};\nexport const retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport const getRetryPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n});\nexport const getRetryAfterHint = (response) => {\n if (!HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return new Date(retryAfterSeconds * 1000);\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate;\n};\n","import { retryMiddlewareOptions } from \"@smithy/middleware-retry\";\nimport { httpSigningMiddleware } from \"./httpSigningMiddleware\";\nexport const httpSigningMiddlewareOptions = {\n step: \"finalizeRequest\",\n tags: [\"HTTP_SIGNING\"],\n name: \"httpSigningMiddleware\",\n aliases: [\"apiKeyMiddleware\", \"tokenMiddleware\", \"awsAuthMiddleware\"],\n override: true,\n relation: \"after\",\n toMiddleware: retryMiddlewareOptions.name,\n};\nexport const getHttpSigningPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);\n },\n});\n","export class DefaultIdentityProviderConfig {\n constructor(config) {\n this.authSchemes = new Map();\n for (const [key, value] of Object.entries(config)) {\n if (value !== undefined) {\n this.authSchemes.set(key, value);\n }\n }\n }\n getIdentityProvider(schemeId) {\n return this.authSchemes.get(schemeId);\n }\n}\n","export const createIsIdentityExpiredFunction = (expirationMs) => (identity) => doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;\nexport const EXPIRATION_MS = 300000;\nexport const isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);\nexport const doesIdentityRequireRefresh = (identity) => identity.expiration !== undefined;\nexport const memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {\n if (provider === undefined) {\n return undefined;\n }\n const normalizedProvider = typeof provider !== \"function\" ? async () => Promise.resolve(provider) : provider;\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async (options) => {\n if (!pending) {\n pending = normalizedProvider(options);\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n if (isConstant) {\n return resolved;\n }\n if (!requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider(options);\n return resolved;\n }\n return resolved;\n };\n};\n","export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nconst CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n return (next) => async (args) => {\n const request = args.request;\n if (HttpRequest.isInstance(request)) {\n const { body, headers } = request;\n if (body &&\n Object.keys(headers)\n .map((str) => str.toLowerCase())\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n try {\n const length = bodyLengthChecker(body);\n request.headers = {\n ...request.headers,\n [CONTENT_LENGTH_HEADER]: String(length),\n };\n }\n catch (error) {\n }\n }\n }\n return next({\n ...args,\n request,\n });\n };\n}\nexport const contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport const getContentLengthPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n});\n","import { HttpResponse } from \"@smithy/protocol-http\";\nexport const getDateHeader = (response) => HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : undefined;\n","export const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);\n","import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport const isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n","import { isClockSkewed } from \"./isClockSkewed\";\nexport const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {\n const clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from \"../utils\";\nconst throwSigningPropertyError = (name, property) => {\n if (!property) {\n throw new Error(`Property \\`${name}\\` is not resolved for AWS SDK SigV4Auth`);\n }\n return property;\n};\nexport const validateSigningProperties = async (signingProperties) => {\n const context = throwSigningPropertyError(\"context\", signingProperties.context);\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const authScheme = context.endpointV2?.properties?.authSchemes?.[0];\n const signerFunction = throwSigningPropertyError(\"signer\", config.signer);\n const signer = await signerFunction(authScheme);\n const signingRegion = signingProperties?.signingRegion;\n const signingRegionSet = signingProperties?.signingRegionSet;\n const signingName = signingProperties?.signingName;\n return {\n config,\n signer,\n signingRegion,\n signingRegionSet,\n signingName,\n };\n};\nexport class AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const validatedProps = await validateSigningProperties(signingProperties);\n const { config, signer } = validatedProps;\n let { signingRegion, signingName } = validatedProps;\n const handlerExecutionContext = signingProperties.context;\n if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {\n const [first, second] = handlerExecutionContext.authSchemes;\n if (first?.name === \"sigv4a\" && second?.name === \"sigv4\") {\n signingRegion = second?.signingRegion ?? signingRegion;\n signingName = second?.signingName ?? signingName;\n }\n }\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: signingRegion,\n signingService: signingName,\n });\n return signedRequest;\n }\n errorHandler(signingProperties) {\n return (error) => {\n const serverTime = error.ServerTime ?? getDateHeader(error.$response);\n if (serverTime) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const initialSystemClockOffset = config.systemClockOffset;\n config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);\n const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;\n if (clockSkewCorrected && error.$metadata) {\n error.$metadata.clockSkewCorrected = true;\n }\n }\n throw error;\n };\n }\n successHandler(httpResponse, signingProperties) {\n const dateHeader = getDateHeader(httpResponse);\n if (dateHeader) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);\n }\n }\n}\nexport const AWSSDKSigV4Signer = AwsSdkSigV4Signer;\n","export const memoize = (provider, isExpired, requiresRefresh) => {\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async () => {\n if (!pending) {\n pending = provider();\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider();\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider();\n }\n if (isConstant) {\n return resolved;\n }\n if (requiresRefresh && !requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider();\n return resolved;\n }\n return resolved;\n };\n};\n","export const ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nexport const CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nexport const AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nexport const SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nexport const EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nexport const SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nexport const TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nexport const REGION_SET_PARAM = \"X-Amz-Region-Set\";\nexport const AUTH_HEADER = \"authorization\";\nexport const AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nexport const DATE_HEADER = \"date\";\nexport const GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nexport const SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nexport const SHA256_HEADER = \"x-amz-content-sha256\";\nexport const TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nexport const HOST_HEADER = \"host\";\nexport const ALWAYS_UNSIGNABLE_HEADERS = {\n authorization: true,\n \"cache-control\": true,\n connection: true,\n expect: true,\n from: true,\n \"keep-alive\": true,\n \"max-forwards\": true,\n pragma: true,\n referer: true,\n te: true,\n trailer: true,\n \"transfer-encoding\": true,\n upgrade: true,\n \"user-agent\": true,\n \"x-amzn-trace-id\": true,\n};\nexport const PROXY_HEADER_PATTERN = /^proxy-/;\nexport const SEC_HEADER_PATTERN = /^sec-/;\nexport const UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];\nexport const ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nexport const ALGORITHM_IDENTIFIER_V4A = \"AWS4-ECDSA-P256-SHA256\";\nexport const EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nexport const UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nexport const MAX_CACHE_SIZE = 50;\nexport const KEY_TYPE_IDENTIFIER = \"aws4_request\";\nexport const MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { KEY_TYPE_IDENTIFIER, MAX_CACHE_SIZE } from \"./constants\";\nconst signingKeyCache = {};\nconst cacheQueue = [];\nexport const createScope = (shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`;\nexport const getSigningKey = async (sha256Constructor, credentials, shortDate, region, service) => {\n const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);\n const cacheKey = `${shortDate}:${region}:${service}:${toHex(credsHash)}:${credentials.sessionToken}`;\n if (cacheKey in signingKeyCache) {\n return signingKeyCache[cacheKey];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n let key = `AWS4${credentials.secretAccessKey}`;\n for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {\n key = await hmac(sha256Constructor, key, signable);\n }\n return (signingKeyCache[cacheKey] = key);\n};\nexport const clearCredentialCache = () => {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach((cacheKey) => {\n delete signingKeyCache[cacheKey];\n });\n};\nconst hmac = (ctor, secret, data) => {\n const hash = new ctor(secret);\n hash.update(toUint8Array(data));\n return hash.digest();\n};\n","import { ALWAYS_UNSIGNABLE_HEADERS, PROXY_HEADER_PATTERN, SEC_HEADER_PATTERN } from \"./constants\";\nexport const getCanonicalHeaders = ({ headers }, unsignableHeaders, signableHeaders) => {\n const canonical = {};\n for (const headerName of Object.keys(headers).sort()) {\n if (headers[headerName] == undefined) {\n continue;\n }\n const canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS ||\n unsignableHeaders?.has(canonicalHeaderName) ||\n PROXY_HEADER_PATTERN.test(canonicalHeaderName) ||\n SEC_HEADER_PATTERN.test(canonicalHeaderName)) {\n if (!signableHeaders || (signableHeaders && !signableHeaders.has(canonicalHeaderName))) {\n continue;\n }\n }\n canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\\s+/g, \" \");\n }\n return canonical;\n};\n","import { escapeUri } from \"@smithy/util-uri-escape\";\nimport { SIGNATURE_HEADER } from \"./constants\";\nexport const getCanonicalQuery = ({ query = {} }) => {\n const keys = [];\n const serialized = {};\n for (const key of Object.keys(query).sort()) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n continue;\n }\n keys.push(key);\n const value = query[key];\n if (typeof value === \"string\") {\n serialized[key] = `${escapeUri(key)}=${escapeUri(value)}`;\n }\n else if (Array.isArray(value)) {\n serialized[key] = value\n .slice(0)\n .reduce((encoded, value) => encoded.concat([`${escapeUri(key)}=${escapeUri(value)}`]), [])\n .sort()\n .join(\"&\");\n }\n }\n return keys\n .map((key) => serialized[key])\n .filter((serialized) => serialized)\n .join(\"&\");\n};\n","export const isArrayBuffer = (arg) => (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n","import { isArrayBuffer } from \"@smithy/is-array-buffer\";\nimport { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { SHA256_HEADER, UNSIGNED_PAYLOAD } from \"./constants\";\nexport const getPayloadHash = async ({ headers, body }, hashConstructor) => {\n for (const headerName of Object.keys(headers)) {\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return headers[headerName];\n }\n }\n if (body == undefined) {\n return \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n }\n else if (typeof body === \"string\" || ArrayBuffer.isView(body) || isArrayBuffer(body)) {\n const hashCtor = new hashConstructor();\n hashCtor.update(toUint8Array(body));\n return toHex(await hashCtor.digest());\n }\n return UNSIGNED_PAYLOAD;\n};\n","import { fromHex, toHex } from \"@smithy/util-hex-encoding\";\nimport { fromUtf8 } from \"@smithy/util-utf8\";\nexport class HeaderFormatter {\n format(headers) {\n const chunks = [];\n for (const headerName of Object.keys(headers)) {\n const bytes = fromUtf8(headerName);\n chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));\n }\n const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));\n let position = 0;\n for (const chunk of chunks) {\n out.set(chunk, position);\n position += chunk.byteLength;\n }\n return out;\n }\n formatHeaderValue(header) {\n switch (header.type) {\n case \"boolean\":\n return Uint8Array.from([header.value ? 0 : 1]);\n case \"byte\":\n return Uint8Array.from([2, header.value]);\n case \"short\":\n const shortView = new DataView(new ArrayBuffer(3));\n shortView.setUint8(0, 3);\n shortView.setInt16(1, header.value, false);\n return new Uint8Array(shortView.buffer);\n case \"integer\":\n const intView = new DataView(new ArrayBuffer(5));\n intView.setUint8(0, 4);\n intView.setInt32(1, header.value, false);\n return new Uint8Array(intView.buffer);\n case \"long\":\n const longBytes = new Uint8Array(9);\n longBytes[0] = 5;\n longBytes.set(header.value.bytes, 1);\n return longBytes;\n case \"binary\":\n const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));\n binView.setUint8(0, 6);\n binView.setUint16(1, header.value.byteLength, false);\n const binBytes = new Uint8Array(binView.buffer);\n binBytes.set(header.value, 3);\n return binBytes;\n case \"string\":\n const utf8Bytes = fromUtf8(header.value);\n const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));\n strView.setUint8(0, 7);\n strView.setUint16(1, utf8Bytes.byteLength, false);\n const strBytes = new Uint8Array(strView.buffer);\n strBytes.set(utf8Bytes, 3);\n return strBytes;\n case \"timestamp\":\n const tsBytes = new Uint8Array(9);\n tsBytes[0] = 8;\n tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);\n return tsBytes;\n case \"uuid\":\n if (!UUID_PATTERN.test(header.value)) {\n throw new Error(`Invalid UUID received: ${header.value}`);\n }\n const uuidBytes = new Uint8Array(17);\n uuidBytes[0] = 9;\n uuidBytes.set(fromHex(header.value.replace(/\\-/g, \"\")), 1);\n return uuidBytes;\n }\n }\n}\nvar HEADER_VALUE_TYPE;\n(function (HEADER_VALUE_TYPE) {\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolTrue\"] = 0] = \"boolTrue\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolFalse\"] = 1] = \"boolFalse\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byte\"] = 2] = \"byte\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"short\"] = 3] = \"short\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"integer\"] = 4] = \"integer\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"long\"] = 5] = \"long\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byteArray\"] = 6] = \"byteArray\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"string\"] = 7] = \"string\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"timestamp\"] = 8] = \"timestamp\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"uuid\"] = 9] = \"uuid\";\n})(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));\nconst UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;\nexport class Int64 {\n constructor(bytes) {\n this.bytes = bytes;\n if (bytes.byteLength !== 8) {\n throw new Error(\"Int64 buffers must be exactly 8 bytes\");\n }\n }\n static fromNumber(number) {\n if (number > 9223372036854776000 || number < -9223372036854776000) {\n throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);\n }\n const bytes = new Uint8Array(8);\n for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {\n bytes[i] = remaining;\n }\n if (number < 0) {\n negate(bytes);\n }\n return new Int64(bytes);\n }\n valueOf() {\n const bytes = this.bytes.slice(0);\n const negative = bytes[0] & 0b10000000;\n if (negative) {\n negate(bytes);\n }\n return parseInt(toHex(bytes), 16) * (negative ? -1 : 1);\n }\n toString() {\n return String(this.valueOf());\n }\n}\nfunction negate(bytes) {\n for (let i = 0; i < 8; i++) {\n bytes[i] ^= 0xff;\n }\n for (let i = 7; i > -1; i--) {\n bytes[i]++;\n if (bytes[i] !== 0)\n break;\n }\n}\n","export const hasHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n return false;\n};\nexport const getHeaderValue = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return headers[headerName];\n }\n }\n return undefined;\n};\nexport const deleteHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n delete headers[headerName];\n }\n }\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport const moveHeadersToQuery = (request, options = {}) => {\n const { headers, query = {} } = HttpRequest.clone(request);\n for (const name of Object.keys(headers)) {\n const lname = name.toLowerCase();\n if (lname.slice(0, 6) === \"x-amz-\" && !options.unhoistableHeaders?.has(lname)) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n return {\n ...request,\n headers,\n query,\n };\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { GENERATED_HEADERS } from \"./constants\";\nexport const prepareRequest = (request) => {\n request = HttpRequest.clone(request);\n for (const headerName of Object.keys(request.headers)) {\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n return request;\n};\n","export const iso8601 = (time) => toDate(time)\n .toISOString()\n .replace(/\\.\\d{3}Z$/, \"Z\");\nexport const toDate = (time) => {\n if (typeof time === \"number\") {\n return new Date(time * 1000);\n }\n if (typeof time === \"string\") {\n if (Number(time)) {\n return new Date(Number(time) * 1000);\n }\n return new Date(time);\n }\n return time;\n};\n","import { toHex } from \"@smithy/util-hex-encoding\";\nimport { normalizeProvider } from \"@smithy/util-middleware\";\nimport { escapeUri } from \"@smithy/util-uri-escape\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { ALGORITHM_IDENTIFIER, ALGORITHM_QUERY_PARAM, AMZ_DATE_HEADER, AMZ_DATE_QUERY_PARAM, AUTH_HEADER, CREDENTIAL_QUERY_PARAM, EVENT_ALGORITHM_IDENTIFIER, EXPIRES_QUERY_PARAM, MAX_PRESIGNED_TTL, SHA256_HEADER, SIGNATURE_QUERY_PARAM, SIGNED_HEADERS_QUERY_PARAM, TOKEN_HEADER, TOKEN_QUERY_PARAM, } from \"./constants\";\nimport { createScope, getSigningKey } from \"./credentialDerivation\";\nimport { getCanonicalHeaders } from \"./getCanonicalHeaders\";\nimport { getCanonicalQuery } from \"./getCanonicalQuery\";\nimport { getPayloadHash } from \"./getPayloadHash\";\nimport { HeaderFormatter } from \"./HeaderFormatter\";\nimport { hasHeader } from \"./headerUtil\";\nimport { moveHeadersToQuery } from \"./moveHeadersToQuery\";\nimport { prepareRequest } from \"./prepareRequest\";\nimport { iso8601 } from \"./utilDate\";\nexport class SignatureV4 {\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n this.headerFormatter = new HeaderFormatter();\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = normalizeProvider(region);\n this.credentialProvider = normalizeProvider(credentials);\n }\n async presign(originalRequest, options = {}) {\n const { signingDate = new Date(), expiresIn = 3600, unsignableHeaders, unhoistableHeaders, signableHeaders, signingRegion, signingService, } = options;\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { longDate, shortDate } = formatDate(signingDate);\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return Promise.reject(\"Signature version 4 presigned URLs\" + \" must have an expiration date less than one week in\" + \" the future\");\n }\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);\n request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)));\n return request;\n }\n async sign(toSign, options) {\n if (typeof toSign === \"string\") {\n return this.signString(toSign, options);\n }\n else if (toSign.headers && toSign.payload) {\n return this.signEvent(toSign, options);\n }\n else if (toSign.message) {\n return this.signMessage(toSign, options);\n }\n else {\n return this.signRequest(toSign, options);\n }\n }\n async signEvent({ headers, payload }, { signingDate = new Date(), priorSignature, signingRegion, signingService }) {\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate, longDate } = formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);\n const hash = new this.sha256();\n hash.update(headers);\n const hashedHeaders = toHex(await hash.digest());\n const stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload,\n ].join(\"\\n\");\n return this.signString(stringToSign, { signingDate, signingRegion: region, signingService });\n }\n async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService }) {\n const promise = this.signEvent({\n headers: this.headerFormatter.format(signableMessage.message.headers),\n payload: signableMessage.message.body,\n }, {\n signingDate,\n signingRegion,\n signingService,\n priorSignature: signableMessage.priorSignature,\n });\n return promise.then((signature) => {\n return { message: signableMessage.message, signature };\n });\n }\n async signString(stringToSign, { signingDate = new Date(), signingRegion, signingService } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate } = formatDate(signingDate);\n const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));\n hash.update(toUint8Array(stringToSign));\n return toHex(await hash.digest());\n }\n async signRequest(requestToSign, { signingDate = new Date(), signableHeaders, unsignableHeaders, signingRegion, signingService, } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const request = prepareRequest(requestToSign);\n const { longDate, shortDate } = formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n const payloadHash = await getPayloadHash(request, this.sha256);\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n const signature = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash));\n request.headers[AUTH_HEADER] =\n `${ALGORITHM_IDENTIFIER} ` +\n `Credential=${credentials.accessKeyId}/${scope}, ` +\n `SignedHeaders=${getCanonicalHeaderList(canonicalHeaders)}, ` +\n `Signature=${signature}`;\n return request;\n }\n createCanonicalRequest(request, canonicalHeaders, payloadHash) {\n const sortedHeaders = Object.keys(canonicalHeaders).sort();\n return `${request.method}\n${this.getCanonicalPath(request)}\n${getCanonicalQuery(request)}\n${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join(\"\\n\")}\n\n${sortedHeaders.join(\";\")}\n${payloadHash}`;\n }\n async createStringToSign(longDate, credentialScope, canonicalRequest) {\n const hash = new this.sha256();\n hash.update(toUint8Array(canonicalRequest));\n const hashedRequest = await hash.digest();\n return `${ALGORITHM_IDENTIFIER}\n${longDate}\n${credentialScope}\n${toHex(hashedRequest)}`;\n }\n getCanonicalPath({ path }) {\n if (this.uriEscapePath) {\n const normalizedPathSegments = [];\n for (const pathSegment of path.split(\"/\")) {\n if (pathSegment?.length === 0)\n continue;\n if (pathSegment === \".\")\n continue;\n if (pathSegment === \"..\") {\n normalizedPathSegments.pop();\n }\n else {\n normalizedPathSegments.push(pathSegment);\n }\n }\n const normalizedPath = `${path?.startsWith(\"/\") ? \"/\" : \"\"}${normalizedPathSegments.join(\"/\")}${normalizedPathSegments.length > 0 && path?.endsWith(\"/\") ? \"/\" : \"\"}`;\n const doubleEncoded = escapeUri(normalizedPath);\n return doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n }\n async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {\n const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest);\n const hash = new this.sha256(await keyPromise);\n hash.update(toUint8Array(stringToSign));\n return toHex(await hash.digest());\n }\n getSigningKey(credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n }\n validateResolvedCredentials(credentials) {\n if (typeof credentials !== \"object\" ||\n typeof credentials.accessKeyId !== \"string\" ||\n typeof credentials.secretAccessKey !== \"string\") {\n throw new Error(\"Resolved credential object is not valid\");\n }\n }\n}\nconst formatDate = (now) => {\n const longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n};\nconst getCanonicalHeaderList = (headers) => Object.keys(headers).sort().join(\";\");\n","import { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider, normalizeProvider, } from \"@smithy/core\";\nimport { SignatureV4 } from \"@smithy/signature-v4\";\nexport const resolveAwsSdkSigV4Config = (config) => {\n let normalizedCreds;\n if (config.credentials) {\n normalizedCreds = memoizeIdentityProvider(config.credentials, isIdentityExpired, doesIdentityRequireRefresh);\n }\n if (!normalizedCreds) {\n if (config.credentialDefaultProvider) {\n normalizedCreds = normalizeProvider(config.credentialDefaultProvider(Object.assign({}, config, {\n parentClientConfig: config,\n })));\n }\n else {\n normalizedCreds = async () => {\n throw new Error(\"`credentials` is missing\");\n };\n }\n }\n const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256, } = config;\n let signer;\n if (config.signer) {\n signer = normalizeProvider(config.signer);\n }\n else if (config.regionInfoProvider) {\n signer = () => normalizeProvider(config.region)()\n .then(async (region) => [\n (await config.regionInfoProvider(region, {\n useFipsEndpoint: await config.useFipsEndpoint(),\n useDualstackEndpoint: await config.useDualstackEndpoint(),\n })) || {},\n region,\n ])\n .then(([regionInfo, region]) => {\n const { signingRegion, signingService } = regionInfo;\n config.signingRegion = config.signingRegion || signingRegion || region;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: normalizedCreds,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n });\n }\n else {\n signer = async (authScheme) => {\n authScheme = Object.assign({}, {\n name: \"sigv4\",\n signingName: config.signingName || config.defaultSigningName,\n signingRegion: await normalizeProvider(config.region)(),\n properties: {},\n }, authScheme);\n const signingRegion = authScheme.signingRegion;\n const signingService = authScheme.signingName;\n config.signingRegion = config.signingRegion || signingRegion;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: normalizedCreds,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n };\n }\n return {\n ...config,\n systemClockOffset,\n signingEscapePath,\n credentials: normalizedCreds,\n signer,\n };\n};\nexport const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\n","import { collectBody } from \"@smithy/smithy-client\";\nexport const collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\n","import { collectBodyString } from \"../common\";\nexport const parseJsonBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {\n if (encoded.length) {\n try {\n return JSON.parse(encoded);\n }\n catch (e) {\n if (e?.name === \"SyntaxError\") {\n Object.defineProperty(e, \"$responseBodyText\", {\n value: encoded,\n });\n }\n throw e;\n }\n }\n return {};\n});\nexport const parseJsonErrorBody = async (errorBody, context) => {\n const value = await parseJsonBody(errorBody, context);\n value.message = value.message ?? value.Message;\n return value;\n};\nexport const loadRestJsonErrorCode = (output, data) => {\n const findKey = (object, key) => Object.keys(object).find((k) => k.toLowerCase() === key.toLowerCase());\n const sanitizeErrorCode = (rawValue) => {\n let cleanValue = rawValue;\n if (typeof cleanValue === \"number\") {\n cleanValue = cleanValue.toString();\n }\n if (cleanValue.indexOf(\",\") >= 0) {\n cleanValue = cleanValue.split(\",\")[0];\n }\n if (cleanValue.indexOf(\":\") >= 0) {\n cleanValue = cleanValue.split(\":\")[0];\n }\n if (cleanValue.indexOf(\"#\") >= 0) {\n cleanValue = cleanValue.split(\"#\")[1];\n }\n return cleanValue;\n };\n const headerKey = findKey(output.headers, \"x-amzn-errortype\");\n if (headerKey !== undefined) {\n return sanitizeErrorCode(output.headers[headerKey]);\n }\n if (data.code !== undefined) {\n return sanitizeErrorCode(data.code);\n }\n if (data[\"__type\"] !== undefined) {\n return sanitizeErrorCode(data[\"__type\"]);\n }\n};\n","import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultTranslateHttpAuthSchemeParametersProvider = async (config, context, input) => {\n return {\n operation: getSmithyContext(context).operation,\n region: (await normalizeProvider(config.region)()) ||\n (() => {\n throw new Error(\"expected `region` to be configured for `aws.auth#sigv4`\");\n })(),\n };\n};\nfunction createAwsAuthSigv4HttpAuthOption(authParameters) {\n return {\n schemeId: \"aws.auth#sigv4\",\n signingProperties: {\n name: \"translate\",\n region: authParameters.region,\n },\n propertiesExtractor: (config, context) => ({\n signingProperties: {\n config,\n context,\n },\n }),\n };\n}\nexport const defaultTranslateHttpAuthSchemeProvider = (authParameters) => {\n const options = [];\n switch (authParameters.operation) {\n default: {\n options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n }\n }\n return options;\n};\nexport const resolveHttpAuthSchemeConfig = (config) => {\n const config_0 = resolveAwsSdkSigV4Config(config);\n return {\n ...config_0,\n };\n};\n","export const resolveClientEndpointParameters = (options) => {\n return {\n ...options,\n useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n useFipsEndpoint: options.useFipsEndpoint ?? false,\n defaultSigningName: \"translate\",\n };\n};\nexport const commonParams = {\n UseFIPS: { type: \"builtInParams\", name: \"useFipsEndpoint\" },\n Endpoint: { type: \"builtInParams\", name: \"endpoint\" },\n Region: { type: \"builtInParams\", name: \"region\" },\n UseDualStack: { type: \"builtInParams\", name: \"useDualstackEndpoint\" },\n};\n","export const fromUtf8 = (input) => new TextEncoder().encode(input);\n","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { fromUtf8 as fromUtf8Browser } from \"@smithy/util-utf8\";\n// Quick polyfill\nvar fromUtf8 = typeof Buffer !== \"undefined\" && Buffer.from\n ? function (input) { return Buffer.from(input, \"utf8\"); }\n : fromUtf8Browser;\nexport function convertToBuffer(data) {\n // Already a Uint8, do nothing\n if (data instanceof Uint8Array)\n return data;\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n}\n//# sourceMappingURL=convertToBuffer.js.map","// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nexport function isEmptyData(data) {\n if (typeof data === \"string\") {\n return data.length === 0;\n }\n return data.byteLength === 0;\n}\n//# sourceMappingURL=isEmptyData.js.map","export var SHA_256_HASH = { name: \"SHA-256\" };\nexport var SHA_256_HMAC_ALGO = {\n name: \"HMAC\",\n hash: SHA_256_HASH\n};\nexport var EMPTY_DATA_SHA_256 = new Uint8Array([\n 227,\n 176,\n 196,\n 66,\n 152,\n 252,\n 28,\n 20,\n 154,\n 251,\n 244,\n 200,\n 153,\n 111,\n 185,\n 36,\n 39,\n 174,\n 65,\n 228,\n 100,\n 155,\n 147,\n 76,\n 164,\n 149,\n 153,\n 27,\n 120,\n 82,\n 184,\n 85\n]);\n//# sourceMappingURL=constants.js.map","const fallbackWindow = {};\nexport function locateWindow() {\n if (typeof window !== \"undefined\") {\n return window;\n }\n else if (typeof self !== \"undefined\") {\n return self;\n }\n return fallbackWindow;\n}\n","import { isEmptyData, convertToBuffer } from \"@aws-crypto/util\";\nimport { EMPTY_DATA_SHA_256, SHA_256_HASH, SHA_256_HMAC_ALGO, } from \"./constants\";\nimport { locateWindow } from \"@aws-sdk/util-locate-window\";\nvar Sha256 = /** @class */ (function () {\n function Sha256(secret) {\n this.toHash = new Uint8Array(0);\n this.secret = secret;\n this.reset();\n }\n Sha256.prototype.update = function (data) {\n if (isEmptyData(data)) {\n return;\n }\n var update = convertToBuffer(data);\n var typedArray = new Uint8Array(this.toHash.byteLength + update.byteLength);\n typedArray.set(this.toHash, 0);\n typedArray.set(update, this.toHash.byteLength);\n this.toHash = typedArray;\n };\n Sha256.prototype.digest = function () {\n var _this = this;\n if (this.key) {\n return this.key.then(function (key) {\n return locateWindow()\n .crypto.subtle.sign(SHA_256_HMAC_ALGO, key, _this.toHash)\n .then(function (data) { return new Uint8Array(data); });\n });\n }\n if (isEmptyData(this.toHash)) {\n return Promise.resolve(EMPTY_DATA_SHA_256);\n }\n return Promise.resolve()\n .then(function () {\n return locateWindow().crypto.subtle.digest(SHA_256_HASH, _this.toHash);\n })\n .then(function (data) { return Promise.resolve(new Uint8Array(data)); });\n };\n Sha256.prototype.reset = function () {\n var _this = this;\n this.toHash = new Uint8Array(0);\n if (this.secret && this.secret !== void 0) {\n this.key = new Promise(function (resolve, reject) {\n locateWindow()\n .crypto.subtle.importKey(\"raw\", convertToBuffer(_this.secret), SHA_256_HMAC_ALGO, false, [\"sign\"])\n .then(resolve, reject);\n });\n this.key.catch(function () { });\n }\n };\n return Sha256;\n}());\nexport { Sha256 };\n//# sourceMappingURL=webCryptoSha256.js.map","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\r\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\r\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport function __addDisposableResource(env, value, async) {\r\n if (value !== null && value !== void 0) {\r\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\r\n var dispose, inner;\r\n if (async) {\r\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\r\n dispose = value[Symbol.asyncDispose];\r\n }\r\n if (dispose === void 0) {\r\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\r\n dispose = value[Symbol.dispose];\r\n if (async) inner = dispose;\r\n }\r\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\r\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\r\n env.stack.push({ value: value, dispose: dispose, async: async });\r\n }\r\n else if (async) {\r\n env.stack.push({ async: true });\r\n }\r\n return value;\r\n\r\n}\r\n\r\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\r\n var e = new Error(message);\r\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\r\n};\r\n\r\nexport function __disposeResources(env) {\r\n function fail(e) {\r\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\r\n env.hasError = true;\r\n }\r\n var r, s = 0;\r\n function next() {\r\n while (r = env.stack.pop()) {\r\n try {\r\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\r\n if (r.dispose) {\r\n var result = r.dispose.call(r.value);\r\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\r\n }\r\n else s |= 1;\r\n }\r\n catch (e) {\r\n fail(e);\r\n }\r\n }\r\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\r\n if (env.hasError) throw env.error;\r\n }\r\n return next();\r\n}\r\n\r\nexport default {\r\n __extends: __extends,\r\n __assign: __assign,\r\n __rest: __rest,\r\n __decorate: __decorate,\r\n __param: __param,\r\n __metadata: __metadata,\r\n __awaiter: __awaiter,\r\n __generator: __generator,\r\n __createBinding: __createBinding,\r\n __exportStar: __exportStar,\r\n __values: __values,\r\n __read: __read,\r\n __spread: __spread,\r\n __spreadArrays: __spreadArrays,\r\n __spreadArray: __spreadArray,\r\n __await: __await,\r\n __asyncGenerator: __asyncGenerator,\r\n __asyncDelegator: __asyncDelegator,\r\n __asyncValues: __asyncValues,\r\n __makeTemplateObject: __makeTemplateObject,\r\n __importStar: __importStar,\r\n __importDefault: __importDefault,\r\n __classPrivateFieldGet: __classPrivateFieldGet,\r\n __classPrivateFieldSet: __classPrivateFieldSet,\r\n __classPrivateFieldIn: __classPrivateFieldIn,\r\n __addDisposableResource: __addDisposableResource,\r\n __disposeResources: __disposeResources,\r\n};\r\n","/**\n * @internal\n */\nexport var BLOCK_SIZE = 64;\n/**\n * @internal\n */\nexport var DIGEST_LENGTH = 32;\n/**\n * @internal\n */\nexport var KEY = new Uint32Array([\n 0x428a2f98,\n 0x71374491,\n 0xb5c0fbcf,\n 0xe9b5dba5,\n 0x3956c25b,\n 0x59f111f1,\n 0x923f82a4,\n 0xab1c5ed5,\n 0xd807aa98,\n 0x12835b01,\n 0x243185be,\n 0x550c7dc3,\n 0x72be5d74,\n 0x80deb1fe,\n 0x9bdc06a7,\n 0xc19bf174,\n 0xe49b69c1,\n 0xefbe4786,\n 0x0fc19dc6,\n 0x240ca1cc,\n 0x2de92c6f,\n 0x4a7484aa,\n 0x5cb0a9dc,\n 0x76f988da,\n 0x983e5152,\n 0xa831c66d,\n 0xb00327c8,\n 0xbf597fc7,\n 0xc6e00bf3,\n 0xd5a79147,\n 0x06ca6351,\n 0x14292967,\n 0x27b70a85,\n 0x2e1b2138,\n 0x4d2c6dfc,\n 0x53380d13,\n 0x650a7354,\n 0x766a0abb,\n 0x81c2c92e,\n 0x92722c85,\n 0xa2bfe8a1,\n 0xa81a664b,\n 0xc24b8b70,\n 0xc76c51a3,\n 0xd192e819,\n 0xd6990624,\n 0xf40e3585,\n 0x106aa070,\n 0x19a4c116,\n 0x1e376c08,\n 0x2748774c,\n 0x34b0bcb5,\n 0x391c0cb3,\n 0x4ed8aa4a,\n 0x5b9cca4f,\n 0x682e6ff3,\n 0x748f82ee,\n 0x78a5636f,\n 0x84c87814,\n 0x8cc70208,\n 0x90befffa,\n 0xa4506ceb,\n 0xbef9a3f7,\n 0xc67178f2\n]);\n/**\n * @internal\n */\nexport var INIT = [\n 0x6a09e667,\n 0xbb67ae85,\n 0x3c6ef372,\n 0xa54ff53a,\n 0x510e527f,\n 0x9b05688c,\n 0x1f83d9ab,\n 0x5be0cd19\n];\n/**\n * @internal\n */\nexport var MAX_HASHABLE_LENGTH = Math.pow(2, 53) - 1;\n//# sourceMappingURL=constants.js.map","import { BLOCK_SIZE, DIGEST_LENGTH, INIT, KEY, MAX_HASHABLE_LENGTH } from \"./constants\";\n/**\n * @internal\n */\nvar RawSha256 = /** @class */ (function () {\n function RawSha256() {\n this.state = Int32Array.from(INIT);\n this.temp = new Int32Array(64);\n this.buffer = new Uint8Array(64);\n this.bufferLength = 0;\n this.bytesHashed = 0;\n /**\n * @internal\n */\n this.finished = false;\n }\n RawSha256.prototype.update = function (data) {\n if (this.finished) {\n throw new Error(\"Attempted to update an already finished hash.\");\n }\n var position = 0;\n var byteLength = data.byteLength;\n this.bytesHashed += byteLength;\n if (this.bytesHashed * 8 > MAX_HASHABLE_LENGTH) {\n throw new Error(\"Cannot hash more than 2^53 - 1 bits\");\n }\n while (byteLength > 0) {\n this.buffer[this.bufferLength++] = data[position++];\n byteLength--;\n if (this.bufferLength === BLOCK_SIZE) {\n this.hashBuffer();\n this.bufferLength = 0;\n }\n }\n };\n RawSha256.prototype.digest = function () {\n if (!this.finished) {\n var bitsHashed = this.bytesHashed * 8;\n var bufferView = new DataView(this.buffer.buffer, this.buffer.byteOffset, this.buffer.byteLength);\n var undecoratedLength = this.bufferLength;\n bufferView.setUint8(this.bufferLength++, 0x80);\n // Ensure the final block has enough room for the hashed length\n if (undecoratedLength % BLOCK_SIZE >= BLOCK_SIZE - 8) {\n for (var i = this.bufferLength; i < BLOCK_SIZE; i++) {\n bufferView.setUint8(i, 0);\n }\n this.hashBuffer();\n this.bufferLength = 0;\n }\n for (var i = this.bufferLength; i < BLOCK_SIZE - 8; i++) {\n bufferView.setUint8(i, 0);\n }\n bufferView.setUint32(BLOCK_SIZE - 8, Math.floor(bitsHashed / 0x100000000), true);\n bufferView.setUint32(BLOCK_SIZE - 4, bitsHashed);\n this.hashBuffer();\n this.finished = true;\n }\n // The value in state is little-endian rather than big-endian, so flip\n // each word into a new Uint8Array\n var out = new Uint8Array(DIGEST_LENGTH);\n for (var i = 0; i < 8; i++) {\n out[i * 4] = (this.state[i] >>> 24) & 0xff;\n out[i * 4 + 1] = (this.state[i] >>> 16) & 0xff;\n out[i * 4 + 2] = (this.state[i] >>> 8) & 0xff;\n out[i * 4 + 3] = (this.state[i] >>> 0) & 0xff;\n }\n return out;\n };\n RawSha256.prototype.hashBuffer = function () {\n var _a = this, buffer = _a.buffer, state = _a.state;\n var state0 = state[0], state1 = state[1], state2 = state[2], state3 = state[3], state4 = state[4], state5 = state[5], state6 = state[6], state7 = state[7];\n for (var i = 0; i < BLOCK_SIZE; i++) {\n if (i < 16) {\n this.temp[i] =\n ((buffer[i * 4] & 0xff) << 24) |\n ((buffer[i * 4 + 1] & 0xff) << 16) |\n ((buffer[i * 4 + 2] & 0xff) << 8) |\n (buffer[i * 4 + 3] & 0xff);\n }\n else {\n var u = this.temp[i - 2];\n var t1_1 = ((u >>> 17) | (u << 15)) ^ ((u >>> 19) | (u << 13)) ^ (u >>> 10);\n u = this.temp[i - 15];\n var t2_1 = ((u >>> 7) | (u << 25)) ^ ((u >>> 18) | (u << 14)) ^ (u >>> 3);\n this.temp[i] =\n ((t1_1 + this.temp[i - 7]) | 0) + ((t2_1 + this.temp[i - 16]) | 0);\n }\n var t1 = ((((((state4 >>> 6) | (state4 << 26)) ^\n ((state4 >>> 11) | (state4 << 21)) ^\n ((state4 >>> 25) | (state4 << 7))) +\n ((state4 & state5) ^ (~state4 & state6))) |\n 0) +\n ((state7 + ((KEY[i] + this.temp[i]) | 0)) | 0)) |\n 0;\n var t2 = ((((state0 >>> 2) | (state0 << 30)) ^\n ((state0 >>> 13) | (state0 << 19)) ^\n ((state0 >>> 22) | (state0 << 10))) +\n ((state0 & state1) ^ (state0 & state2) ^ (state1 & state2))) |\n 0;\n state7 = state6;\n state6 = state5;\n state5 = state4;\n state4 = (state3 + t1) | 0;\n state3 = state2;\n state2 = state1;\n state1 = state0;\n state0 = (t1 + t2) | 0;\n }\n state[0] += state0;\n state[1] += state1;\n state[2] += state2;\n state[3] += state3;\n state[4] += state4;\n state[5] += state5;\n state[6] += state6;\n state[7] += state7;\n };\n return RawSha256;\n}());\nexport { RawSha256 };\n//# sourceMappingURL=RawSha256.js.map","import { __awaiter, __generator } from \"tslib\";\nimport { BLOCK_SIZE } from \"./constants\";\nimport { RawSha256 } from \"./RawSha256\";\nimport { isEmptyData, convertToBuffer } from \"@aws-crypto/util\";\nvar Sha256 = /** @class */ (function () {\n function Sha256(secret) {\n this.secret = secret;\n this.hash = new RawSha256();\n this.reset();\n }\n Sha256.prototype.update = function (toHash) {\n if (isEmptyData(toHash) || this.error) {\n return;\n }\n try {\n this.hash.update(convertToBuffer(toHash));\n }\n catch (e) {\n this.error = e;\n }\n };\n /* This synchronous method keeps compatibility\n * with the v2 aws-sdk.\n */\n Sha256.prototype.digestSync = function () {\n if (this.error) {\n throw this.error;\n }\n if (this.outer) {\n if (!this.outer.finished) {\n this.outer.update(this.hash.digest());\n }\n return this.outer.digest();\n }\n return this.hash.digest();\n };\n /* The underlying digest method here is synchronous.\n * To keep the same interface with the other hash functions\n * the default is to expose this as an async method.\n * However, it can sometimes be useful to have a sync method.\n */\n Sha256.prototype.digest = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2 /*return*/, this.digestSync()];\n });\n });\n };\n Sha256.prototype.reset = function () {\n this.hash = new RawSha256();\n if (this.secret) {\n this.outer = new RawSha256();\n var inner = bufferFromSecret(this.secret);\n var outer = new Uint8Array(BLOCK_SIZE);\n outer.set(inner);\n for (var i = 0; i < BLOCK_SIZE; i++) {\n inner[i] ^= 0x36;\n outer[i] ^= 0x5c;\n }\n this.hash.update(inner);\n this.outer.update(outer);\n // overwrite the copied key in memory\n for (var i = 0; i < inner.byteLength; i++) {\n inner[i] = 0;\n }\n }\n };\n return Sha256;\n}());\nexport { Sha256 };\nfunction bufferFromSecret(secret) {\n var input = convertToBuffer(secret);\n if (input.byteLength > BLOCK_SIZE) {\n var bufferHash = new RawSha256();\n bufferHash.update(input);\n input = bufferHash.digest();\n }\n var buffer = new Uint8Array(BLOCK_SIZE);\n buffer.set(input);\n return buffer;\n}\n//# sourceMappingURL=jsSha256.js.map","import { __awaiter, __generator } from \"tslib\";\nvar subtleCryptoMethods = [\n \"decrypt\",\n \"digest\",\n \"encrypt\",\n \"exportKey\",\n \"generateKey\",\n \"importKey\",\n \"sign\",\n \"verify\"\n];\nexport function supportsWebCrypto(window) {\n if (supportsSecureRandom(window) &&\n typeof window.crypto.subtle === \"object\") {\n var subtle = window.crypto.subtle;\n return supportsSubtleCrypto(subtle);\n }\n return false;\n}\nexport function supportsSecureRandom(window) {\n if (typeof window === \"object\" && typeof window.crypto === \"object\") {\n var getRandomValues = window.crypto.getRandomValues;\n return typeof getRandomValues === \"function\";\n }\n return false;\n}\nexport function supportsSubtleCrypto(subtle) {\n return (subtle &&\n subtleCryptoMethods.every(function (methodName) { return typeof subtle[methodName] === \"function\"; }));\n}\nexport function supportsZeroByteGCM(subtle) {\n return __awaiter(this, void 0, void 0, function () {\n var key, zeroByteAuthTag, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!supportsSubtleCrypto(subtle))\n return [2 /*return*/, false];\n _b.label = 1;\n case 1:\n _b.trys.push([1, 4, , 5]);\n return [4 /*yield*/, subtle.generateKey({ name: \"AES-GCM\", length: 128 }, false, [\"encrypt\"])];\n case 2:\n key = _b.sent();\n return [4 /*yield*/, subtle.encrypt({\n name: \"AES-GCM\",\n iv: new Uint8Array(Array(12)),\n additionalData: new Uint8Array(Array(16)),\n tagLength: 128\n }, key, new Uint8Array(0))];\n case 3:\n zeroByteAuthTag = _b.sent();\n return [2 /*return*/, zeroByteAuthTag.byteLength === 16];\n case 4:\n _a = _b.sent();\n return [2 /*return*/, false];\n case 5: return [2 /*return*/];\n }\n });\n });\n}\n//# sourceMappingURL=supportsWebCrypto.js.map","import { Sha256 as WebCryptoSha256 } from \"./webCryptoSha256\";\nimport { Sha256 as JsSha256 } from \"@aws-crypto/sha256-js\";\nimport { supportsWebCrypto } from \"@aws-crypto/supports-web-crypto\";\nimport { locateWindow } from \"@aws-sdk/util-locate-window\";\nimport { convertToBuffer } from \"@aws-crypto/util\";\nvar Sha256 = /** @class */ (function () {\n function Sha256(secret) {\n if (supportsWebCrypto(locateWindow())) {\n this.hash = new WebCryptoSha256(secret);\n }\n else {\n this.hash = new JsSha256(secret);\n }\n }\n Sha256.prototype.update = function (data, encoding) {\n this.hash.update(convertToBuffer(data));\n };\n Sha256.prototype.digest = function () {\n return this.hash.digest();\n };\n Sha256.prototype.reset = function () {\n this.hash.reset();\n };\n return Sha256;\n}());\nexport { Sha256 };\n//# sourceMappingURL=crossPlatformSha256.js.map","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]<u[1][a])return-1}},e.map=function(e,t){var r,n=[];if(Array.prototype.map)return Array.prototype.map.call(e,t);for(r=0;r<e.length;r+=1)n.push(t(e[r]));return n},e.find=function(e,t){var r,n;if(Array.prototype.find)return Array.prototype.find.call(e,t);for(r=0,n=e.length;r<n;r+=1){var i=e[r];if(t(i,r))return i}},e.assign=function(e){for(var t,r,n=e,i=arguments.length,s=new Array(i>1?i-1:0),a=1;a<i;a++)s[a-1]=arguments[a];if(Object.assign)return Object.assign.apply(Object,[e].concat(s));var o=function(){var e=s[t];\"object\"==typeof e&&null!==e&&Object.keys(e).forEach((function(t){n[t]=e[t]}))};for(t=0,r=s.length;t<r;t+=1)o();return e},e.getBrowserAlias=function(e){return n.BROWSER_ALIASES_MAP[e]},e.getBrowserTypeByAlias=function(e){return n.BROWSER_MAP[e]||\"\"},e}();t.default=i,e.exports=t.default},18:function(e,t,r){\"use strict\";t.__esModule=!0,t.ENGINE_MAP=t.OS_MAP=t.PLATFORMS_MAP=t.BROWSER_MAP=t.BROWSER_ALIASES_MAP=void 0;t.BROWSER_ALIASES_MAP={\"Amazon Silk\":\"amazon_silk\",\"Android Browser\":\"android\",Bada:\"bada\",BlackBerry:\"blackberry\",Chrome:\"chrome\",Chromium:\"chromium\",Electron:\"electron\",Epiphany:\"epiphany\",Firefox:\"firefox\",Focus:\"focus\",Generic:\"generic\",\"Google Search\":\"google_search\",Googlebot:\"googlebot\",\"Internet Explorer\":\"ie\",\"K-Meleon\":\"k_meleon\",Maxthon:\"maxthon\",\"Microsoft Edge\":\"edge\",\"MZ Browser\":\"mz\",\"NAVER Whale Browser\":\"naver\",Opera:\"opera\",\"Opera Coast\":\"opera_coast\",PhantomJS:\"phantomjs\",Puffin:\"puffin\",QupZilla:\"qupzilla\",QQ:\"qq\",QQLite:\"qqlite\",Safari:\"safari\",Sailfish:\"sailfish\",\"Samsung Internet for Android\":\"samsung_internet\",SeaMonkey:\"seamonkey\",Sleipnir:\"sleipnir\",Swing:\"swing\",Tizen:\"tizen\",\"UC Browser\":\"uc\",Vivaldi:\"vivaldi\",\"WebOS Browser\":\"webos\",WeChat:\"wechat\",\"Yandex Browser\":\"yandex\",Roku:\"roku\"};t.BROWSER_MAP={amazon_silk:\"Amazon Silk\",android:\"Android Browser\",bada:\"Bada\",blackberry:\"BlackBerry\",chrome:\"Chrome\",chromium:\"Chromium\",electron:\"Electron\",epiphany:\"Epiphany\",firefox:\"Firefox\",focus:\"Focus\",generic:\"Generic\",googlebot:\"Googlebot\",google_search:\"Google Search\",ie:\"Internet Explorer\",k_meleon:\"K-Meleon\",maxthon:\"Maxthon\",edge:\"Microsoft Edge\",mz:\"MZ Browser\",naver:\"NAVER Whale Browser\",opera:\"Opera\",opera_coast:\"Opera Coast\",phantomjs:\"PhantomJS\",puffin:\"Puffin\",qupzilla:\"QupZilla\",qq:\"QQ Browser\",qqlite:\"QQ Browser Lite\",safari:\"Safari\",sailfish:\"Sailfish\",samsung_internet:\"Samsung Internet for Android\",seamonkey:\"SeaMonkey\",sleipnir:\"Sleipnir\",swing:\"Swing\",tizen:\"Tizen\",uc:\"UC Browser\",vivaldi:\"Vivaldi\",webos:\"WebOS Browser\",wechat:\"WeChat\",yandex:\"Yandex Browser\"};t.PLATFORMS_MAP={tablet:\"tablet\",mobile:\"mobile\",desktop:\"desktop\",tv:\"tv\"};t.OS_MAP={WindowsPhone:\"Windows Phone\",Windows:\"Windows\",MacOS:\"macOS\",iOS:\"iOS\",Android:\"Android\",WebOS:\"WebOS\",BlackBerry:\"BlackBerry\",Bada:\"Bada\",Tizen:\"Tizen\",Linux:\"Linux\",ChromeOS:\"Chrome OS\",PlayStation4:\"PlayStation 4\",Roku:\"Roku\"};t.ENGINE_MAP={EdgeHTML:\"EdgeHTML\",Blink:\"Blink\",Trident:\"Trident\",Presto:\"Presto\",Gecko:\"Gecko\",WebKit:\"WebKit\"}},90:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(91))&&n.__esModule?n:{default:n},s=r(18);function a(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var o=function(){function e(){}var t,r,n;return e.getParser=function(e,t){if(void 0===t&&(t=!1),\"string\"!=typeof e)throw new Error(\"UserAgent should be a string\");return new i.default(e,t)},e.parse=function(e){return new i.default(e).getResult()},t=e,n=[{key:\"BROWSER_MAP\",get:function(){return s.BROWSER_MAP}},{key:\"ENGINE_MAP\",get:function(){return s.ENGINE_MAP}},{key:\"OS_MAP\",get:function(){return s.OS_MAP}},{key:\"PLATFORMS_MAP\",get:function(){return s.PLATFORMS_MAP}}],(r=null)&&a(t.prototype,r),n&&a(t,n),e}();t.default=o,e.exports=t.default},91:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=u(r(92)),i=u(r(93)),s=u(r(94)),a=u(r(95)),o=u(r(17));function u(e){return e&&e.__esModule?e:{default:e}}var d=function(){function e(e,t){if(void 0===t&&(t=!1),null==e||\"\"===e)throw new Error(\"UserAgent parameter can't be empty\");this._ua=e,this.parsedResult={},!0!==t&&this.parse()}var t=e.prototype;return t.getUA=function(){return this._ua},t.test=function(e){return e.test(this._ua)},t.parseBrowser=function(){var e=this;this.parsedResult.browser={};var t=o.default.find(n.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.browser=t.describe(this.getUA())),this.parsedResult.browser},t.getBrowser=function(){return this.parsedResult.browser?this.parsedResult.browser:this.parseBrowser()},t.getBrowserName=function(e){return e?String(this.getBrowser().name).toLowerCase()||\"\":this.getBrowser().name||\"\"},t.getBrowserVersion=function(){return this.getBrowser().version},t.getOS=function(){return this.parsedResult.os?this.parsedResult.os:this.parseOS()},t.parseOS=function(){var e=this;this.parsedResult.os={};var t=o.default.find(i.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.os=t.describe(this.getUA())),this.parsedResult.os},t.getOSName=function(e){var t=this.getOS().name;return e?String(t).toLowerCase()||\"\":t||\"\"},t.getOSVersion=function(){return this.getOS().version},t.getPlatform=function(){return this.parsedResult.platform?this.parsedResult.platform:this.parsePlatform()},t.getPlatformType=function(e){void 0===e&&(e=!1);var t=this.getPlatform().type;return e?String(t).toLowerCase()||\"\":t||\"\"},t.parsePlatform=function(){var e=this;this.parsedResult.platform={};var t=o.default.find(s.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.platform=t.describe(this.getUA())),this.parsedResult.platform},t.getEngine=function(){return this.parsedResult.engine?this.parsedResult.engine:this.parseEngine()},t.getEngineName=function(e){return e?String(this.getEngine().name).toLowerCase()||\"\":this.getEngine().name||\"\"},t.parseEngine=function(){var e=this;this.parsedResult.engine={};var t=o.default.find(a.default,(function(t){if(\"function\"==typeof t.test)return t.test(e);if(t.test instanceof Array)return t.test.some((function(t){return e.test(t)}));throw new Error(\"Browser's test function is not valid\")}));return t&&(this.parsedResult.engine=t.describe(this.getUA())),this.parsedResult.engine},t.parse=function(){return this.parseBrowser(),this.parseOS(),this.parsePlatform(),this.parseEngine(),this},t.getResult=function(){return o.default.assign({},this.parsedResult)},t.satisfies=function(e){var t=this,r={},n=0,i={},s=0;if(Object.keys(e).forEach((function(t){var a=e[t];\"string\"==typeof a?(i[t]=a,s+=1):\"object\"==typeof a&&(r[t]=a,n+=1)})),n>0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));","import bowser from \"bowser\";\nexport const defaultUserAgent = ({ serviceId, clientVersion }) => async () => {\n const parsedUA = typeof window !== \"undefined\" && window?.navigator?.userAgent\n ? bowser.parse(window.navigator.userAgent)\n : undefined;\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.0\"],\n [`os/${parsedUA?.os?.name || \"other\"}`, parsedUA?.os?.version],\n [\"lang/js\"],\n [\"md/browser\", `${parsedUA?.browser?.name ?? \"unknown\"}_${parsedUA?.browser?.version ?? \"unknown\"}`],\n ];\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n return sections;\n};\n","export const invalidProvider = (message) => () => Promise.reject(message);\n","const TEXT_ENCODER = typeof TextEncoder == \"function\" ? new TextEncoder() : null;\nexport const calculateBodyLength = (body) => {\n if (typeof body === \"string\") {\n if (TEXT_ENCODER) {\n return TEXT_ENCODER.encode(body).byteLength;\n }\n let len = body.length;\n for (let i = len - 1; i >= 0; i--) {\n const code = body.charCodeAt(i);\n if (code > 0x7f && code <= 0x7ff)\n len++;\n else if (code > 0x7ff && code <= 0xffff)\n len += 2;\n if (code >= 0xdc00 && code <= 0xdfff)\n i--;\n }\n return len;\n }\n else if (typeof body.byteLength === \"number\") {\n return body.byteLength;\n }\n else if (typeof body.size === \"number\") {\n return body.size;\n }\n throw new Error(`Body Length computation failed for ${body}`);\n};\n","const s = \"required\", t = \"fn\", u = \"argv\", v = \"ref\";\nconst a = true, b = \"isSet\", c = \"booleanEquals\", d = \"error\", e = \"endpoint\", f = \"tree\", g = \"PartitionResult\", h = { [s]: false, \"type\": \"String\" }, i = { [s]: true, \"default\": false, \"type\": \"Boolean\" }, j = { [v]: \"Endpoint\" }, k = { [t]: c, [u]: [{ [v]: \"UseFIPS\" }, true] }, l = { [t]: c, [u]: [{ [v]: \"UseDualStack\" }, true] }, m = {}, n = { [t]: \"getAttr\", [u]: [{ [v]: g }, \"supportsFIPS\"] }, o = { [t]: c, [u]: [true, { [t]: \"getAttr\", [u]: [{ [v]: g }, \"supportsDualStack\"] }] }, p = [k], q = [l], r = [{ [v]: \"Region\" }];\nconst _data = { version: \"1.0\", parameters: { Region: h, UseDualStack: i, UseFIPS: i, Endpoint: h }, rules: [{ conditions: [{ [t]: b, [u]: [j] }], rules: [{ conditions: p, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", type: d }, { conditions: q, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", type: d }, { endpoint: { url: j, properties: m, headers: m }, type: e }], type: f }, { conditions: [{ [t]: b, [u]: r }], rules: [{ conditions: [{ [t]: \"aws.partition\", [u]: r, assign: g }], rules: [{ conditions: [k, l], rules: [{ conditions: [{ [t]: c, [u]: [a, n] }, o], rules: [{ endpoint: { url: \"https://translate-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: m, headers: m }, type: e }], type: f }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", type: d }], type: f }, { conditions: p, rules: [{ conditions: [{ [t]: c, [u]: [n, a] }], rules: [{ endpoint: { url: \"https://translate-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: m, headers: m }, type: e }], type: f }, { error: \"FIPS is enabled but this partition does not support FIPS\", type: d }], type: f }, { conditions: q, rules: [{ conditions: [o], rules: [{ endpoint: { url: \"https://translate.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: m, headers: m }, type: e }], type: f }, { error: \"DualStack is enabled but this partition does not support DualStack\", type: d }], type: f }, { endpoint: { url: \"https://translate.{Region}.{PartitionResult#dnsSuffix}\", properties: m, headers: m }, type: e }], type: f }], type: f }, { error: \"Invalid Configuration: Missing Region\", type: d }] };\nexport const ruleSet = _data;\n","import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n return resolveEndpoint(ruleSet, {\n endpointParams: endpointParams,\n logger: context.logger,\n });\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoOpLogger } from \"@smithy/smithy-client\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { fromBase64, toBase64 } from \"@smithy/util-base64\";\nimport { fromUtf8, toUtf8 } from \"@smithy/util-utf8\";\nimport { defaultTranslateHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n return {\n apiVersion: \"2017-07-01\",\n base64Decoder: config?.base64Decoder ?? fromBase64,\n base64Encoder: config?.base64Encoder ?? toBase64,\n disableHostPrefix: config?.disableHostPrefix ?? false,\n endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,\n extensions: config?.extensions ?? [],\n httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultTranslateHttpAuthSchemeProvider,\n httpAuthSchemes: config?.httpAuthSchemes ?? [\n {\n schemeId: \"aws.auth#sigv4\",\n identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\"),\n signer: new AwsSdkSigV4Signer(),\n },\n ],\n logger: config?.logger ?? new NoOpLogger(),\n serviceId: config?.serviceId ?? \"Translate\",\n urlParser: config?.urlParser ?? parseUrl,\n utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n utf8Encoder: config?.utf8Encoder ?? toUtf8,\n };\n};\n","export const DEFAULTS_MODE_OPTIONS = [\"in-region\", \"cross-region\", \"mobile\", \"standard\", \"legacy\"];\n","import { memoize } from \"@smithy/property-provider\";\nimport bowser from \"bowser\";\nimport { DEFAULTS_MODE_OPTIONS } from \"./constants\";\nexport const resolveDefaultsModeConfig = ({ defaultsMode, } = {}) => memoize(async () => {\n const mode = typeof defaultsMode === \"function\" ? await defaultsMode() : defaultsMode;\n switch (mode?.toLowerCase()) {\n case \"auto\":\n return Promise.resolve(isMobileBrowser() ? \"mobile\" : \"standard\");\n case \"mobile\":\n case \"in-region\":\n case \"cross-region\":\n case \"standard\":\n case \"legacy\":\n return Promise.resolve(mode?.toLocaleLowerCase());\n case undefined:\n return Promise.resolve(\"legacy\");\n default:\n throw new Error(`Invalid parameter for \"defaultsMode\", expect ${DEFAULTS_MODE_OPTIONS.join(\", \")}, got ${mode}`);\n }\n});\nconst isMobileBrowser = () => {\n const parsedUA = typeof window !== \"undefined\" && window?.navigator?.userAgent\n ? bowser.parse(window.navigator.userAgent)\n : undefined;\n const platform = parsedUA?.platform?.type;\n return platform === \"tablet\" || platform === \"mobile\";\n};\n","import packageInfo from \"../package.json\";\nimport { Sha256 } from \"@aws-crypto/sha256-browser\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-browser\";\nimport { DEFAULT_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT } from \"@smithy/config-resolver\";\nimport { FetchHttpHandler as RequestHandler, streamCollector } from \"@smithy/fetch-http-handler\";\nimport { invalidProvider } from \"@smithy/invalid-dependency\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-browser\";\nimport { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from \"@smithy/util-retry\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { loadConfigsForDefaultMode } from \"@smithy/smithy-client\";\nimport { resolveDefaultsModeConfig } from \"@smithy/util-defaults-mode-browser\";\nexport const getRuntimeConfig = (config) => {\n const defaultsMode = resolveDefaultsModeConfig(config);\n const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n const clientSharedValues = getSharedRuntimeConfig(config);\n return {\n ...clientSharedValues,\n ...config,\n runtime: \"browser\",\n defaultsMode,\n bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n credentialDefaultProvider: config?.credentialDefaultProvider ?? ((_) => () => Promise.reject(new Error(\"Credential is missing\"))),\n defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n maxAttempts: config?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS,\n region: config?.region ?? invalidProvider(\"Region is missing\"),\n requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n retryMode: config?.retryMode ?? (async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE),\n sha256: config?.sha256 ?? Sha256,\n streamCollector: config?.streamCollector ?? streamCollector,\n useDualstackEndpoint: config?.useDualstackEndpoint ?? (() => Promise.resolve(DEFAULT_USE_DUALSTACK_ENDPOINT)),\n useFipsEndpoint: config?.useFipsEndpoint ?? (() => Promise.resolve(DEFAULT_USE_FIPS_ENDPOINT)),\n };\n};\n","export const getAwsRegionExtensionConfiguration = (runtimeConfig) => {\n let runtimeConfigRegion = async () => {\n if (runtimeConfig.region === undefined) {\n throw new Error(\"Region is missing from runtimeConfig\");\n }\n const region = runtimeConfig.region;\n if (typeof region === \"string\") {\n return region;\n }\n return region();\n };\n return {\n setRegion(region) {\n runtimeConfigRegion = region;\n },\n region() {\n return runtimeConfigRegion;\n },\n };\n};\nexport const resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => {\n return {\n region: awsRegionExtensionConfiguration.region(),\n };\n};\n","export const getHttpAuthExtensionConfiguration = (runtimeConfig) => {\n const _httpAuthSchemes = runtimeConfig.httpAuthSchemes;\n let _httpAuthSchemeProvider = runtimeConfig.httpAuthSchemeProvider;\n let _credentials = runtimeConfig.credentials;\n return {\n setHttpAuthScheme(httpAuthScheme) {\n const index = _httpAuthSchemes.findIndex((scheme) => scheme.schemeId === httpAuthScheme.schemeId);\n if (index === -1) {\n _httpAuthSchemes.push(httpAuthScheme);\n }\n else {\n _httpAuthSchemes.splice(index, 1, httpAuthScheme);\n }\n },\n httpAuthSchemes() {\n return _httpAuthSchemes;\n },\n setHttpAuthSchemeProvider(httpAuthSchemeProvider) {\n _httpAuthSchemeProvider = httpAuthSchemeProvider;\n },\n httpAuthSchemeProvider() {\n return _httpAuthSchemeProvider;\n },\n setCredentials(credentials) {\n _credentials = credentials;\n },\n credentials() {\n return _credentials;\n },\n };\n};\nexport const resolveHttpAuthRuntimeConfig = (config) => {\n return {\n httpAuthSchemes: config.httpAuthSchemes(),\n httpAuthSchemeProvider: config.httpAuthSchemeProvider(),\n credentials: config.credentials(),\n };\n};\n","import { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from \"@aws-sdk/region-config-resolver\";\nimport { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig } from \"@smithy/protocol-http\";\nimport { getDefaultExtensionConfiguration, resolveDefaultRuntimeConfig } from \"@smithy/smithy-client\";\nimport { getHttpAuthExtensionConfiguration, resolveHttpAuthRuntimeConfig } from \"./auth/httpAuthExtensionConfiguration\";\nconst asPartial = (t) => t;\nexport const resolveRuntimeExtensions = (runtimeConfig, extensions) => {\n const extensionConfiguration = {\n ...asPartial(getAwsRegionExtensionConfiguration(runtimeConfig)),\n ...asPartial(getDefaultExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpHandlerExtensionConfiguration(runtimeConfig)),\n ...asPartial(getHttpAuthExtensionConfiguration(runtimeConfig)),\n };\n extensions.forEach((extension) => extension.configure(extensionConfiguration));\n return {\n ...runtimeConfig,\n ...resolveAwsRegionExtensionConfiguration(extensionConfiguration),\n ...resolveDefaultRuntimeConfig(extensionConfiguration),\n ...resolveHttpHandlerRuntimeConfig(extensionConfiguration),\n ...resolveHttpAuthRuntimeConfig(extensionConfiguration),\n };\n};\n","import { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRecursionDetectionPlugin } from \"@aws-sdk/middleware-recursion-detection\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { resolveRegionConfig } from \"@smithy/config-resolver\";\nimport { DefaultIdentityProviderConfig, getHttpAuthSchemeEndpointRuleSetPlugin, getHttpSigningPlugin, } from \"@smithy/core\";\nimport { getContentLengthPlugin } from \"@smithy/middleware-content-length\";\nimport { resolveEndpointConfig } from \"@smithy/middleware-endpoint\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@smithy/middleware-retry\";\nimport { Client as __Client, } from \"@smithy/smithy-client\";\nimport { defaultTranslateHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class TranslateClient extends __Client {\n constructor(...[configuration]) {\n const _config_0 = __getRuntimeConfig(configuration || {});\n const _config_1 = resolveClientEndpointParameters(_config_0);\n const _config_2 = resolveUserAgentConfig(_config_1);\n const _config_3 = resolveRetryConfig(_config_2);\n const _config_4 = resolveRegionConfig(_config_3);\n const _config_5 = resolveHostHeaderConfig(_config_4);\n const _config_6 = resolveEndpointConfig(_config_5);\n const _config_7 = resolveHttpAuthSchemeConfig(_config_6);\n const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);\n super(_config_8);\n this.config = _config_8;\n this.middlewareStack.use(getUserAgentPlugin(this.config));\n this.middlewareStack.use(getRetryPlugin(this.config));\n this.middlewareStack.use(getContentLengthPlugin(this.config));\n this.middlewareStack.use(getHostHeaderPlugin(this.config));\n this.middlewareStack.use(getLoggerPlugin(this.config));\n this.middlewareStack.use(getRecursionDetectionPlugin(this.config));\n this.middlewareStack.use(getHttpAuthSchemeEndpointRuleSetPlugin(this.config, {\n httpAuthSchemeParametersProvider: defaultTranslateHttpAuthSchemeParametersProvider,\n identityProviderConfigProvider: async (config) => new DefaultIdentityProviderConfig({\n \"aws.auth#sigv4\": config.credentials,\n }),\n }));\n this.middlewareStack.use(getHttpSigningPlugin(this.config));\n }\n destroy() {\n super.destroy();\n }\n}\n","import { ServiceException as __ServiceException, } from \"@smithy/smithy-client\";\nexport { __ServiceException };\nexport class TranslateServiceException extends __ServiceException {\n constructor(options) {\n super(options);\n Object.setPrototypeOf(this, TranslateServiceException.prototype);\n }\n}\n","import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { TranslateServiceException as __BaseException } from \"./TranslateServiceException\";\nexport class ConcurrentModificationException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ConcurrentModificationException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ConcurrentModificationException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ConcurrentModificationException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class ConflictException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ConflictException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ConflictException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ConflictException.prototype);\n this.Message = opts.Message;\n }\n}\nexport const EncryptionKeyType = {\n KMS: \"KMS\",\n};\nexport const ParallelDataFormat = {\n CSV: \"CSV\",\n TMX: \"TMX\",\n TSV: \"TSV\",\n};\nexport const ParallelDataStatus = {\n ACTIVE: \"ACTIVE\",\n CREATING: \"CREATING\",\n DELETING: \"DELETING\",\n FAILED: \"FAILED\",\n UPDATING: \"UPDATING\",\n};\nexport class InternalServerException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InternalServerException\",\n $fault: \"server\",\n ...opts,\n });\n this.name = \"InternalServerException\";\n this.$fault = \"server\";\n Object.setPrototypeOf(this, InternalServerException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class InvalidParameterValueException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidParameterValueException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidParameterValueException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidParameterValueException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class InvalidRequestException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidRequestException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidRequestException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidRequestException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class LimitExceededException extends __BaseException {\n constructor(opts) {\n super({\n name: \"LimitExceededException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"LimitExceededException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, LimitExceededException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class TooManyRequestsException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TooManyRequestsException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TooManyRequestsException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TooManyRequestsException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class TooManyTagsException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TooManyTagsException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TooManyTagsException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TooManyTagsException.prototype);\n this.ResourceArn = opts.ResourceArn;\n }\n}\nexport class ResourceNotFoundException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ResourceNotFoundException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"ResourceNotFoundException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, ResourceNotFoundException.prototype);\n this.Message = opts.Message;\n }\n}\nexport const JobStatus = {\n COMPLETED: \"COMPLETED\",\n COMPLETED_WITH_ERROR: \"COMPLETED_WITH_ERROR\",\n FAILED: \"FAILED\",\n IN_PROGRESS: \"IN_PROGRESS\",\n STOPPED: \"STOPPED\",\n STOP_REQUESTED: \"STOP_REQUESTED\",\n SUBMITTED: \"SUBMITTED\",\n};\nexport const Brevity = {\n ON: \"ON\",\n};\nexport const Formality = {\n FORMAL: \"FORMAL\",\n INFORMAL: \"INFORMAL\",\n};\nexport const Profanity = {\n MASK: \"MASK\",\n};\nexport const TerminologyDataFormat = {\n CSV: \"CSV\",\n TMX: \"TMX\",\n TSV: \"TSV\",\n};\nexport const Directionality = {\n MULTI: \"MULTI\",\n UNI: \"UNI\",\n};\nexport const MergeStrategy = {\n OVERWRITE: \"OVERWRITE\",\n};\nexport const DisplayLanguageCode = {\n DE: \"de\",\n EN: \"en\",\n ES: \"es\",\n FR: \"fr\",\n IT: \"it\",\n JA: \"ja\",\n KO: \"ko\",\n PT: \"pt\",\n ZH: \"zh\",\n ZH_TW: \"zh-TW\",\n};\nexport class UnsupportedDisplayLanguageCodeException extends __BaseException {\n constructor(opts) {\n super({\n name: \"UnsupportedDisplayLanguageCodeException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"UnsupportedDisplayLanguageCodeException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, UnsupportedDisplayLanguageCodeException.prototype);\n this.Message = opts.Message;\n this.DisplayLanguageCode = opts.DisplayLanguageCode;\n }\n}\nexport class InvalidFilterException extends __BaseException {\n constructor(opts) {\n super({\n name: \"InvalidFilterException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"InvalidFilterException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, InvalidFilterException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class UnsupportedLanguagePairException extends __BaseException {\n constructor(opts) {\n super({\n name: \"UnsupportedLanguagePairException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"UnsupportedLanguagePairException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, UnsupportedLanguagePairException.prototype);\n this.Message = opts.Message;\n this.SourceLanguageCode = opts.SourceLanguageCode;\n this.TargetLanguageCode = opts.TargetLanguageCode;\n }\n}\nexport class ServiceUnavailableException extends __BaseException {\n constructor(opts) {\n super({\n name: \"ServiceUnavailableException\",\n $fault: \"server\",\n ...opts,\n });\n this.name = \"ServiceUnavailableException\";\n this.$fault = \"server\";\n Object.setPrototypeOf(this, ServiceUnavailableException.prototype);\n this.Message = opts.Message;\n }\n}\nexport class DetectedLanguageLowConfidenceException extends __BaseException {\n constructor(opts) {\n super({\n name: \"DetectedLanguageLowConfidenceException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"DetectedLanguageLowConfidenceException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, DetectedLanguageLowConfidenceException.prototype);\n this.Message = opts.Message;\n this.DetectedLanguageCode = opts.DetectedLanguageCode;\n }\n}\nexport class TextSizeLimitExceededException extends __BaseException {\n constructor(opts) {\n super({\n name: \"TextSizeLimitExceededException\",\n $fault: \"client\",\n ...opts,\n });\n this.name = \"TextSizeLimitExceededException\";\n this.$fault = \"client\";\n Object.setPrototypeOf(this, TextSizeLimitExceededException.prototype);\n this.Message = opts.Message;\n }\n}\nexport const TerminologyDataFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.File && { File: SENSITIVE_STRING }),\n});\nexport const ImportTerminologyRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.TerminologyData && { TerminologyData: TerminologyDataFilterSensitiveLog(obj.TerminologyData) }),\n});\nexport const DocumentFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Content && { Content: SENSITIVE_STRING }),\n});\nexport const TranslateDocumentRequestFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Document && { Document: DocumentFilterSensitiveLog(obj.Document) }),\n});\nexport const TranslatedDocumentFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.Content && { Content: SENSITIVE_STRING }),\n});\nexport const TranslateDocumentResponseFilterSensitiveLog = (obj) => ({\n ...obj,\n ...(obj.TranslatedDocument && { TranslatedDocument: TranslatedDocumentFilterSensitiveLog(obj.TranslatedDocument) }),\n});\n","import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { HttpRequest as __HttpRequest } from \"@smithy/protocol-http\";\nimport { _json, collectBody, decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, parseEpochTimestamp as __parseEpochTimestamp, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { v4 as generateIdempotencyToken } from \"uuid\";\nimport { ConcurrentModificationException, ConflictException, DetectedLanguageLowConfidenceException, InternalServerException, InvalidFilterException, InvalidParameterValueException, InvalidRequestException, LimitExceededException, ResourceNotFoundException, ServiceUnavailableException, TextSizeLimitExceededException, TooManyRequestsException, TooManyTagsException, UnsupportedDisplayLanguageCodeException, UnsupportedLanguagePairException, } from \"../models/models_0\";\nimport { TranslateServiceException as __BaseException } from \"../models/TranslateServiceException\";\nexport const se_CreateParallelDataCommand = async (input, context) => {\n const headers = sharedHeaders(\"CreateParallelData\");\n let body;\n body = JSON.stringify(se_CreateParallelDataRequest(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteParallelDataCommand = async (input, context) => {\n const headers = sharedHeaders(\"DeleteParallelData\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteTerminologyCommand = async (input, context) => {\n const headers = sharedHeaders(\"DeleteTerminology\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTextTranslationJobCommand = async (input, context) => {\n const headers = sharedHeaders(\"DescribeTextTranslationJob\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetParallelDataCommand = async (input, context) => {\n const headers = sharedHeaders(\"GetParallelData\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetTerminologyCommand = async (input, context) => {\n const headers = sharedHeaders(\"GetTerminology\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ImportTerminologyCommand = async (input, context) => {\n const headers = sharedHeaders(\"ImportTerminology\");\n let body;\n body = JSON.stringify(se_ImportTerminologyRequest(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListLanguagesCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListLanguages\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListParallelDataCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListParallelData\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTagsForResourceCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListTagsForResource\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTerminologiesCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListTerminologies\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTextTranslationJobsCommand = async (input, context) => {\n const headers = sharedHeaders(\"ListTextTranslationJobs\");\n let body;\n body = JSON.stringify(se_ListTextTranslationJobsRequest(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_StartTextTranslationJobCommand = async (input, context) => {\n const headers = sharedHeaders(\"StartTextTranslationJob\");\n let body;\n body = JSON.stringify(se_StartTextTranslationJobRequest(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_StopTextTranslationJobCommand = async (input, context) => {\n const headers = sharedHeaders(\"StopTextTranslationJob\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TagResourceCommand = async (input, context) => {\n const headers = sharedHeaders(\"TagResource\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TranslateDocumentCommand = async (input, context) => {\n const headers = sharedHeaders(\"TranslateDocument\");\n let body;\n body = JSON.stringify(se_TranslateDocumentRequest(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TranslateTextCommand = async (input, context) => {\n const headers = sharedHeaders(\"TranslateText\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UntagResourceCommand = async (input, context) => {\n const headers = sharedHeaders(\"UntagResource\");\n let body;\n body = JSON.stringify(_json(input));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateParallelDataCommand = async (input, context) => {\n const headers = sharedHeaders(\"UpdateParallelData\");\n let body;\n body = JSON.stringify(se_UpdateParallelDataRequest(input, context));\n return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const de_CreateParallelDataCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DeleteParallelDataCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_DeleteTerminologyCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n await collectBody(output.body, context);\n const response = {\n $metadata: deserializeMetadata(output),\n };\n return response;\n};\nexport const de_DescribeTextTranslationJobCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_DescribeTextTranslationJobResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetParallelDataCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetParallelDataResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_GetTerminologyCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_GetTerminologyResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ImportTerminologyCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ImportTerminologyResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListLanguagesCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListParallelDataCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ListParallelDataResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListTagsForResourceCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListTerminologiesCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ListTerminologiesResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_ListTextTranslationJobsCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_ListTextTranslationJobsResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_StartTextTranslationJobCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_StopTextTranslationJobCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_TagResourceCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_TranslateDocumentCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_TranslateDocumentResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_TranslateTextCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UntagResourceCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = _json(data);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nexport const de_UpdateParallelDataCommand = async (output, context) => {\n if (output.statusCode >= 300) {\n return de_CommandError(output, context);\n }\n const data = await parseBody(output.body, context);\n let contents = {};\n contents = de_UpdateParallelDataResponse(data, context);\n const response = {\n $metadata: deserializeMetadata(output),\n ...contents,\n };\n return response;\n};\nconst de_CommandError = async (output, context) => {\n const parsedOutput = {\n ...output,\n body: await parseErrorBody(output.body, context),\n };\n const errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n case \"ConcurrentModificationException\":\n case \"com.amazonaws.translate#ConcurrentModificationException\":\n throw await de_ConcurrentModificationExceptionRes(parsedOutput, context);\n case \"ConflictException\":\n case \"com.amazonaws.translate#ConflictException\":\n throw await de_ConflictExceptionRes(parsedOutput, context);\n case \"InternalServerException\":\n case \"com.amazonaws.translate#InternalServerException\":\n throw await de_InternalServerExceptionRes(parsedOutput, context);\n case \"InvalidParameterValueException\":\n case \"com.amazonaws.translate#InvalidParameterValueException\":\n throw await de_InvalidParameterValueExceptionRes(parsedOutput, context);\n case \"InvalidRequestException\":\n case \"com.amazonaws.translate#InvalidRequestException\":\n throw await de_InvalidRequestExceptionRes(parsedOutput, context);\n case \"LimitExceededException\":\n case \"com.amazonaws.translate#LimitExceededException\":\n throw await de_LimitExceededExceptionRes(parsedOutput, context);\n case \"TooManyRequestsException\":\n case \"com.amazonaws.translate#TooManyRequestsException\":\n throw await de_TooManyRequestsExceptionRes(parsedOutput, context);\n case \"TooManyTagsException\":\n case \"com.amazonaws.translate#TooManyTagsException\":\n throw await de_TooManyTagsExceptionRes(parsedOutput, context);\n case \"ResourceNotFoundException\":\n case \"com.amazonaws.translate#ResourceNotFoundException\":\n throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);\n case \"UnsupportedDisplayLanguageCodeException\":\n case \"com.amazonaws.translate#UnsupportedDisplayLanguageCodeException\":\n throw await de_UnsupportedDisplayLanguageCodeExceptionRes(parsedOutput, context);\n case \"InvalidFilterException\":\n case \"com.amazonaws.translate#InvalidFilterException\":\n throw await de_InvalidFilterExceptionRes(parsedOutput, context);\n case \"UnsupportedLanguagePairException\":\n case \"com.amazonaws.translate#UnsupportedLanguagePairException\":\n throw await de_UnsupportedLanguagePairExceptionRes(parsedOutput, context);\n case \"ServiceUnavailableException\":\n case \"com.amazonaws.translate#ServiceUnavailableException\":\n throw await de_ServiceUnavailableExceptionRes(parsedOutput, context);\n case \"DetectedLanguageLowConfidenceException\":\n case \"com.amazonaws.translate#DetectedLanguageLowConfidenceException\":\n throw await de_DetectedLanguageLowConfidenceExceptionRes(parsedOutput, context);\n case \"TextSizeLimitExceededException\":\n case \"com.amazonaws.translate#TextSizeLimitExceededException\":\n throw await de_TextSizeLimitExceededExceptionRes(parsedOutput, context);\n default:\n const parsedBody = parsedOutput.body;\n return throwDefaultError({\n output,\n parsedBody,\n errorCode,\n });\n }\n};\nconst de_ConcurrentModificationExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ConcurrentModificationException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ConflictExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ConflictException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_DetectedLanguageLowConfidenceExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new DetectedLanguageLowConfidenceException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InternalServerExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InternalServerException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidFilterExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InvalidFilterException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidParameterValueExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InvalidParameterValueException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_InvalidRequestExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new InvalidRequestException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_LimitExceededExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new LimitExceededException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ResourceNotFoundException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_ServiceUnavailableExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new ServiceUnavailableException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TextSizeLimitExceededExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TextSizeLimitExceededException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TooManyRequestsExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TooManyRequestsException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_TooManyTagsExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new TooManyTagsException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_UnsupportedDisplayLanguageCodeExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new UnsupportedDisplayLanguageCodeException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst de_UnsupportedLanguagePairExceptionRes = async (parsedOutput, context) => {\n const body = parsedOutput.body;\n const deserialized = _json(body);\n const exception = new UnsupportedLanguagePairException({\n $metadata: deserializeMetadata(parsedOutput),\n ...deserialized,\n });\n return __decorateServiceException(exception, body);\n};\nconst se_CreateParallelDataRequest = (input, context) => {\n return take(input, {\n ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n Description: [],\n EncryptionKey: _json,\n Name: [],\n ParallelDataConfig: _json,\n Tags: _json,\n });\n};\nconst se_Document = (input, context) => {\n return take(input, {\n Content: context.base64Encoder,\n ContentType: [],\n });\n};\nconst se_ImportTerminologyRequest = (input, context) => {\n return take(input, {\n Description: [],\n EncryptionKey: _json,\n MergeStrategy: [],\n Name: [],\n Tags: _json,\n TerminologyData: (_) => se_TerminologyData(_, context),\n });\n};\nconst se_ListTextTranslationJobsRequest = (input, context) => {\n return take(input, {\n Filter: (_) => se_TextTranslationJobFilter(_, context),\n MaxResults: [],\n NextToken: [],\n });\n};\nconst se_StartTextTranslationJobRequest = (input, context) => {\n return take(input, {\n ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n DataAccessRoleArn: [],\n InputDataConfig: _json,\n JobName: [],\n OutputDataConfig: _json,\n ParallelDataNames: _json,\n Settings: _json,\n SourceLanguageCode: [],\n TargetLanguageCodes: _json,\n TerminologyNames: _json,\n });\n};\nconst se_TerminologyData = (input, context) => {\n return take(input, {\n Directionality: [],\n File: context.base64Encoder,\n Format: [],\n });\n};\nconst se_TextTranslationJobFilter = (input, context) => {\n return take(input, {\n JobName: [],\n JobStatus: [],\n SubmittedAfterTime: (_) => _.getTime() / 1000,\n SubmittedBeforeTime: (_) => _.getTime() / 1000,\n });\n};\nconst se_TranslateDocumentRequest = (input, context) => {\n return take(input, {\n Document: (_) => se_Document(_, context),\n Settings: _json,\n SourceLanguageCode: [],\n TargetLanguageCode: [],\n TerminologyNames: _json,\n });\n};\nconst se_UpdateParallelDataRequest = (input, context) => {\n return take(input, {\n ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n Description: [],\n Name: [],\n ParallelDataConfig: _json,\n });\n};\nconst de_DescribeTextTranslationJobResponse = (output, context) => {\n return take(output, {\n TextTranslationJobProperties: (_) => de_TextTranslationJobProperties(_, context),\n });\n};\nconst de_GetParallelDataResponse = (output, context) => {\n return take(output, {\n AuxiliaryDataLocation: _json,\n DataLocation: _json,\n LatestUpdateAttemptAuxiliaryDataLocation: _json,\n ParallelDataProperties: (_) => de_ParallelDataProperties(_, context),\n });\n};\nconst de_GetTerminologyResponse = (output, context) => {\n return take(output, {\n AuxiliaryDataLocation: _json,\n TerminologyDataLocation: _json,\n TerminologyProperties: (_) => de_TerminologyProperties(_, context),\n });\n};\nconst de_ImportTerminologyResponse = (output, context) => {\n return take(output, {\n AuxiliaryDataLocation: _json,\n TerminologyProperties: (_) => de_TerminologyProperties(_, context),\n });\n};\nconst de_ListParallelDataResponse = (output, context) => {\n return take(output, {\n NextToken: __expectString,\n ParallelDataPropertiesList: (_) => de_ParallelDataPropertiesList(_, context),\n });\n};\nconst de_ListTerminologiesResponse = (output, context) => {\n return take(output, {\n NextToken: __expectString,\n TerminologyPropertiesList: (_) => de_TerminologyPropertiesList(_, context),\n });\n};\nconst de_ListTextTranslationJobsResponse = (output, context) => {\n return take(output, {\n NextToken: __expectString,\n TextTranslationJobPropertiesList: (_) => de_TextTranslationJobPropertiesList(_, context),\n });\n};\nconst de_ParallelDataProperties = (output, context) => {\n return take(output, {\n Arn: __expectString,\n CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n Description: __expectString,\n EncryptionKey: _json,\n FailedRecordCount: __expectLong,\n ImportedDataSize: __expectLong,\n ImportedRecordCount: __expectLong,\n LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n LatestUpdateAttemptAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n LatestUpdateAttemptStatus: __expectString,\n Message: __expectString,\n Name: __expectString,\n ParallelDataConfig: _json,\n SkippedRecordCount: __expectLong,\n SourceLanguageCode: __expectString,\n Status: __expectString,\n TargetLanguageCodes: _json,\n });\n};\nconst de_ParallelDataPropertiesList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_ParallelDataProperties(entry, context);\n });\n return retVal;\n};\nconst de_TerminologyProperties = (output, context) => {\n return take(output, {\n Arn: __expectString,\n CreatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n Description: __expectString,\n Directionality: __expectString,\n EncryptionKey: _json,\n Format: __expectString,\n LastUpdatedAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n Message: __expectString,\n Name: __expectString,\n SizeBytes: __expectInt32,\n SkippedTermCount: __expectInt32,\n SourceLanguageCode: __expectString,\n TargetLanguageCodes: _json,\n TermCount: __expectInt32,\n });\n};\nconst de_TerminologyPropertiesList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_TerminologyProperties(entry, context);\n });\n return retVal;\n};\nconst de_TextTranslationJobProperties = (output, context) => {\n return take(output, {\n DataAccessRoleArn: __expectString,\n EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n InputDataConfig: _json,\n JobDetails: _json,\n JobId: __expectString,\n JobName: __expectString,\n JobStatus: __expectString,\n Message: __expectString,\n OutputDataConfig: _json,\n ParallelDataNames: _json,\n Settings: _json,\n SourceLanguageCode: __expectString,\n SubmittedTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n TargetLanguageCodes: _json,\n TerminologyNames: _json,\n });\n};\nconst de_TextTranslationJobPropertiesList = (output, context) => {\n const retVal = (output || [])\n .filter((e) => e != null)\n .map((entry) => {\n return de_TextTranslationJobProperties(entry, context);\n });\n return retVal;\n};\nconst de_TranslatedDocument = (output, context) => {\n return take(output, {\n Content: context.base64Decoder,\n });\n};\nconst de_TranslateDocumentResponse = (output, context) => {\n return take(output, {\n AppliedSettings: _json,\n AppliedTerminologies: _json,\n SourceLanguageCode: __expectString,\n TargetLanguageCode: __expectString,\n TranslatedDocument: (_) => de_TranslatedDocument(_, context),\n });\n};\nconst de_UpdateParallelDataResponse = (output, context) => {\n return take(output, {\n LatestUpdateAttemptAt: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n LatestUpdateAttemptStatus: __expectString,\n Name: __expectString,\n Status: __expectString,\n });\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\nconst collectBodyString = (streamBody, context) => collectBody(streamBody, context).then((body) => context.utf8Encoder(body));\nconst throwDefaultError = withBaseException(__BaseException);\nconst buildHttpRpcRequest = async (context, headers, path, resolvedHostname, body) => {\n const { hostname, protocol = \"https\", port, path: basePath } = await context.endpoint();\n const contents = {\n protocol,\n hostname,\n port,\n method: \"POST\",\n path: basePath.endsWith(\"/\") ? basePath.slice(0, -1) + path : basePath + path,\n headers,\n };\n if (resolvedHostname !== undefined) {\n contents.hostname = resolvedHostname;\n }\n if (body !== undefined) {\n contents.body = body;\n }\n return new __HttpRequest(contents);\n};\nfunction sharedHeaders(operation) {\n return {\n \"content-type\": \"application/x-amz-json-1.1\",\n \"x-amz-target\": `AWSShineFrontendService_20170701.${operation}`,\n };\n}\n","import { getEndpointPlugin } from \"@smithy/middleware-endpoint\";\nimport { getSerdePlugin } from \"@smithy/middleware-serde\";\nimport { Command as $Command } from \"@smithy/smithy-client\";\nimport { commonParams } from \"../endpoint/EndpointParameters\";\nimport { de_TranslateTextCommand, se_TranslateTextCommand } from \"../protocols/Aws_json1_1\";\nexport { $Command };\nexport class TranslateTextCommand extends $Command\n .classBuilder()\n .ep({\n ...commonParams,\n})\n .m(function (Command, cs, config, o) {\n return [\n getSerdePlugin(config, this.serialize, this.deserialize),\n getEndpointPlugin(config, Command.getEndpointParameterInstructions()),\n ];\n})\n .s(\"AWSShineFrontendService_20170701\", \"TranslateText\", {})\n .n(\"TranslateClient\", \"TranslateTextCommand\")\n .f(void 0, void 0)\n .ser(se_TranslateTextCommand)\n .de(de_TranslateTextCommand)\n .build() {\n}\n",null,";(function (root, factory) {\n\tif (typeof exports === \"object\") {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory();\n\t}\n\telse if (typeof define === \"function\" && define.amd) {\n\t\t// AMD\n\t\tdefine([], factory);\n\t}\n\telse {\n\t\t// Global (browser)\n\t\troot.CryptoJS = factory();\n\t}\n}(this, function () {\n\n\t/*globals window, global, require*/\n\n\t/**\n\t * CryptoJS core components.\n\t */\n\tvar CryptoJS = CryptoJS || (function (Math, undefined) {\n\n\t var crypto;\n\n\t // Native crypto from window (Browser)\n\t if (typeof window !== 'undefined' && window.crypto) {\n\t crypto = window.crypto;\n\t }\n\n\t // Native crypto in web worker (Browser)\n\t if (typeof self !== 'undefined' && self.crypto) {\n\t crypto = self.crypto;\n\t }\n\n\t // Native crypto from worker\n\t if (typeof globalThis !== 'undefined' && globalThis.crypto) {\n\t crypto = globalThis.crypto;\n\t }\n\n\t // Native (experimental IE 11) crypto from window (Browser)\n\t if (!crypto && typeof window !== 'undefined' && window.msCrypto) {\n\t crypto = window.msCrypto;\n\t }\n\n\t // Native crypto from global (NodeJS)\n\t if (!crypto && typeof global !== 'undefined' && global.crypto) {\n\t crypto = global.crypto;\n\t }\n\n\t // Native crypto import via require (NodeJS)\n\t if (!crypto && typeof require === 'function') {\n\t try {\n\t crypto = require('crypto');\n\t } catch (err) {}\n\t }\n\n\t /*\n\t * Cryptographically secure pseudorandom number generator\n\t *\n\t * As Math.random() is cryptographically not safe to use\n\t */\n\t var cryptoSecureRandomInt = function () {\n\t if (crypto) {\n\t // Use getRandomValues method (Browser)\n\t if (typeof crypto.getRandomValues === 'function') {\n\t try {\n\t return crypto.getRandomValues(new Uint32Array(1))[0];\n\t } catch (err) {}\n\t }\n\n\t // Use randomBytes method (NodeJS)\n\t if (typeof crypto.randomBytes === 'function') {\n\t try {\n\t return crypto.randomBytes(4).readInt32LE();\n\t } catch (err) {}\n\t }\n\t }\n\n\t throw new Error('Native crypto module could not be used to get secure random number.');\n\t };\n\n\t /*\n\t * Local polyfill of Object.create\n\n\t */\n\t var create = Object.create || (function () {\n\t function F() {}\n\n\t return function (obj) {\n\t var subtype;\n\n\t F.prototype = obj;\n\n\t subtype = new F();\n\n\t F.prototype = null;\n\n\t return subtype;\n\t };\n\t }());\n\n\t /**\n\t * CryptoJS namespace.\n\t */\n\t var C = {};\n\n\t /**\n\t * Library namespace.\n\t */\n\t var C_lib = C.lib = {};\n\n\t /**\n\t * Base object for prototypal inheritance.\n\t */\n\t var Base = C_lib.Base = (function () {\n\n\n\t return {\n\t /**\n\t * Creates a new object that inherits from this object.\n\t *\n\t * @param {Object} overrides Properties to copy into the new object.\n\t *\n\t * @return {Object} The new object.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var MyType = CryptoJS.lib.Base.extend({\n\t * field: 'value',\n\t *\n\t * method: function () {\n\t * }\n\t * });\n\t */\n\t extend: function (overrides) {\n\t // Spawn\n\t var subtype = create(this);\n\n\t // Augment\n\t if (overrides) {\n\t subtype.mixIn(overrides);\n\t }\n\n\t // Create default initializer\n\t if (!subtype.hasOwnProperty('init') || this.init === subtype.init) {\n\t subtype.init = function () {\n\t subtype.$super.init.apply(this, arguments);\n\t };\n\t }\n\n\t // Initializer's prototype is the subtype object\n\t subtype.init.prototype = subtype;\n\n\t // Reference supertype\n\t subtype.$super = this;\n\n\t return subtype;\n\t },\n\n\t /**\n\t * Extends this object and runs the init method.\n\t * Arguments to create() will be passed to init().\n\t *\n\t * @return {Object} The new object.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var instance = MyType.create();\n\t */\n\t create: function () {\n\t var instance = this.extend();\n\t instance.init.apply(instance, arguments);\n\n\t return instance;\n\t },\n\n\t /**\n\t * Initializes a newly created object.\n\t * Override this method to add some logic when your objects are created.\n\t *\n\t * @example\n\t *\n\t * var MyType = CryptoJS.lib.Base.extend({\n\t * init: function () {\n\t * // ...\n\t * }\n\t * });\n\t */\n\t init: function () {\n\t },\n\n\t /**\n\t * Copies properties into this object.\n\t *\n\t * @param {Object} properties The properties to mix in.\n\t *\n\t * @example\n\t *\n\t * MyType.mixIn({\n\t * field: 'value'\n\t * });\n\t */\n\t mixIn: function (properties) {\n\t for (var propertyName in properties) {\n\t if (properties.hasOwnProperty(propertyName)) {\n\t this[propertyName] = properties[propertyName];\n\t }\n\t }\n\n\t // IE won't copy toString using the loop above\n\t if (properties.hasOwnProperty('toString')) {\n\t this.toString = properties.toString;\n\t }\n\t },\n\n\t /**\n\t * Creates a copy of this object.\n\t *\n\t * @return {Object} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = instance.clone();\n\t */\n\t clone: function () {\n\t return this.init.prototype.extend(this);\n\t }\n\t };\n\t }());\n\n\t /**\n\t * An array of 32-bit words.\n\t *\n\t * @property {Array} words The array of 32-bit words.\n\t * @property {number} sigBytes The number of significant bytes in this word array.\n\t */\n\t var WordArray = C_lib.WordArray = Base.extend({\n\t /**\n\t * Initializes a newly created word array.\n\t *\n\t * @param {Array} words (Optional) An array of 32-bit words.\n\t * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.lib.WordArray.create();\n\t * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);\n\t * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);\n\t */\n\t init: function (words, sigBytes) {\n\t words = this.words = words || [];\n\n\t if (sigBytes != undefined) {\n\t this.sigBytes = sigBytes;\n\t } else {\n\t this.sigBytes = words.length * 4;\n\t }\n\t },\n\n\t /**\n\t * Converts this word array to a string.\n\t *\n\t * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex\n\t *\n\t * @return {string} The stringified word array.\n\t *\n\t * @example\n\t *\n\t * var string = wordArray + '';\n\t * var string = wordArray.toString();\n\t * var string = wordArray.toString(CryptoJS.enc.Utf8);\n\t */\n\t toString: function (encoder) {\n\t return (encoder || Hex).stringify(this);\n\t },\n\n\t /**\n\t * Concatenates a word array to this word array.\n\t *\n\t * @param {WordArray} wordArray The word array to append.\n\t *\n\t * @return {WordArray} This word array.\n\t *\n\t * @example\n\t *\n\t * wordArray1.concat(wordArray2);\n\t */\n\t concat: function (wordArray) {\n\t // Shortcuts\n\t var thisWords = this.words;\n\t var thatWords = wordArray.words;\n\t var thisSigBytes = this.sigBytes;\n\t var thatSigBytes = wordArray.sigBytes;\n\n\t // Clamp excess bits\n\t this.clamp();\n\n\t // Concat\n\t if (thisSigBytes % 4) {\n\t // Copy one byte at a time\n\t for (var i = 0; i < thatSigBytes; i++) {\n\t var thatByte = (thatWords[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t thisWords[(thisSigBytes + i) >>> 2] |= thatByte << (24 - ((thisSigBytes + i) % 4) * 8);\n\t }\n\t } else {\n\t // Copy one word at a time\n\t for (var j = 0; j < thatSigBytes; j += 4) {\n\t thisWords[(thisSigBytes + j) >>> 2] = thatWords[j >>> 2];\n\t }\n\t }\n\t this.sigBytes += thatSigBytes;\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Removes insignificant bits.\n\t *\n\t * @example\n\t *\n\t * wordArray.clamp();\n\t */\n\t clamp: function () {\n\t // Shortcuts\n\t var words = this.words;\n\t var sigBytes = this.sigBytes;\n\n\t // Clamp\n\t words[sigBytes >>> 2] &= 0xffffffff << (32 - (sigBytes % 4) * 8);\n\t words.length = Math.ceil(sigBytes / 4);\n\t },\n\n\t /**\n\t * Creates a copy of this word array.\n\t *\n\t * @return {WordArray} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = wordArray.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\t clone.words = this.words.slice(0);\n\n\t return clone;\n\t },\n\n\t /**\n\t * Creates a word array filled with random bytes.\n\t *\n\t * @param {number} nBytes The number of random bytes to generate.\n\t *\n\t * @return {WordArray} The random word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.lib.WordArray.random(16);\n\t */\n\t random: function (nBytes) {\n\t var words = [];\n\n\t for (var i = 0; i < nBytes; i += 4) {\n\t words.push(cryptoSecureRandomInt());\n\t }\n\n\t return new WordArray.init(words, nBytes);\n\t }\n\t });\n\n\t /**\n\t * Encoder namespace.\n\t */\n\t var C_enc = C.enc = {};\n\n\t /**\n\t * Hex encoding strategy.\n\t */\n\t var Hex = C_enc.Hex = {\n\t /**\n\t * Converts a word array to a hex string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The hex string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hexString = CryptoJS.enc.Hex.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t // Shortcuts\n\t var words = wordArray.words;\n\t var sigBytes = wordArray.sigBytes;\n\n\t // Convert\n\t var hexChars = [];\n\t for (var i = 0; i < sigBytes; i++) {\n\t var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t hexChars.push((bite >>> 4).toString(16));\n\t hexChars.push((bite & 0x0f).toString(16));\n\t }\n\n\t return hexChars.join('');\n\t },\n\n\t /**\n\t * Converts a hex string to a word array.\n\t *\n\t * @param {string} hexStr The hex string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Hex.parse(hexString);\n\t */\n\t parse: function (hexStr) {\n\t // Shortcut\n\t var hexStrLength = hexStr.length;\n\n\t // Convert\n\t var words = [];\n\t for (var i = 0; i < hexStrLength; i += 2) {\n\t words[i >>> 3] |= parseInt(hexStr.substr(i, 2), 16) << (24 - (i % 8) * 4);\n\t }\n\n\t return new WordArray.init(words, hexStrLength / 2);\n\t }\n\t };\n\n\t /**\n\t * Latin1 encoding strategy.\n\t */\n\t var Latin1 = C_enc.Latin1 = {\n\t /**\n\t * Converts a word array to a Latin1 string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The Latin1 string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t // Shortcuts\n\t var words = wordArray.words;\n\t var sigBytes = wordArray.sigBytes;\n\n\t // Convert\n\t var latin1Chars = [];\n\t for (var i = 0; i < sigBytes; i++) {\n\t var bite = (words[i >>> 2] >>> (24 - (i % 4) * 8)) & 0xff;\n\t latin1Chars.push(String.fromCharCode(bite));\n\t }\n\n\t return latin1Chars.join('');\n\t },\n\n\t /**\n\t * Converts a Latin1 string to a word array.\n\t *\n\t * @param {string} latin1Str The Latin1 string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);\n\t */\n\t parse: function (latin1Str) {\n\t // Shortcut\n\t var latin1StrLength = latin1Str.length;\n\n\t // Convert\n\t var words = [];\n\t for (var i = 0; i < latin1StrLength; i++) {\n\t words[i >>> 2] |= (latin1Str.charCodeAt(i) & 0xff) << (24 - (i % 4) * 8);\n\t }\n\n\t return new WordArray.init(words, latin1StrLength);\n\t }\n\t };\n\n\t /**\n\t * UTF-8 encoding strategy.\n\t */\n\t var Utf8 = C_enc.Utf8 = {\n\t /**\n\t * Converts a word array to a UTF-8 string.\n\t *\n\t * @param {WordArray} wordArray The word array.\n\t *\n\t * @return {string} The UTF-8 string.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);\n\t */\n\t stringify: function (wordArray) {\n\t try {\n\t return decodeURIComponent(escape(Latin1.stringify(wordArray)));\n\t } catch (e) {\n\t throw new Error('Malformed UTF-8 data');\n\t }\n\t },\n\n\t /**\n\t * Converts a UTF-8 string to a word array.\n\t *\n\t * @param {string} utf8Str The UTF-8 string.\n\t *\n\t * @return {WordArray} The word array.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);\n\t */\n\t parse: function (utf8Str) {\n\t return Latin1.parse(unescape(encodeURIComponent(utf8Str)));\n\t }\n\t };\n\n\t /**\n\t * Abstract buffered block algorithm template.\n\t *\n\t * The property blockSize must be implemented in a concrete subtype.\n\t *\n\t * @property {number} _minBufferSize The number of blocks that should be kept unprocessed in the buffer. Default: 0\n\t */\n\t var BufferedBlockAlgorithm = C_lib.BufferedBlockAlgorithm = Base.extend({\n\t /**\n\t * Resets this block algorithm's data buffer to its initial state.\n\t *\n\t * @example\n\t *\n\t * bufferedBlockAlgorithm.reset();\n\t */\n\t reset: function () {\n\t // Initial values\n\t this._data = new WordArray.init();\n\t this._nDataBytes = 0;\n\t },\n\n\t /**\n\t * Adds new data to this block algorithm's buffer.\n\t *\n\t * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.\n\t *\n\t * @example\n\t *\n\t * bufferedBlockAlgorithm._append('data');\n\t * bufferedBlockAlgorithm._append(wordArray);\n\t */\n\t _append: function (data) {\n\t // Convert string to WordArray, else assume WordArray already\n\t if (typeof data == 'string') {\n\t data = Utf8.parse(data);\n\t }\n\n\t // Append\n\t this._data.concat(data);\n\t this._nDataBytes += data.sigBytes;\n\t },\n\n\t /**\n\t * Processes available data blocks.\n\t *\n\t * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.\n\t *\n\t * @param {boolean} doFlush Whether all blocks and partial blocks should be processed.\n\t *\n\t * @return {WordArray} The processed data.\n\t *\n\t * @example\n\t *\n\t * var processedData = bufferedBlockAlgorithm._process();\n\t * var processedData = bufferedBlockAlgorithm._process(!!'flush');\n\t */\n\t _process: function (doFlush) {\n\t var processedWords;\n\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\t var dataSigBytes = data.sigBytes;\n\t var blockSize = this.blockSize;\n\t var blockSizeBytes = blockSize * 4;\n\n\t // Count blocks ready\n\t var nBlocksReady = dataSigBytes / blockSizeBytes;\n\t if (doFlush) {\n\t // Round up to include partial blocks\n\t nBlocksReady = Math.ceil(nBlocksReady);\n\t } else {\n\t // Round down to include only full blocks,\n\t // less the number of blocks that must remain in the buffer\n\t nBlocksReady = Math.max((nBlocksReady | 0) - this._minBufferSize, 0);\n\t }\n\n\t // Count words ready\n\t var nWordsReady = nBlocksReady * blockSize;\n\n\t // Count bytes ready\n\t var nBytesReady = Math.min(nWordsReady * 4, dataSigBytes);\n\n\t // Process blocks\n\t if (nWordsReady) {\n\t for (var offset = 0; offset < nWordsReady; offset += blockSize) {\n\t // Perform concrete-algorithm logic\n\t this._doProcessBlock(dataWords, offset);\n\t }\n\n\t // Remove processed words\n\t processedWords = dataWords.splice(0, nWordsReady);\n\t data.sigBytes -= nBytesReady;\n\t }\n\n\t // Return processed words\n\t return new WordArray.init(processedWords, nBytesReady);\n\t },\n\n\t /**\n\t * Creates a copy of this object.\n\t *\n\t * @return {Object} The clone.\n\t *\n\t * @example\n\t *\n\t * var clone = bufferedBlockAlgorithm.clone();\n\t */\n\t clone: function () {\n\t var clone = Base.clone.call(this);\n\t clone._data = this._data.clone();\n\n\t return clone;\n\t },\n\n\t _minBufferSize: 0\n\t });\n\n\t /**\n\t * Abstract hasher template.\n\t *\n\t * @property {number} blockSize The number of 32-bit words this hasher operates on. Default: 16 (512 bits)\n\t */\n\t var Hasher = C_lib.Hasher = BufferedBlockAlgorithm.extend({\n\t /**\n\t * Configuration options.\n\t */\n\t cfg: Base.extend(),\n\n\t /**\n\t * Initializes a newly created hasher.\n\t *\n\t * @param {Object} cfg (Optional) The configuration options to use for this hash computation.\n\t *\n\t * @example\n\t *\n\t * var hasher = CryptoJS.algo.SHA256.create();\n\t */\n\t init: function (cfg) {\n\t // Apply config defaults\n\t this.cfg = this.cfg.extend(cfg);\n\n\t // Set initial values\n\t this.reset();\n\t },\n\n\t /**\n\t * Resets this hasher to its initial state.\n\t *\n\t * @example\n\t *\n\t * hasher.reset();\n\t */\n\t reset: function () {\n\t // Reset data buffer\n\t BufferedBlockAlgorithm.reset.call(this);\n\n\t // Perform concrete-hasher logic\n\t this._doReset();\n\t },\n\n\t /**\n\t * Updates this hasher with a message.\n\t *\n\t * @param {WordArray|string} messageUpdate The message to append.\n\t *\n\t * @return {Hasher} This hasher.\n\t *\n\t * @example\n\t *\n\t * hasher.update('message');\n\t * hasher.update(wordArray);\n\t */\n\t update: function (messageUpdate) {\n\t // Append\n\t this._append(messageUpdate);\n\n\t // Update the hash\n\t this._process();\n\n\t // Chainable\n\t return this;\n\t },\n\n\t /**\n\t * Finalizes the hash computation.\n\t * Note that the finalize operation is effectively a destructive, read-once operation.\n\t *\n\t * @param {WordArray|string} messageUpdate (Optional) A final message update.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @example\n\t *\n\t * var hash = hasher.finalize();\n\t * var hash = hasher.finalize('message');\n\t * var hash = hasher.finalize(wordArray);\n\t */\n\t finalize: function (messageUpdate) {\n\t // Final message update\n\t if (messageUpdate) {\n\t this._append(messageUpdate);\n\t }\n\n\t // Perform concrete-hasher logic\n\t var hash = this._doFinalize();\n\n\t return hash;\n\t },\n\n\t blockSize: 512/32,\n\n\t /**\n\t * Creates a shortcut function to a hasher's object interface.\n\t *\n\t * @param {Hasher} hasher The hasher to create a helper for.\n\t *\n\t * @return {Function} The shortcut function.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);\n\t */\n\t _createHelper: function (hasher) {\n\t return function (message, cfg) {\n\t return new hasher.init(cfg).finalize(message);\n\t };\n\t },\n\n\t /**\n\t * Creates a shortcut function to the HMAC's object interface.\n\t *\n\t * @param {Hasher} hasher The hasher to use in this HMAC helper.\n\t *\n\t * @return {Function} The shortcut function.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);\n\t */\n\t _createHmacHelper: function (hasher) {\n\t return function (message, key) {\n\t return new C_algo.HMAC.init(hasher, key).finalize(message);\n\t };\n\t }\n\t });\n\n\t /**\n\t * Algorithm namespace.\n\t */\n\t var C_algo = C.algo = {};\n\n\t return C;\n\t}(Math));\n\n\n\treturn CryptoJS;\n\n}));",";(function (root, factory) {\n\tif (typeof exports === \"object\") {\n\t\t// CommonJS\n\t\tmodule.exports = exports = factory(require(\"./core\"));\n\t}\n\telse if (typeof define === \"function\" && define.amd) {\n\t\t// AMD\n\t\tdefine([\"./core\"], factory);\n\t}\n\telse {\n\t\t// Global (browser)\n\t\tfactory(root.CryptoJS);\n\t}\n}(this, function (CryptoJS) {\n\n\t(function (Math) {\n\t // Shortcuts\n\t var C = CryptoJS;\n\t var C_lib = C.lib;\n\t var WordArray = C_lib.WordArray;\n\t var Hasher = C_lib.Hasher;\n\t var C_algo = C.algo;\n\n\t // Constants table\n\t var T = [];\n\n\t // Compute constants\n\t (function () {\n\t for (var i = 0; i < 64; i++) {\n\t T[i] = (Math.abs(Math.sin(i + 1)) * 0x100000000) | 0;\n\t }\n\t }());\n\n\t /**\n\t * MD5 hash algorithm.\n\t */\n\t var MD5 = C_algo.MD5 = Hasher.extend({\n\t _doReset: function () {\n\t this._hash = new WordArray.init([\n\t 0x67452301, 0xefcdab89,\n\t 0x98badcfe, 0x10325476\n\t ]);\n\t },\n\n\t _doProcessBlock: function (M, offset) {\n\t // Swap endian\n\t for (var i = 0; i < 16; i++) {\n\t // Shortcuts\n\t var offset_i = offset + i;\n\t var M_offset_i = M[offset_i];\n\n\t M[offset_i] = (\n\t (((M_offset_i << 8) | (M_offset_i >>> 24)) & 0x00ff00ff) |\n\t (((M_offset_i << 24) | (M_offset_i >>> 8)) & 0xff00ff00)\n\t );\n\t }\n\n\t // Shortcuts\n\t var H = this._hash.words;\n\n\t var M_offset_0 = M[offset + 0];\n\t var M_offset_1 = M[offset + 1];\n\t var M_offset_2 = M[offset + 2];\n\t var M_offset_3 = M[offset + 3];\n\t var M_offset_4 = M[offset + 4];\n\t var M_offset_5 = M[offset + 5];\n\t var M_offset_6 = M[offset + 6];\n\t var M_offset_7 = M[offset + 7];\n\t var M_offset_8 = M[offset + 8];\n\t var M_offset_9 = M[offset + 9];\n\t var M_offset_10 = M[offset + 10];\n\t var M_offset_11 = M[offset + 11];\n\t var M_offset_12 = M[offset + 12];\n\t var M_offset_13 = M[offset + 13];\n\t var M_offset_14 = M[offset + 14];\n\t var M_offset_15 = M[offset + 15];\n\n\t // Working variables\n\t var a = H[0];\n\t var b = H[1];\n\t var c = H[2];\n\t var d = H[3];\n\n\t // Computation\n\t a = FF(a, b, c, d, M_offset_0, 7, T[0]);\n\t d = FF(d, a, b, c, M_offset_1, 12, T[1]);\n\t c = FF(c, d, a, b, M_offset_2, 17, T[2]);\n\t b = FF(b, c, d, a, M_offset_3, 22, T[3]);\n\t a = FF(a, b, c, d, M_offset_4, 7, T[4]);\n\t d = FF(d, a, b, c, M_offset_5, 12, T[5]);\n\t c = FF(c, d, a, b, M_offset_6, 17, T[6]);\n\t b = FF(b, c, d, a, M_offset_7, 22, T[7]);\n\t a = FF(a, b, c, d, M_offset_8, 7, T[8]);\n\t d = FF(d, a, b, c, M_offset_9, 12, T[9]);\n\t c = FF(c, d, a, b, M_offset_10, 17, T[10]);\n\t b = FF(b, c, d, a, M_offset_11, 22, T[11]);\n\t a = FF(a, b, c, d, M_offset_12, 7, T[12]);\n\t d = FF(d, a, b, c, M_offset_13, 12, T[13]);\n\t c = FF(c, d, a, b, M_offset_14, 17, T[14]);\n\t b = FF(b, c, d, a, M_offset_15, 22, T[15]);\n\n\t a = GG(a, b, c, d, M_offset_1, 5, T[16]);\n\t d = GG(d, a, b, c, M_offset_6, 9, T[17]);\n\t c = GG(c, d, a, b, M_offset_11, 14, T[18]);\n\t b = GG(b, c, d, a, M_offset_0, 20, T[19]);\n\t a = GG(a, b, c, d, M_offset_5, 5, T[20]);\n\t d = GG(d, a, b, c, M_offset_10, 9, T[21]);\n\t c = GG(c, d, a, b, M_offset_15, 14, T[22]);\n\t b = GG(b, c, d, a, M_offset_4, 20, T[23]);\n\t a = GG(a, b, c, d, M_offset_9, 5, T[24]);\n\t d = GG(d, a, b, c, M_offset_14, 9, T[25]);\n\t c = GG(c, d, a, b, M_offset_3, 14, T[26]);\n\t b = GG(b, c, d, a, M_offset_8, 20, T[27]);\n\t a = GG(a, b, c, d, M_offset_13, 5, T[28]);\n\t d = GG(d, a, b, c, M_offset_2, 9, T[29]);\n\t c = GG(c, d, a, b, M_offset_7, 14, T[30]);\n\t b = GG(b, c, d, a, M_offset_12, 20, T[31]);\n\n\t a = HH(a, b, c, d, M_offset_5, 4, T[32]);\n\t d = HH(d, a, b, c, M_offset_8, 11, T[33]);\n\t c = HH(c, d, a, b, M_offset_11, 16, T[34]);\n\t b = HH(b, c, d, a, M_offset_14, 23, T[35]);\n\t a = HH(a, b, c, d, M_offset_1, 4, T[36]);\n\t d = HH(d, a, b, c, M_offset_4, 11, T[37]);\n\t c = HH(c, d, a, b, M_offset_7, 16, T[38]);\n\t b = HH(b, c, d, a, M_offset_10, 23, T[39]);\n\t a = HH(a, b, c, d, M_offset_13, 4, T[40]);\n\t d = HH(d, a, b, c, M_offset_0, 11, T[41]);\n\t c = HH(c, d, a, b, M_offset_3, 16, T[42]);\n\t b = HH(b, c, d, a, M_offset_6, 23, T[43]);\n\t a = HH(a, b, c, d, M_offset_9, 4, T[44]);\n\t d = HH(d, a, b, c, M_offset_12, 11, T[45]);\n\t c = HH(c, d, a, b, M_offset_15, 16, T[46]);\n\t b = HH(b, c, d, a, M_offset_2, 23, T[47]);\n\n\t a = II(a, b, c, d, M_offset_0, 6, T[48]);\n\t d = II(d, a, b, c, M_offset_7, 10, T[49]);\n\t c = II(c, d, a, b, M_offset_14, 15, T[50]);\n\t b = II(b, c, d, a, M_offset_5, 21, T[51]);\n\t a = II(a, b, c, d, M_offset_12, 6, T[52]);\n\t d = II(d, a, b, c, M_offset_3, 10, T[53]);\n\t c = II(c, d, a, b, M_offset_10, 15, T[54]);\n\t b = II(b, c, d, a, M_offset_1, 21, T[55]);\n\t a = II(a, b, c, d, M_offset_8, 6, T[56]);\n\t d = II(d, a, b, c, M_offset_15, 10, T[57]);\n\t c = II(c, d, a, b, M_offset_6, 15, T[58]);\n\t b = II(b, c, d, a, M_offset_13, 21, T[59]);\n\t a = II(a, b, c, d, M_offset_4, 6, T[60]);\n\t d = II(d, a, b, c, M_offset_11, 10, T[61]);\n\t c = II(c, d, a, b, M_offset_2, 15, T[62]);\n\t b = II(b, c, d, a, M_offset_9, 21, T[63]);\n\n\t // Intermediate hash value\n\t H[0] = (H[0] + a) | 0;\n\t H[1] = (H[1] + b) | 0;\n\t H[2] = (H[2] + c) | 0;\n\t H[3] = (H[3] + d) | 0;\n\t },\n\n\t _doFinalize: function () {\n\t // Shortcuts\n\t var data = this._data;\n\t var dataWords = data.words;\n\n\t var nBitsTotal = this._nDataBytes * 8;\n\t var nBitsLeft = data.sigBytes * 8;\n\n\t // Add padding\n\t dataWords[nBitsLeft >>> 5] |= 0x80 << (24 - nBitsLeft % 32);\n\n\t var nBitsTotalH = Math.floor(nBitsTotal / 0x100000000);\n\t var nBitsTotalL = nBitsTotal;\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 15] = (\n\t (((nBitsTotalH << 8) | (nBitsTotalH >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotalH << 24) | (nBitsTotalH >>> 8)) & 0xff00ff00)\n\t );\n\t dataWords[(((nBitsLeft + 64) >>> 9) << 4) + 14] = (\n\t (((nBitsTotalL << 8) | (nBitsTotalL >>> 24)) & 0x00ff00ff) |\n\t (((nBitsTotalL << 24) | (nBitsTotalL >>> 8)) & 0xff00ff00)\n\t );\n\n\t data.sigBytes = (dataWords.length + 1) * 4;\n\n\t // Hash final blocks\n\t this._process();\n\n\t // Shortcuts\n\t var hash = this._hash;\n\t var H = hash.words;\n\n\t // Swap endian\n\t for (var i = 0; i < 4; i++) {\n\t // Shortcut\n\t var H_i = H[i];\n\n\t H[i] = (((H_i << 8) | (H_i >>> 24)) & 0x00ff00ff) |\n\t (((H_i << 24) | (H_i >>> 8)) & 0xff00ff00);\n\t }\n\n\t // Return final computed hash\n\t return hash;\n\t },\n\n\t clone: function () {\n\t var clone = Hasher.clone.call(this);\n\t clone._hash = this._hash.clone();\n\n\t return clone;\n\t }\n\t });\n\n\t function FF(a, b, c, d, x, s, t) {\n\t var n = a + ((b & c) | (~b & d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function GG(a, b, c, d, x, s, t) {\n\t var n = a + ((b & d) | (c & ~d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function HH(a, b, c, d, x, s, t) {\n\t var n = a + (b ^ c ^ d) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t function II(a, b, c, d, x, s, t) {\n\t var n = a + (c ^ (b | ~d)) + x + t;\n\t return ((n << s) | (n >>> (32 - s))) + b;\n\t }\n\n\t /**\n\t * Shortcut function to the hasher's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t *\n\t * @return {WordArray} The hash.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hash = CryptoJS.MD5('message');\n\t * var hash = CryptoJS.MD5(wordArray);\n\t */\n\t C.MD5 = Hasher._createHelper(MD5);\n\n\t /**\n\t * Shortcut function to the HMAC's object interface.\n\t *\n\t * @param {WordArray|string} message The message to hash.\n\t * @param {WordArray|string} key The secret key.\n\t *\n\t * @return {WordArray} The HMAC.\n\t *\n\t * @static\n\t *\n\t * @example\n\t *\n\t * var hmac = CryptoJS.HmacMD5(message, key);\n\t */\n\t C.HmacMD5 = Hasher._createHmacHelper(MD5);\n\t}(Math));\n\n\n\treturn CryptoJS.MD5;\n\n}));",null,null,null,null,null,null,null],"names":["normalizeProvider","fromUtf8","throwDefaultError","deserializeMetadata","fromUtf8Browser","Sha256","WebCryptoSha256","JsSha256","this","getRuntimeConfig","getSharedRuntimeConfig","RequestHandler","__Client","__getRuntimeConfig","__ServiceException","__BaseException","parseBody","parseErrorBody","__decorateServiceException","__HttpRequest","$Command","undefined","global","require","require$$0"],"mappings":"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AAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;kBAC1C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACxD;kBACa,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACxD;kBACa,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACxD;kBACa,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;kBAC3C,CAAC,GAAG,EAAE,CA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AAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,IAAA,GAAG,EAAE,IAAI;IACT,I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","x_google_ignoreList":[2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,182,183]}