{"version":3,"sources":["../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/abort.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/auth.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/HttpApiKeyAuth.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/HttpAuthScheme.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/HttpAuthSchemeProvider.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/HttpSigner.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/IdentityProviderConfig.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/auth/index.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/blob/blob-payload-input-types.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/checksum.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/client.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/command.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/connection/config.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/connection/manager.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/connection/pool.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/connection/index.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/crypto.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/encode.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoint.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoints/EndpointRuleObject.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoints/ErrorRuleObject.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoints/RuleSetObject.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoints/shared.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoints/TreeRuleObject.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/endpoints/index.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/eventStream.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/extensions/checksum.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/extensions/defaultClientConfiguration.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/extensions/defaultExtensionConfiguration.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/extensions/index.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/feature-ids.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/http.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/http/httpHandlerInitialization.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/identity/apiKeyIdentity.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/identity/awsCredentialIdentity.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/identity/identity.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/identity/tokenIdentity.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/identity/index.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/logger.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/middleware.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/pagination.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/profile.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/response.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/retry.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/serde.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/shapes.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/signature.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/stream.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/streaming-payload/streaming-blob-common-types.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/streaming-payload/streaming-blob-payload-input-types.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/streaming-payload/streaming-blob-payload-output-types.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/transfer.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/transform/client-payload-blob-type-narrow.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/transform/no-undefined.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/transform/type-transform.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/uri.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/util.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/waiter.js","../../../../../node_modules/.pnpm/@smithy+types@3.7.1/node_modules/@smithy/types/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-middleware@3.0.10/node_modules/@smithy/util-middleware/dist-es/getSmithyContext.js","../../../../../node_modules/.pnpm/@smithy+util-middleware@3.0.10/node_modules/@smithy/util-middleware/dist-es/normalizeProvider.js","../../../../../node_modules/.pnpm/@smithy+util-middleware@3.0.10/node_modules/@smithy/util-middleware/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/extensions/httpExtensionConfiguration.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/extensions/index.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/Field.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/Fields.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/httpHandler.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/httpRequest.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/httpResponse.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/isValidHostname.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/types.js","../../../../../node_modules/.pnpm/@smithy+protocol-http@4.1.7/node_modules/@smithy/protocol-http/dist-es/index.js","../../../../../node_modules/.pnpm/obliterator@1.6.1/node_modules/obliterator/iterator.js","../../../../../node_modules/.pnpm/obliterator@1.6.1/node_modules/obliterator/foreach.js","../../../../../node_modules/.pnpm/mnemonist@0.38.3/node_modules/mnemonist/utils/typed-arrays.js","../../../../../node_modules/.pnpm/mnemonist@0.38.3/node_modules/mnemonist/utils/iterables.js","../../../../../node_modules/.pnpm/mnemonist@0.38.3/node_modules/mnemonist/lru-cache.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-host-header@3.696.0/node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-logger@3.696.0/node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-logger@3.696.0/node_modules/@aws-sdk/middleware-logger/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-recursion-detection@3.696.0/node_modules/@aws-sdk/middleware-recursion-detection/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/getSmithyContext.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js","../../../../../node_modules/.pnpm/@smithy+middleware-serde@3.0.10/node_modules/@smithy/middleware-serde/dist-es/deserializerMiddleware.js","../../../../../node_modules/.pnpm/@smithy+middleware-serde@3.0.10/node_modules/@smithy/middleware-serde/dist-es/serializerMiddleware.js","../../../../../node_modules/.pnpm/@smithy+middleware-serde@3.0.10/node_modules/@smithy/middleware-serde/dist-es/serdePlugin.js","../../../../../node_modules/.pnpm/@smithy+middleware-serde@3.0.10/node_modules/@smithy/middleware-serde/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/middleware-http-signing/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/normalizeProvider.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/pagination/createPaginator.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+util-buffer-from@3.0.0/node_modules/@smithy/util-buffer-from/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-base64@3.0.0/node_modules/@smithy/util-base64/dist-es/fromBase64.js","../../../../../node_modules/.pnpm/@smithy+util-utf8@3.0.0/node_modules/@smithy/util-utf8/dist-es/fromUtf8.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.js","../../../../../node_modules/.pnpm/@smithy+util-utf8@3.0.0/node_modules/@smithy/util-utf8/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-base64@3.0.0/node_modules/@smithy/util-base64/dist-es/toBase64.js","../../../../../node_modules/.pnpm/@smithy+util-base64@3.0.0/node_modules/@smithy/util-base64/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/blob/transforms.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/blob/Uint8ArrayBlobAdapter.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/getAwsChunkedEncodingStream.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+util-uri-escape@3.0.0/node_modules/@smithy/util-uri-escape/dist-es/escape-uri-path.js","../../../../../node_modules/.pnpm/@smithy+util-uri-escape@3.0.0/node_modules/@smithy/util-uri-escape/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+querystring-builder@3.0.10/node_modules/@smithy/querystring-builder/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/constants.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/timing.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/write-request-body.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/stream-collector/collector.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/stream-collector/index.js","../../../../../node_modules/.pnpm/@smithy+node-http-handler@3.3.1/node_modules/@smithy/node-http-handler/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+fetch-http-handler@4.1.1/node_modules/@smithy/fetch-http-handler/dist-es/create-request.js","../../../../../node_modules/.pnpm/@smithy+fetch-http-handler@4.1.1/node_modules/@smithy/fetch-http-handler/dist-es/request-timeout.js","../../../../../node_modules/.pnpm/@smithy+fetch-http-handler@4.1.1/node_modules/@smithy/fetch-http-handler/dist-es/fetch-http-handler.js","../../../../../node_modules/.pnpm/@smithy+fetch-http-handler@4.1.1/node_modules/@smithy/fetch-http-handler/dist-es/stream-collector.js","../../../../../node_modules/.pnpm/@smithy+fetch-http-handler@4.1.1/node_modules/@smithy/fetch-http-handler/dist-es/index.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+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/stream-type-check.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/sdk-stream-mixin.browser.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/sdk-stream-mixin.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/splitStream.browser.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/splitStream.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/headStream.browser.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/headStream.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/checksum/ChecksumStream.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/checksum/ChecksumStream.browser.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/checksum/createChecksumStream.browser.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/checksum/createChecksumStream.js","../../../../../node_modules/.pnpm/@smithy+util-stream@3.3.1/node_modules/@smithy/util-stream/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/submodules/protocols/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/protocols/requestBuilder.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/setFeature.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js","../../../../../node_modules/.pnpm/@smithy+core@2.5.4/node_modules/@smithy/core/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.696.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/cache/EndpointCache.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/isIpAddress.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/isValidHostLabel.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/customEndpointFunctions.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/debug/debugId.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/debug/toDebugString.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/debug/index.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/EndpointError.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/EndpointFunctions.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/EndpointRuleObject.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/ErrorRuleObject.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/RuleSetObject.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/TreeRuleObject.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/shared.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/types/index.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/booleanEquals.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/getAttrPathList.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/getAttr.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/isSet.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/not.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/parseURL.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/stringEquals.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/substring.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/uriEncode.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/lib/index.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/endpointFunctions.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTemplate.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/getReferenceValue.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateExpression.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/callFunction.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateCondition.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateConditions.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointHeaders.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperty.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointProperties.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/getEndpointUrl.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateEndpointRule.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateErrorRule.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateTreeRule.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/evaluateRules.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/utils/index.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/resolveEndpoint.js","../../../../../node_modules/.pnpm/@smithy+util-endpoints@2.1.6/node_modules/@smithy/util-endpoints/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/isIpAddress.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/isVirtualHostableS3Bucket.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/parseArn.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partitions.json","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/lib/aws/partition.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/aws.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/resolveEndpoint.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointError.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/EndpointRuleObject.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/ErrorRuleObject.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/RuleSetObject.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/TreeRuleObject.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/shared.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/types/index.js","../../../../../node_modules/.pnpm/@aws-sdk+util-endpoints@3.696.0/node_modules/@aws-sdk/util-endpoints/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/client/setCredentialFeature.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/client/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/ProviderError.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/CredentialsProviderError.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/TokenProviderError.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/chain.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/fromStatic.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/memoize.js","../../../../../node_modules/.pnpm/@smithy+property-provider@3.1.10/node_modules/@smithy/property-provider/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/constants.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/credentialDerivation.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/getCanonicalHeaders.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/getCanonicalQuery.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/getPayloadHash.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/headerUtil.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/moveHeadersToQuery.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/prepareRequest.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/utilDate.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/SignatureV4.js","../../../../../node_modules/.pnpm/@smithy+signature-v4@4.2.3/node_modules/@smithy/signature-v4/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js","../../../../../node_modules/.pnpm/@smithy+middleware-stack@3.0.10/node_modules/@smithy/middleware-stack/dist-es/MiddlewareStack.js","../../../../../node_modules/.pnpm/@smithy+middleware-stack@3.0.10/node_modules/@smithy/middleware-stack/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/client.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/collect-stream-body.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/command.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/constants.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/create-aggregated-client.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/parse-utils.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/date-utils.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/exceptions.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/default-error-handler.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/defaults-mode.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/extended-encode-uri-component.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/extensions/checksum.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/extensions/retry.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/extensions/defaultExtensionConfiguration.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/extensions/index.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/get-array-if-single-item.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/get-value-from-text-node.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/is-serializable-header-value.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/lazy-json.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/NoOpLogger.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/object-mapping.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/quote-header.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/resolve-path.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/ser-utils.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/serde-json.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/split-every.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/split-header.js","../../../../../node_modules/.pnpm/@smithy+smithy-client@3.4.5/node_modules/@smithy/smithy-client/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/util.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/validator.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js","../../../../../node_modules/.pnpm/strnum@1.0.5/node_modules/strnum/strnum.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlparser/node2json.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlbuilder/orderedJs2Xml.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js","../../../../../node_modules/.pnpm/fast-xml-parser@4.4.1/node_modules/fast-xml-parser/src/fxp.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.696.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/check-features.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.696.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.696.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/encode-features.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.696.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-user-agent@3.696.0/node_modules/@aws-sdk/middleware-user-agent/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-config-provider@3.0.0/node_modules/@smithy/util-config-provider/dist-es/booleanSelector.js","../../../../../node_modules/.pnpm/@smithy+util-config-provider@3.0.0/node_modules/@smithy/util-config-provider/dist-es/numberSelector.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+util-config-provider@3.0.0/node_modules/@smithy/util-config-provider/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/resolveCustomEndpointsConfig.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/utils/getEndpointFromRegion.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/resolveEndpointsConfig.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/endpointsConfig/index.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionConfig/config.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionConfig/isFipsRegion.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionConfig/getRealRegion.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionConfig/index.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/PartitionHash.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/RegionHash.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/getHostnameFromVariants.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/getResolvedHostname.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/getResolvedPartition.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/getResolvedSigningRegion.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/getRegionInfo.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/regionInfo/index.js","../../../../../node_modules/.pnpm/@smithy+config-resolver@3.0.12/node_modules/@smithy/config-resolver/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-content-length@3.0.12/node_modules/@smithy/middleware-content-length/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/s3.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/service-customizations/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/createConfigValueProvider.js","../../../../../node_modules/.pnpm/@smithy+node-config-provider@3.1.11/node_modules/@smithy/node-config-provider/dist-es/getSelectorName.js","../../../../../node_modules/.pnpm/@smithy+node-config-provider@3.1.11/node_modules/@smithy/node-config-provider/dist-es/fromEnv.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getHomeDir.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getProfileName.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFilepath.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getSSOTokenFromFile.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigData.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getConfigFilepath.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getCredentialsFilepath.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/parseIni.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/slurpFile.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/loadSharedConfigFiles.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/getSsoSessionData.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/loadSsoSessionData.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/mergeConfigFiles.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/parseKnownFiles.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/types.js","../../../../../node_modules/.pnpm/@smithy+shared-ini-file-loader@3.1.11/node_modules/@smithy/shared-ini-file-loader/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+node-config-provider@3.1.11/node_modules/@smithy/node-config-provider/dist-es/fromSharedConfigFiles.js","../../../../../node_modules/.pnpm/@smithy+node-config-provider@3.1.11/node_modules/@smithy/node-config-provider/dist-es/fromStatic.js","../../../../../node_modules/.pnpm/@smithy+node-config-provider@3.1.11/node_modules/@smithy/node-config-provider/dist-es/configLoader.js","../../../../../node_modules/.pnpm/@smithy+node-config-provider@3.1.11/node_modules/@smithy/node-config-provider/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointUrlConfig.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromConfig.js","../../../../../node_modules/.pnpm/@smithy+querystring-parser@3.0.10/node_modules/@smithy/querystring-parser/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+url-parser@3.0.10/node_modules/@smithy/url-parser/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/toEndpointV1.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/getEndpointFromInstructions.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/adaptors/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/endpointMiddleware.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/getEndpointPlugin.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/resolveEndpointConfig.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/types.js","../../../../../node_modules/.pnpm/@smithy+middleware-endpoint@3.2.4/node_modules/@smithy/middleware-endpoint/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/config.js","../../../../../node_modules/.pnpm/@smithy+service-error-classification@3.0.10/node_modules/@smithy/service-error-classification/dist-es/constants.js","../../../../../node_modules/.pnpm/@smithy+service-error-classification@3.0.10/node_modules/@smithy/service-error-classification/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/DefaultRateLimiter.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/constants.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/defaultRetryBackoffStrategy.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/defaultRetryToken.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/StandardRetryStrategy.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/AdaptiveRetryStrategy.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/ConfiguredRetryStrategy.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/types.js","../../../../../node_modules/.pnpm/@smithy+util-retry@3.0.10/node_modules/@smithy/util-retry/dist-es/index.js","../../../../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-node/rng.js","../../../../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-node/stringify.js","../../../../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-node/native.js","../../../../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-node/v4.js","../../../../../node_modules/.pnpm/uuid@9.0.1/node_modules/uuid/dist/esm-node/index.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/defaultRetryQuota.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/delayDecider.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/retryDecider.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/util.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/StandardRetryStrategy.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/AdaptiveRetryStrategy.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/configurations.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/omitRetryHeadersMiddleware.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/isStreamingPayload/isStreamingPayload.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/retryMiddleware.js","../../../../../node_modules/.pnpm/@smithy+middleware-retry@3.0.28/node_modules/@smithy/middleware-retry/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-env@3.696.0/node_modules/@aws-sdk/credential-provider-env/dist-es/fromEnv.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-env@3.696.0/node_modules/@aws-sdk/credential-provider-env/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/httpRequest.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/ImdsCredentials.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/RemoteProviderInit.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/remoteProvider/retry.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/fromContainerMetadata.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/error/InstanceMetadataV1FallbackError.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/config/Endpoint.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/config/EndpointConfigOptions.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/config/EndpointMode.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/config/EndpointModeConfigOptions.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/utils/getInstanceMetadataEndpoint.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/utils/getExtendedInstanceMetadataCredentials.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/utils/staticStabilityProvider.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/fromInstanceMetadata.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/types.js","../../../../../node_modules/.pnpm/@smithy+credential-provider-imds@3.2.7/node_modules/@smithy/credential-provider-imds/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-http@3.696.0/node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/checkUrl.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-http@3.696.0/node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/requestHelpers.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-http@3.696.0/node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/retry-wrapper.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-http@3.696.0/node_modules/@aws-sdk/credential-provider-http/dist-es/fromHttp/fromHttp.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-http@3.696.0/node_modules/@aws-sdk/credential-provider-http/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-node@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-st_wniir447b4d6bdscdohi7gdupy/node_modules/@aws-sdk/credential-provider-node/dist-es/remoteProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/isSsoProfile.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/constants.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/auth/httpAuthSchemeProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/endpoint/EndpointParameters.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/package.json","../../../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.696.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/crt-availability.js","../../../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.696.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/is-crt-available.js","../../../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.696.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/defaultUserAgent.js","../../../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.696.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/nodeAppIdConfigOptions.js","../../../../../node_modules/.pnpm/@aws-sdk+util-user-agent-node@3.696.0/node_modules/@aws-sdk/util-user-agent-node/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+hash-node@3.0.10/node_modules/@smithy/hash-node/dist-es/index.js","../../../../../node_modules/.pnpm/@smithy+util-body-length-node@3.0.0/node_modules/@smithy/util-body-length-node/dist-es/calculateBodyLength.js","../../../../../node_modules/.pnpm/@smithy+util-body-length-node@3.0.0/node_modules/@smithy/util-body-length-node/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/endpoint/ruleset.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/endpoint/endpointResolver.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/runtimeConfig.shared.js","../../../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@3.0.28/node_modules/@smithy/util-defaults-mode-node/dist-es/constants.js","../../../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@3.0.28/node_modules/@smithy/util-defaults-mode-node/dist-es/defaultsModeConfig.js","../../../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@3.0.28/node_modules/@smithy/util-defaults-mode-node/dist-es/resolveDefaultsModeConfig.js","../../../../../node_modules/.pnpm/@smithy+util-defaults-mode-node@3.0.28/node_modules/@smithy/util-defaults-mode-node/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/runtimeConfig.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/extensions/index.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/config.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/isFipsRegion.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/getRealRegion.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/resolveRegionConfig.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/regionConfig/index.js","../../../../../node_modules/.pnpm/@aws-sdk+region-config-resolver@3.696.0/node_modules/@aws-sdk/region-config-resolver/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/auth/httpAuthExtensionConfiguration.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/runtimeExtensions.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/SSOOIDCClient.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/models/SSOOIDCServiceException.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/models/models_0.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/protocols/Aws_restJson1.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/CreateTokenCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/CreateTokenWithIAMCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/RegisterClientCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/StartDeviceAuthorizationCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/SSOOIDC.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/commands/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/models/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sso-oidc/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/getSsoOidcClient.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/getNewSsoOidcToken.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/validateTokenExpiry.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/validateTokenKey.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/writeSSOTokenToFile.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/fromSso.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/fromStatic.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/nodeProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+token-providers@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/token-providers/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/auth/httpAuthSchemeProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/endpoint/EndpointParameters.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/package.json","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/endpoint/ruleset.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/endpoint/endpointResolver.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.shared.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/auth/httpAuthExtensionConfiguration.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/runtimeExtensions.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/SSOClient.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/models/SSOServiceException.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/models/models_0.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/protocols/Aws_restJson1.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/commands/GetRoleCredentialsCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/commands/ListAccountRolesCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/commands/ListAccountsCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/commands/LogoutCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/SSO.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/commands/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/pagination/Interfaces.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/pagination/ListAccountRolesPaginator.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/pagination/ListAccountsPaginator.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/pagination/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/models/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sso@3.696.0/node_modules/@aws-sdk/client-sso/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/loadSso.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/resolveSSOCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/validateSsoProfile.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/fromSSO.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/types.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-sso@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts@3.699.0_/node_modules/@aws-sdk/credential-provider-sso/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveCredentialSource.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/auth/httpAuthSchemeProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/endpoint/EndpointParameters.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/package.json","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/endpoint/ruleset.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/endpoint/endpointResolver.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.shared.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/auth/httpAuthExtensionConfiguration.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/runtimeExtensions.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/STSClient.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/models/STSServiceException.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/models/models_0.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/protocols/Aws_query.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithSAMLCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithWebIdentityCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRootCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/DecodeAuthorizationMessageCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/GetAccessKeyInfoCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/GetCallerIdentityCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/GetFederationTokenCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/GetSessionTokenCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/STS.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/commands/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/models/index.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/defaultStsRoleAssumers.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/defaultRoleAssumers.js","../../../../../node_modules/.pnpm/@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/client-sts/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveAssumeRoleCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-process@3.696.0/node_modules/@aws-sdk/credential-provider-process/dist-es/getValidatedProcessCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-process@3.696.0/node_modules/@aws-sdk/credential-provider-process/dist-es/resolveProcessCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-process@3.696.0/node_modules/@aws-sdk/credential-provider-process/dist-es/fromProcess.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-process@3.696.0/node_modules/@aws-sdk/credential-provider-process/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProcessCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveSsoCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveStaticCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-web-identity@3.696.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromWebToken.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-web-identity@3.696.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromTokenFile.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-web-identity@3.696.0_@aws-sdk+client-sts@3.699.0/node_modules/@aws-sdk/credential-provider-web-identity/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveWebIdentityCredentials.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/resolveProfileData.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/fromIni.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-ini@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-sts_2guavycxfirw3d2d2k6433ciba/node_modules/@aws-sdk/credential-provider-ini/dist-es/index.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-node@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-st_wniir447b4d6bdscdohi7gdupy/node_modules/@aws-sdk/credential-provider-node/dist-es/defaultProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+credential-provider-node@3.699.0_@aws-sdk+client-sso-oidc@3.699.0_@aws-sdk+client-st_wniir447b4d6bdscdohi7gdupy/node_modules/@aws-sdk/credential-provider-node/dist-es/index.js","../../../src/drivers/dynamodb.ts","../../../../../node_modules/.pnpm/chunkify@5.0.0/node_modules/chunkify/index.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/account-id-endpoint/AccountIdEndpointModeConfigResolver.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/account-id-endpoint/AccountIdEndpointModeConstants.js","../../../../../node_modules/.pnpm/@aws-sdk+core@3.696.0/node_modules/@aws-sdk/core/dist-es/submodules/account-id-endpoint/NodeAccountIdEndpointModeConfigOptions.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-endpoint-discovery@3.696.0/node_modules/@aws-sdk/middleware-endpoint-discovery/dist-es/configurations.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-endpoint-discovery@3.696.0/node_modules/@aws-sdk/middleware-endpoint-discovery/dist-es/endpointDiscoveryMiddleware.js","../../../../../node_modules/.pnpm/@aws-sdk+endpoint-cache@3.693.0/node_modules/@aws-sdk/endpoint-cache/dist-es/EndpointCache.js","../../../../../node_modules/.pnpm/@aws-sdk+middleware-endpoint-discovery@3.696.0/node_modules/@aws-sdk/middleware-endpoint-discovery/dist-es/resolveEndpointDiscoveryConfig.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/DynamoDBClient.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/auth/httpAuthSchemeProvider.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DescribeEndpointsCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/endpoint/EndpointParameters.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/protocols/Aws_json1_0.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/models/DynamoDBServiceException.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/models/models_0.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/package.json","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/runtimeConfig.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/runtimeConfig.shared.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/endpoint/endpointResolver.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/endpoint/ruleset.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/runtimeExtensions.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/auth/httpAuthExtensionConfiguration.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/commands/BatchWriteItemCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/commands/DeleteItemCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/commands/GetItemCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/commands/PutItemCommand.js","../../../../../node_modules/.pnpm/@aws-sdk+client-dynamodb@3.705.0/node_modules/@aws-sdk/client-dynamodb/dist-es/commands/ScanCommand.js","../../../src/drivers/base-driver.ts"],"sourcesContent":["export {};\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 {};\n","export {};\n","export {};\n","export {};\n","export * from \"./auth\";\nexport * from \"./HttpApiKeyAuth\";\nexport * from \"./HttpAuthScheme\";\nexport * from \"./HttpAuthSchemeProvider\";\nexport * from \"./HttpSigner\";\nexport * from \"./IdentityProviderConfig\";\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export * from \"./config\";\nexport * from \"./manager\";\nexport * from \"./pool\";\n","export {};\n","export {};\n","export var EndpointURLScheme;\n(function (EndpointURLScheme) {\n    EndpointURLScheme[\"HTTP\"] = \"http\";\n    EndpointURLScheme[\"HTTPS\"] = \"https\";\n})(EndpointURLScheme || (EndpointURLScheme = {}));\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./shared\";\nexport * from \"./TreeRuleObject\";\n","export {};\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","import { getChecksumConfiguration, resolveChecksumRuntimeConfig } from \"./checksum\";\nexport const getDefaultClientConfiguration = (runtimeConfig) => {\n    return {\n        ...getChecksumConfiguration(runtimeConfig),\n    };\n};\nexport const resolveDefaultRuntimeConfig = (config) => {\n    return {\n        ...resolveChecksumRuntimeConfig(config),\n    };\n};\n","export {};\n","export * from \"./defaultClientConfiguration\";\nexport * from \"./defaultExtensionConfiguration\";\nexport { AlgorithmId } from \"./checksum\";\n","export {};\n","export var FieldPosition;\n(function (FieldPosition) {\n    FieldPosition[FieldPosition[\"HEADER\"] = 0] = \"HEADER\";\n    FieldPosition[FieldPosition[\"TRAILER\"] = 1] = \"TRAILER\";\n})(FieldPosition || (FieldPosition = {}));\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export * from \"./apiKeyIdentity\";\nexport * from \"./awsCredentialIdentity\";\nexport * from \"./identity\";\nexport * from \"./tokenIdentity\";\n","export {};\n","export const SMITHY_CONTEXT_KEY = \"__smithy_context\";\n","export {};\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 {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\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 {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export * from \"./abort\";\nexport * from \"./auth\";\nexport * from \"./blob/blob-payload-input-types\";\nexport * from \"./checksum\";\nexport * from \"./client\";\nexport * from \"./command\";\nexport * from \"./connection\";\nexport * from \"./crypto\";\nexport * from \"./encode\";\nexport * from \"./endpoint\";\nexport * from \"./endpoints\";\nexport * from \"./eventStream\";\nexport * from \"./extensions\";\nexport * from \"./feature-ids\";\nexport * from \"./http\";\nexport * from \"./http/httpHandlerInitialization\";\nexport * from \"./identity\";\nexport * from \"./logger\";\nexport * from \"./middleware\";\nexport * from \"./pagination\";\nexport * from \"./profile\";\nexport * from \"./response\";\nexport * from \"./retry\";\nexport * from \"./serde\";\nexport * from \"./shapes\";\nexport * from \"./signature\";\nexport * from \"./stream\";\nexport * from \"./streaming-payload/streaming-blob-common-types\";\nexport * from \"./streaming-payload/streaming-blob-payload-input-types\";\nexport * from \"./streaming-payload/streaming-blob-payload-output-types\";\nexport * from \"./transfer\";\nexport * from \"./transform/client-payload-blob-type-narrow\";\nexport * from \"./transform/no-undefined\";\nexport * from \"./transform/type-transform\";\nexport * from \"./uri\";\nexport * from \"./util\";\nexport * from \"./waiter\";\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 * from \"./getSmithyContext\";\nexport * from \"./normalizeProvider\";\n","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 * from \"./httpExtensionConfiguration\";\n","import { FieldPosition } from \"@smithy/types\";\nexport class Field {\n    constructor({ name, kind = FieldPosition.HEADER, values = [] }) {\n        this.name = name;\n        this.kind = kind;\n        this.values = values;\n    }\n    add(value) {\n        this.values.push(value);\n    }\n    set(values) {\n        this.values = values;\n    }\n    remove(value) {\n        this.values = this.values.filter((v) => v !== value);\n    }\n    toString() {\n        return this.values.map((v) => (v.includes(\",\") || v.includes(\" \") ? `\"${v}\"` : v)).join(\", \");\n    }\n    get() {\n        return this.values;\n    }\n}\n","export class Fields {\n    constructor({ fields = [], encoding = \"utf-8\" }) {\n        this.entries = {};\n        fields.forEach(this.setField.bind(this));\n        this.encoding = encoding;\n    }\n    setField(field) {\n        this.entries[field.name.toLowerCase()] = field;\n    }\n    getField(name) {\n        return this.entries[name.toLowerCase()];\n    }\n    removeField(name) {\n        delete this.entries[name.toLowerCase()];\n    }\n    getByType(kind) {\n        return Object.values(this.entries).filter((field) => field.kind === kind);\n    }\n}\n","export {};\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","export function isValidHostname(hostname) {\n    const hostPattern = /^[a-z0-9][a-z0-9\\.\\-]*[a-z0-9]$/;\n    return hostPattern.test(hostname);\n}\n","export {};\n","export * from \"./extensions\";\nexport * from \"./Field\";\nexport * from \"./Fields\";\nexport * from \"./httpHandler\";\nexport * from \"./httpRequest\";\nexport * from \"./httpResponse\";\nexport * from \"./isValidHostname\";\nexport * from \"./types\";\n","/**\n * Obliterator Iterator Class\n * ===========================\n *\n * Simple class representing the library's iterators.\n */\n\n/**\n * Iterator class.\n *\n * @constructor\n * @param {function} next - Next function.\n */\nfunction Iterator(next) {\n\n  // Hiding the given function\n  Object.defineProperty(this, '_next', {\n    writable: false,\n    enumerable: false,\n    value: next\n  });\n\n  // Is the iterator complete?\n  this.done = false;\n}\n\n/**\n * Next function.\n *\n * @return {object}\n */\n// NOTE: maybe this should dropped for performance?\nIterator.prototype.next = function() {\n  if (this.done)\n    return {done: true};\n\n  var step = this._next();\n\n  if (step.done)\n    this.done = true;\n\n  return step;\n};\n\n/**\n * If symbols are supported, we add `next` to `Symbol.iterator`.\n */\nif (typeof Symbol !== 'undefined')\n  Iterator.prototype[Symbol.iterator] = function() {\n    return this;\n  };\n\n/**\n * Returning an iterator of the given values.\n *\n * @param  {any...} values - Values.\n * @return {Iterator}\n */\nIterator.of = function() {\n  var args = arguments,\n      l = args.length,\n      i = 0;\n\n  return new Iterator(function() {\n    if (i >= l)\n      return {done: true};\n\n    return {done: false, value: args[i++]};\n  });\n};\n\n/**\n * Returning an empty iterator.\n *\n * @return {Iterator}\n */\nIterator.empty = function() {\n  var iterator = new Iterator(null);\n  iterator.done = true;\n\n  return iterator;\n};\n\n/**\n * Returning whether the given value is an iterator.\n *\n * @param  {any} value - Value.\n * @return {boolean}\n */\nIterator.is = function(value) {\n  if (value instanceof Iterator)\n    return true;\n\n  return (\n    typeof value === 'object' &&\n    value !== null &&\n    typeof value.next === 'function'\n  );\n};\n\n/**\n * Exporting.\n */\nmodule.exports = Iterator;\n","/**\n * Obliterator ForEach Function\n * =============================\n *\n * Helper function used to easily iterate over mixed values.\n */\n\n/**\n * Constants.\n */\nvar ARRAY_BUFFER_SUPPORT = typeof ArrayBuffer !== 'undefined',\n    SYMBOL_SUPPORT = typeof Symbol !== 'undefined';\n\n/**\n * Function able to iterate over almost any iterable JS value.\n *\n * @param  {any}      iterable - Iterable value.\n * @param  {function} callback - Callback function.\n */\nfunction forEach(iterable, callback) {\n  var iterator, k, i, l, s;\n\n  if (!iterable)\n    throw new Error('obliterator/forEach: invalid iterable.');\n\n  if (typeof callback !== 'function')\n    throw new Error('obliterator/forEach: expecting a callback.');\n\n  // The target is an array or a string or function arguments\n  if (\n    Array.isArray(iterable) ||\n    (ARRAY_BUFFER_SUPPORT && ArrayBuffer.isView(iterable)) ||\n    typeof iterable === 'string' ||\n    iterable.toString() === '[object Arguments]'\n  ) {\n    for (i = 0, l = iterable.length; i < l; i++)\n      callback(iterable[i], i);\n    return;\n  }\n\n  // The target has a #.forEach method\n  if (typeof iterable.forEach === 'function') {\n    iterable.forEach(callback);\n    return;\n  }\n\n  // The target is iterable\n  if (\n    SYMBOL_SUPPORT &&\n    Symbol.iterator in iterable &&\n    typeof iterable.next !== 'function'\n  ) {\n    iterable = iterable[Symbol.iterator]();\n  }\n\n  // The target is an iterator\n  if (typeof iterable.next === 'function') {\n    iterator = iterable;\n    i = 0;\n\n    while ((s = iterator.next(), s.done !== true)) {\n      callback(s.value, i);\n      i++;\n    }\n\n    return;\n  }\n\n  // The target is a plain object\n  for (k in iterable) {\n    if (iterable.hasOwnProperty(k)) {\n      callback(iterable[k], k);\n    }\n  }\n\n  return;\n}\n\n/**\n * Same function as the above `forEach` but will yield `null` when the target\n * does not have keys.\n *\n * @param  {any}      iterable - Iterable value.\n * @param  {function} callback - Callback function.\n */\nforEach.forEachWithNullKeys = function(iterable, callback) {\n  var iterator, k, i, l, s;\n\n  if (!iterable)\n    throw new Error('obliterator/forEachWithNullKeys: invalid iterable.');\n\n  if (typeof callback !== 'function')\n    throw new Error('obliterator/forEachWithNullKeys: expecting a callback.');\n\n  // The target is an array or a string or function arguments\n  if (\n    Array.isArray(iterable) ||\n    (ARRAY_BUFFER_SUPPORT && ArrayBuffer.isView(iterable)) ||\n    typeof iterable === 'string' ||\n    iterable.toString() === '[object Arguments]'\n  ) {\n    for (i = 0, l = iterable.length; i < l; i++)\n      callback(iterable[i], null);\n    return;\n  }\n\n  // The target is a Set\n  if (iterable instanceof Set) {\n    iterable.forEach(function(value) {\n      callback(value, null);\n    });\n    return;\n  }\n\n  // The target has a #.forEach method\n  if (typeof iterable.forEach === 'function') {\n    iterable.forEach(callback);\n    return;\n  }\n\n  // The target is iterable\n  if (\n    SYMBOL_SUPPORT &&\n    Symbol.iterator in iterable &&\n    typeof iterable.next !== 'function'\n  ) {\n    iterable = iterable[Symbol.iterator]();\n  }\n\n  // The target is an iterator\n  if (typeof iterable.next === 'function') {\n    iterator = iterable;\n    i = 0;\n\n    while ((s = iterator.next(), s.done !== true)) {\n      callback(s.value, null);\n      i++;\n    }\n\n    return;\n  }\n\n  // The target is a plain object\n  for (k in iterable) {\n    if (iterable.hasOwnProperty(k)) {\n      callback(iterable[k], k);\n    }\n  }\n\n  return;\n};\n\n/**\n * Exporting.\n */\nmodule.exports = forEach;\n","/**\n * Mnemonist Typed Array Helpers\n * ==============================\n *\n * Miscellaneous helpers related to typed arrays.\n */\n\n/**\n * When using an unsigned integer array to store pointers, one might want to\n * choose the optimal word size in regards to the actual numbers of pointers\n * to store.\n *\n * This helpers does just that.\n *\n * @param  {number} size - Expected size of the array to map.\n * @return {TypedArray}\n */\nvar MAX_8BIT_INTEGER = Math.pow(2, 8) - 1,\n    MAX_16BIT_INTEGER = Math.pow(2, 16) - 1,\n    MAX_32BIT_INTEGER = Math.pow(2, 32) - 1;\n\nvar MAX_SIGNED_8BIT_INTEGER = Math.pow(2, 7) - 1,\n    MAX_SIGNED_16BIT_INTEGER = Math.pow(2, 15) - 1,\n    MAX_SIGNED_32BIT_INTEGER = Math.pow(2, 31) - 1;\n\nexports.getPointerArray = function(size) {\n  var maxIndex = size - 1;\n\n  if (maxIndex <= MAX_8BIT_INTEGER)\n    return Uint8Array;\n\n  if (maxIndex <= MAX_16BIT_INTEGER)\n    return Uint16Array;\n\n  if (maxIndex <= MAX_32BIT_INTEGER)\n    return Uint32Array;\n\n  return Float64Array;\n};\n\nexports.getSignedPointerArray = function(size) {\n  var maxIndex = size - 1;\n\n  if (maxIndex <= MAX_SIGNED_8BIT_INTEGER)\n    return Int8Array;\n\n  if (maxIndex <= MAX_SIGNED_16BIT_INTEGER)\n    return Int16Array;\n\n  if (maxIndex <= MAX_SIGNED_32BIT_INTEGER)\n    return Int32Array;\n\n  return Float64Array;\n};\n\n/**\n * Function returning the minimal type able to represent the given number.\n *\n * @param  {number} value - Value to test.\n * @return {TypedArrayClass}\n */\nexports.getNumberType = function(value) {\n\n  // <= 32 bits itnteger?\n  if (value === (value | 0)) {\n\n    // Negative\n    if (Math.sign(value) === -1) {\n      if (value <= 127 && value >= -128)\n        return Int8Array;\n\n      if (value <= 32767 && value >= -32768)\n        return Int16Array;\n\n      return Int32Array;\n    }\n    else {\n\n      if (value <= 255)\n        return Uint8Array;\n\n      if (value <= 65535)\n        return Uint16Array;\n\n      return Uint32Array;\n    }\n  }\n\n  // 53 bits integer & floats\n  // NOTE: it's kinda hard to tell whether we could use 32bits or not...\n  return Float64Array;\n};\n\n/**\n * Function returning the minimal type able to represent the given array\n * of JavaScript numbers.\n *\n * @param  {array}    array  - Array to represent.\n * @param  {function} getter - Optional getter.\n * @return {TypedArrayClass}\n */\nvar TYPE_PRIORITY = {\n  Uint8Array: 1,\n  Int8Array: 2,\n  Uint16Array: 3,\n  Int16Array: 4,\n  Uint32Array: 5,\n  Int32Array: 6,\n  Float32Array: 7,\n  Float64Array: 8\n};\n\n// TODO: make this a one-shot for one value\nexports.getMinimalRepresentation = function(array, getter) {\n  var maxType = null,\n      maxPriority = 0,\n      p,\n      t,\n      v,\n      i,\n      l;\n\n  for (i = 0, l = array.length; i < l; i++) {\n    v = getter ? getter(array[i]) : array[i];\n    t = exports.getNumberType(v);\n    p = TYPE_PRIORITY[t.name];\n\n    if (p > maxPriority) {\n      maxPriority = p;\n      maxType = t;\n    }\n  }\n\n  return maxType;\n};\n\n/**\n * Function returning whether the given value is a typed array.\n *\n * @param  {any} value - Value to test.\n * @return {boolean}\n */\nexports.isTypedArray = function(value) {\n  return typeof ArrayBuffer !== 'undefined' && ArrayBuffer.isView(value);\n};\n\n/**\n * Function used to concat byte arrays.\n *\n * @param  {...ByteArray}\n * @return {ByteArray}\n */\nexports.concat = function() {\n  var length = 0,\n      i,\n      o,\n      l;\n\n  for (i = 0, l = arguments.length; i < l; i++)\n    length += arguments[i].length;\n\n  var array = new (arguments[0].constructor)(length);\n\n  for (i = 0, o = 0; i < l; i++) {\n    array.set(arguments[i], o);\n    o += arguments[i].length;\n  }\n\n  return array;\n};\n\n/**\n * Function used to initialize a byte array of indices.\n *\n * @param  {number}    length - Length of target.\n * @return {ByteArray}\n */\nexports.indices = function(length) {\n  var PointerArray = exports.getPointerArray(length);\n\n  var array = new PointerArray(length);\n\n  for (var i = 0; i < length; i++)\n    array[i] = i;\n\n  return array;\n};\n","/**\n * Mnemonist Iterable Function\n * ============================\n *\n * Harmonized iteration helpers over mixed iterable targets.\n */\nvar forEach = require('obliterator/foreach');\n\nvar typed = require('./typed-arrays.js');\n\n/**\n * Function used to determine whether the given object supports array-like\n * random access.\n *\n * @param  {any} target - Target object.\n * @return {boolean}\n */\nfunction isArrayLike(target) {\n  return Array.isArray(target) || typed.isTypedArray(target);\n}\n\n/**\n * Function used to guess the length of the structure over which we are going\n * to iterate.\n *\n * @param  {any} target - Target object.\n * @return {number|undefined}\n */\nfunction guessLength(target) {\n  if (typeof target.length === 'number')\n    return target.length;\n\n  if (typeof target.size === 'number')\n    return target.size;\n\n  return;\n}\n\n/**\n * Function used to convert an iterable to an array.\n *\n * @param  {any}   target - Iteration target.\n * @return {array}\n */\nfunction toArray(target) {\n  var l = guessLength(target);\n\n  var array = typeof l === 'number' ? new Array(l) : [];\n\n  var i = 0;\n\n  // TODO: we could optimize when given target is array like\n  forEach(target, function(value) {\n    array[i++] = value;\n  });\n\n  return array;\n}\n\n/**\n * Same as above but returns a supplementary indices array.\n *\n * @param  {any}   target - Iteration target.\n * @return {array}\n */\nfunction toArrayWithIndices(target) {\n  var l = guessLength(target);\n\n  var IndexArray = typeof l === 'number' ?\n    typed.getPointerArray(l) :\n    Array;\n\n  var array = typeof l === 'number' ? new Array(l) : [];\n  var indices = typeof l === 'number' ? new IndexArray(l) : [];\n\n  var i = 0;\n\n  // TODO: we could optimize when given target is array like\n  forEach(target, function(value) {\n    array[i] = value;\n    indices[i] = i++;\n  });\n\n  return [array, indices];\n}\n\n/**\n * Exporting.\n */\nexports.isArrayLike = isArrayLike;\nexports.guessLength = guessLength;\nexports.toArray = toArray;\nexports.toArrayWithIndices = toArrayWithIndices;\n","/**\n * Mnemonist LRUCache\n * ===================\n *\n * JavaScript implementation of the LRU Cache data structure. To save up\n * memory and allocations this implementation represents its underlying\n * doubly-linked list as static arrays and pointers. Thus, memory is allocated\n * only once at instantiation and JS objects are never created to serve as\n * pointers. This also means this implementation does not trigger too many\n * garbage collections.\n *\n * Note that to save up memory, a LRU Cache can be implemented using a singly\n * linked list by storing predecessors' pointers as hashmap values.\n * However, this means more hashmap lookups and would probably slow the whole\n * thing down. What's more, pointers are not the things taking most space in\n * memory.\n */\nvar Iterator = require('obliterator/iterator'),\n    forEach = require('obliterator/foreach'),\n    typed = require('./utils/typed-arrays.js'),\n    iterables = require('./utils/iterables.js');\n\n/**\n * LRUCache.\n *\n * @constructor\n * @param {function} Keys     - Array class for storing keys.\n * @param {function} Values   - Array class for storing values.\n * @param {number}   capacity - Desired capacity.\n */\nfunction LRUCache(Keys, Values, capacity) {\n  if (arguments.length < 2) {\n    capacity = Keys;\n    Keys = null;\n    Values = null;\n  }\n\n  this.capacity = capacity;\n\n  if (typeof this.capacity !== 'number' || this.capacity <= 0)\n    throw new Error('mnemonist/lru-cache: capacity should be positive number.');\n\n  var PointerArray = typed.getPointerArray(capacity);\n\n  this.forward = new PointerArray(capacity);\n  this.backward = new PointerArray(capacity);\n  this.K = typeof Keys === 'function' ? new Keys(capacity) : new Array(capacity);\n  this.V = typeof Values === 'function' ? new Values(capacity) : new Array(capacity);\n\n  // Properties\n  this.size = 0;\n  this.head = 0;\n  this.tail = 0;\n  this.items = {};\n}\n\n/**\n * Method used to clear the structure.\n *\n * @return {undefined}\n */\nLRUCache.prototype.clear = function() {\n  this.size = 0;\n  this.head = 0;\n  this.tail = 0;\n  this.items = {};\n};\n\n/**\n * Method used to splay a value on top.\n *\n * @param  {number}   pointer - Pointer of the value to splay on top.\n * @return {LRUCache}\n */\nLRUCache.prototype.splayOnTop = function(pointer) {\n  var oldHead = this.head;\n\n  if (this.head === pointer)\n    return this;\n\n  var previous = this.backward[pointer],\n      next = this.forward[pointer];\n\n  if (this.tail === pointer) {\n    this.tail = previous;\n  }\n  else {\n    this.backward[next] = previous;\n  }\n\n  this.forward[previous] = next;\n\n  this.backward[oldHead] = pointer;\n  this.head = pointer;\n  this.forward[pointer] = oldHead;\n\n  return this;\n};\n\n/**\n * Method used to set the value for the given key in the cache.\n *\n * @param  {any} key   - Key.\n * @param  {any} value - Value.\n * @return {undefined}\n */\nLRUCache.prototype.set = function(key, value) {\n\n  // The key already exists, we just need to update the value and splay on top\n  var pointer = this.items[key];\n\n  if (typeof pointer !== 'undefined') {\n    this.splayOnTop(pointer);\n    this.V[pointer] = value;\n\n    return;\n  }\n\n  // The cache is not yet full\n  if (this.size < this.capacity) {\n    pointer = this.size++;\n  }\n\n  // Cache is full, we need to drop the last value\n  else {\n    pointer = this.tail;\n    this.tail = this.backward[pointer];\n    delete this.items[this.K[pointer]];\n  }\n\n  // Storing key & value\n  this.items[key] = pointer;\n  this.K[pointer] = key;\n  this.V[pointer] = value;\n\n  // Moving the item at the front of the list\n  this.forward[pointer] = this.head;\n  this.backward[this.head] = pointer;\n  this.head = pointer;\n};\n\n/**\n * Method used to set the value for the given key in the cache\n *\n * @param  {any} key   - Key.\n * @param  {any} value - Value.\n * @return {{evicted: boolean, key: any, value: any}} An object containing the\n * key and value of an item that was overwritten or evicted in the set\n * operation, as well as a boolean indicating whether it was evicted due to\n * limited capacity. Return value is null if nothing was evicted or overwritten\n * during the set operation.\n */\nLRUCache.prototype.setpop = function(key, value) {\n  var oldValue = null;\n  var oldKey = null;\n  // The key already exists, we just need to update the value and splay on top\n  var pointer = this.items[key];\n\n  if (typeof pointer !== 'undefined') {\n    this.splayOnTop(pointer);\n    oldValue = this.V[pointer];\n    this.V[pointer] = value;\n    return {evicted: false, key: key, value: oldValue};\n  }\n\n  // The cache is not yet full\n  if (this.size < this.capacity) {\n    pointer = this.size++;\n  }\n\n  // Cache is full, we need to drop the last value\n  else {\n    pointer = this.tail;\n    this.tail = this.backward[pointer];\n    oldValue = this.V[pointer];\n    oldKey = this.K[pointer];\n    delete this.items[this.K[pointer]];\n  }\n\n  // Storing key & value\n  this.items[key] = pointer;\n  this.K[pointer] = key;\n  this.V[pointer] = value;\n\n  // Moving the item at the front of the list\n  this.forward[pointer] = this.head;\n  this.backward[this.head] = pointer;\n  this.head = pointer;\n\n  // Return object if eviction took place, otherwise return null\n  if (oldKey) {\n    return {evicted: true, key: oldKey, value: oldValue};\n  }\n  else {\n    return null;\n  }\n};\n\n/**\n * Method used to check whether the key exists in the cache.\n *\n * @param  {any} key   - Key.\n * @return {boolean}\n */\nLRUCache.prototype.has = function(key) {\n  return key in this.items;\n};\n\n/**\n * Method used to get the value attached to the given key. Will move the\n * related key to the front of the underlying linked list.\n *\n * @param  {any} key   - Key.\n * @return {any}\n */\nLRUCache.prototype.get = function(key) {\n  var pointer = this.items[key];\n\n  if (typeof pointer === 'undefined')\n    return;\n\n  this.splayOnTop(pointer);\n\n  return this.V[pointer];\n};\n\n/**\n * Method used to get the value attached to the given key. Does not modify\n * the ordering of the underlying linked list.\n *\n * @param  {any} key   - Key.\n * @return {any}\n */\nLRUCache.prototype.peek = function(key) {\n    var pointer = this.items[key];\n\n    if (typeof pointer === 'undefined')\n        return;\n\n    return this.V[pointer];\n};\n\n/**\n * Method used to iterate over the cache's entries using a callback.\n *\n * @param  {function}  callback - Function to call for each item.\n * @param  {object}    scope    - Optional scope.\n * @return {undefined}\n */\nLRUCache.prototype.forEach = function(callback, scope) {\n  scope = arguments.length > 1 ? scope : this;\n\n  var i = 0,\n      l = this.size;\n\n  var pointer = this.head,\n      keys = this.K,\n      values = this.V,\n      forward = this.forward;\n\n  while (i < l) {\n\n    callback.call(scope, values[pointer], keys[pointer], this);\n    pointer = forward[pointer];\n\n    i++;\n  }\n};\n\n/**\n * Method used to create an iterator over the cache's keys from most\n * recently used to least recently used.\n *\n * @return {Iterator}\n */\nLRUCache.prototype.keys = function() {\n  var i = 0,\n      l = this.size;\n\n  var pointer = this.head,\n      keys = this.K,\n      forward = this.forward;\n\n  return new Iterator(function() {\n    if (i >= l)\n      return {done: true};\n\n    var key = keys[pointer];\n\n    i++;\n\n    if (i < l)\n      pointer = forward[pointer];\n\n    return {\n      done: false,\n      value: key\n    };\n  });\n};\n\n/**\n * Method used to create an iterator over the cache's values from most\n * recently used to least recently used.\n *\n * @return {Iterator}\n */\nLRUCache.prototype.values = function() {\n  var i = 0,\n      l = this.size;\n\n  var pointer = this.head,\n      values = this.V,\n      forward = this.forward;\n\n  return new Iterator(function() {\n    if (i >= l)\n      return {done: true};\n\n    var value = values[pointer];\n\n    i++;\n\n    if (i < l)\n      pointer = forward[pointer];\n\n    return {\n      done: false,\n      value: value\n    };\n  });\n};\n\n/**\n * Method used to create an iterator over the cache's entries from most\n * recently used to least recently used.\n *\n * @return {Iterator}\n */\nLRUCache.prototype.entries = function() {\n  var i = 0,\n      l = this.size;\n\n  var pointer = this.head,\n      keys = this.K,\n      values = this.V,\n      forward = this.forward;\n\n  return new Iterator(function() {\n    if (i >= l)\n      return {done: true};\n\n    var key = keys[pointer],\n        value = values[pointer];\n\n    i++;\n\n    if (i < l)\n      pointer = forward[pointer];\n\n    return {\n      done: false,\n      value: [key, value]\n    };\n  });\n};\n\n/**\n * Attaching the #.entries method to Symbol.iterator if possible.\n */\nif (typeof Symbol !== 'undefined')\n  LRUCache.prototype[Symbol.iterator] = LRUCache.prototype.entries;\n\n/**\n * Convenience known methods.\n */\nLRUCache.prototype.inspect = function() {\n  var proxy = new Map();\n\n  var iterator = this.entries(),\n      step;\n\n  while ((step = iterator.next(), !step.done))\n    proxy.set(step.value[0], step.value[1]);\n\n  // Trick so that node displays the name of the constructor\n  Object.defineProperty(proxy, 'constructor', {\n    value: LRUCache,\n    enumerable: false\n  });\n\n  return proxy;\n};\n\nif (typeof Symbol !== 'undefined')\n  LRUCache.prototype[Symbol.for('nodejs.util.inspect.custom')] = LRUCache.prototype.inspect;\n\n/**\n * Static @.from function taking an arbitrary iterable & converting it into\n * a structure.\n *\n * @param  {Iterable} iterable - Target iterable.\n * @param  {function} Keys     - Array class for storing keys.\n * @param  {function} Values   - Array class for storing values.\n * @param  {number}   capacity - Cache's capacity.\n * @return {LRUCache}\n */\nLRUCache.from = function(iterable, Keys, Values, capacity) {\n  if (arguments.length < 2) {\n    capacity = iterables.guessLength(iterable);\n\n    if (typeof capacity !== 'number')\n      throw new Error('mnemonist/lru-cache.from: could not guess iterable length. Please provide desired capacity as last argument.');\n  }\n  else if (arguments.length === 2) {\n    capacity = Keys;\n    Keys = null;\n    Values = null;\n  }\n\n  var cache = new LRUCache(Keys, Values, capacity);\n\n  forEach(iterable, function(value, key) {\n    cache.set(key, value);\n  });\n\n  return cache;\n};\n\n/**\n * Exporting.\n */\nmodule.exports = LRUCache;\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","export * from \"./loggerMiddleware\";\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","import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\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","import { 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: \"endpointV2Middleware\",\n};\nexport const getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n    applyToStack: (clientStack) => {\n        clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n            httpAuthSchemeParametersProvider,\n            identityProviderConfigProvider,\n        }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);\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","export * from \"./deserializerMiddleware\";\nexport * from \"./serdePlugin\";\nexport * from \"./serializerMiddleware\";\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","export * from \"./httpAuthSchemeMiddleware\";\nexport * from \"./getHttpAuthSchemeEndpointRuleSetPlugin\";\nexport * from \"./getHttpAuthSchemePlugin\";\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","import { 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: \"retryMiddleware\",\n};\nexport const getHttpSigningPlugin = (config) => ({\n    applyToStack: (clientStack) => {\n        clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);\n    },\n});\n","export * from \"./httpSigningMiddleware\";\nexport * from \"./getHttpSigningMiddleware\";\n","export const normalizeProvider = (input) => {\n    if (typeof input === \"function\")\n        return input;\n    const promisified = Promise.resolve(input);\n    return () => promisified;\n};\n","const makePagedClientRequest = async (CommandCtor, client, input, ...args) => {\n    return await client.send(new CommandCtor(input), ...args);\n};\nexport function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {\n    return async function* paginateOperation(config, input, ...additionalArguments) {\n        let token = config.startingToken || undefined;\n        let hasNext = true;\n        let page;\n        while (hasNext) {\n            input[inputTokenName] = token;\n            if (pageSizeTokenName) {\n                input[pageSizeTokenName] = input[pageSizeTokenName] ?? config.pageSize;\n            }\n            if (config.client instanceof ClientCtor) {\n                page = await makePagedClientRequest(CommandCtor, config.client, input, ...additionalArguments);\n            }\n            else {\n                throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);\n            }\n            yield page;\n            const prevToken = token;\n            token = get(page, outputTokenName);\n            hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));\n        }\n        return undefined;\n    };\n}\nconst get = (fromObject, path) => {\n    let cursor = fromObject;\n    const pathComponents = path.split(\".\");\n    for (const step of pathComponents) {\n        if (!cursor || typeof cursor !== \"object\") {\n            return undefined;\n        }\n        cursor = cursor[step];\n    }\n    return cursor;\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 { Buffer } from \"buffer\";\nexport const fromArrayBuffer = (input, offset = 0, length = input.byteLength - offset) => {\n    if (!isArrayBuffer(input)) {\n        throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n    }\n    return Buffer.from(input, offset, length);\n};\nexport const fromString = (input, encoding) => {\n    if (typeof input !== \"string\") {\n        throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n    }\n    return encoding ? Buffer.from(input, encoding) : Buffer.from(input);\n};\n","import { fromString } from \"@smithy/util-buffer-from\";\nconst BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nexport const fromBase64 = (input) => {\n    if ((input.length * 3) % 4 !== 0) {\n        throw new TypeError(`Incorrect padding on base64 string.`);\n    }\n    if (!BASE64_REGEX.exec(input)) {\n        throw new TypeError(`Invalid base64 string.`);\n    }\n    const buffer = fromString(input, \"base64\");\n    return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n};\n","import { fromString } from \"@smithy/util-buffer-from\";\nexport const fromUtf8 = (input) => {\n    const buf = fromString(input, \"utf8\");\n    return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\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","import { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nexport 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 fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n","export * from \"./fromUtf8\";\nexport * from \"./toUint8Array\";\nexport * from \"./toUtf8\";\n","import { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nimport { fromUtf8 } from \"@smithy/util-utf8\";\nexport const toBase64 = (_input) => {\n    let input;\n    if (typeof _input === \"string\") {\n        input = fromUtf8(_input);\n    }\n    else {\n        input = _input;\n    }\n    if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n        throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n    }\n    return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n};\n","export * from \"./fromBase64\";\nexport * from \"./toBase64\";\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","import { Readable } from \"stream\";\nexport const getAwsChunkedEncodingStream = (readableStream, options) => {\n    const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;\n    const checksumRequired = base64Encoder !== undefined &&\n        checksumAlgorithmFn !== undefined &&\n        checksumLocationName !== undefined &&\n        streamHasher !== undefined;\n    const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;\n    const awsChunkedEncodingStream = new Readable({ read: () => { } });\n    readableStream.on(\"data\", (data) => {\n        const length = bodyLengthChecker(data) || 0;\n        awsChunkedEncodingStream.push(`${length.toString(16)}\\r\\n`);\n        awsChunkedEncodingStream.push(data);\n        awsChunkedEncodingStream.push(\"\\r\\n\");\n    });\n    readableStream.on(\"end\", async () => {\n        awsChunkedEncodingStream.push(`0\\r\\n`);\n        if (checksumRequired) {\n            const checksum = base64Encoder(await digest);\n            awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\\r\\n`);\n            awsChunkedEncodingStream.push(`\\r\\n`);\n        }\n        awsChunkedEncodingStream.push(null);\n    });\n    return awsChunkedEncodingStream;\n};\n","export const escapeUri = (uri) => encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\nconst hexEncode = (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n","import { escapeUri } from \"./escape-uri\";\nexport const escapeUriPath = (uri) => uri.split(\"/\").map(escapeUri).join(\"/\");\n","export * from \"./escape-uri\";\nexport * from \"./escape-uri-path\";\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 const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n","const getTransformedHeaders = (headers) => {\n    const transformedHeaders = {};\n    for (const name of Object.keys(headers)) {\n        const headerValues = headers[name];\n        transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n    }\n    return transformedHeaders;\n};\nexport { getTransformedHeaders };\n","export const timing = {\n    setTimeout: setTimeout,\n    clearTimeout: clearTimeout,\n};\n","import { timing } from \"./timing\";\nconst DEFER_EVENT_LISTENER_TIME = 1000;\nexport const setConnectionTimeout = (request, reject, timeoutInMs = 0) => {\n    if (!timeoutInMs) {\n        return -1;\n    }\n    const registerTimeout = (offset) => {\n        const timeoutId = timing.setTimeout(() => {\n            request.destroy();\n            reject(Object.assign(new Error(`Socket timed out without establishing a connection within ${timeoutInMs} ms`), {\n                name: \"TimeoutError\",\n            }));\n        }, timeoutInMs - offset);\n        const doWithSocket = (socket) => {\n            if (socket?.connecting) {\n                socket.on(\"connect\", () => {\n                    timing.clearTimeout(timeoutId);\n                });\n            }\n            else {\n                timing.clearTimeout(timeoutId);\n            }\n        };\n        if (request.socket) {\n            doWithSocket(request.socket);\n        }\n        else {\n            request.on(\"socket\", doWithSocket);\n        }\n    };\n    if (timeoutInMs < 2000) {\n        registerTimeout(0);\n        return 0;\n    }\n    return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);\n};\n","import { timing } from \"./timing\";\nconst DEFER_EVENT_LISTENER_TIME = 3000;\nexport const setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME) => {\n    if (keepAlive !== true) {\n        return -1;\n    }\n    const registerListener = () => {\n        if (request.socket) {\n            request.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n        }\n        else {\n            request.on(\"socket\", (socket) => {\n                socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n            });\n        }\n    };\n    if (deferTimeMs === 0) {\n        registerListener();\n        return 0;\n    }\n    return timing.setTimeout(registerListener, deferTimeMs);\n};\n","import { timing } from \"./timing\";\nconst DEFER_EVENT_LISTENER_TIME = 3000;\nexport const setSocketTimeout = (request, reject, timeoutInMs = 0) => {\n    const registerTimeout = (offset) => {\n        request.setTimeout(timeoutInMs - offset, () => {\n            request.destroy();\n            reject(Object.assign(new Error(`Connection timed out after ${timeoutInMs} ms`), { name: \"TimeoutError\" }));\n        });\n    };\n    if (0 < timeoutInMs && timeoutInMs < 6000) {\n        registerTimeout(0);\n        return 0;\n    }\n    return timing.setTimeout(registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);\n};\n","import { Readable } from \"stream\";\nimport { timing } from \"./timing\";\nconst MIN_WAIT_TIME = 1000;\nexport async function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME) {\n    const headers = request.headers ?? {};\n    const expect = headers[\"Expect\"] || headers[\"expect\"];\n    let timeoutId = -1;\n    let hasError = false;\n    if (expect === \"100-continue\") {\n        await Promise.race([\n            new Promise((resolve) => {\n                timeoutId = Number(timing.setTimeout(resolve, Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));\n            }),\n            new Promise((resolve) => {\n                httpRequest.on(\"continue\", () => {\n                    timing.clearTimeout(timeoutId);\n                    resolve();\n                });\n                httpRequest.on(\"error\", () => {\n                    hasError = true;\n                    timing.clearTimeout(timeoutId);\n                    resolve();\n                });\n            }),\n        ]);\n    }\n    if (!hasError) {\n        writeBody(httpRequest, request.body);\n    }\n}\nfunction writeBody(httpRequest, body) {\n    if (body instanceof Readable) {\n        body.pipe(httpRequest);\n        return;\n    }\n    if (body) {\n        if (Buffer.isBuffer(body) || typeof body === \"string\") {\n            httpRequest.end(body);\n            return;\n        }\n        const uint8 = body;\n        if (typeof uint8 === \"object\" &&\n            uint8.buffer &&\n            typeof uint8.byteOffset === \"number\" &&\n            typeof uint8.byteLength === \"number\") {\n            httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));\n            return;\n        }\n        httpRequest.end(Buffer.from(body));\n        return;\n    }\n    httpRequest.end();\n}\n","import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { Agent as hAgent, request as hRequest } from \"http\";\nimport { Agent as hsAgent, request as hsRequest } from \"https\";\nimport { NODEJS_TIMEOUT_ERROR_CODES } from \"./constants\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { setConnectionTimeout } from \"./set-connection-timeout\";\nimport { setSocketKeepAlive } from \"./set-socket-keep-alive\";\nimport { setSocketTimeout } from \"./set-socket-timeout\";\nimport { timing } from \"./timing\";\nimport { writeRequestBody } from \"./write-request-body\";\nexport const DEFAULT_REQUEST_TIMEOUT = 0;\nexport class NodeHttpHandler {\n    static create(instanceOrOptions) {\n        if (typeof instanceOrOptions?.handle === \"function\") {\n            return instanceOrOptions;\n        }\n        return new NodeHttpHandler(instanceOrOptions);\n    }\n    static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {\n        const { sockets, requests, maxSockets } = agent;\n        if (typeof maxSockets !== \"number\" || maxSockets === Infinity) {\n            return socketWarningTimestamp;\n        }\n        const interval = 15000;\n        if (Date.now() - interval < socketWarningTimestamp) {\n            return socketWarningTimestamp;\n        }\n        if (sockets && requests) {\n            for (const origin in sockets) {\n                const socketsInUse = sockets[origin]?.length ?? 0;\n                const requestsEnqueued = requests[origin]?.length ?? 0;\n                if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {\n                    logger?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.\nSee https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html\nor increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`);\n                    return Date.now();\n                }\n            }\n        }\n        return socketWarningTimestamp;\n    }\n    constructor(options) {\n        this.socketWarningTimestamp = 0;\n        this.metadata = { handlerProtocol: \"http/1.1\" };\n        this.configProvider = new Promise((resolve, reject) => {\n            if (typeof options === \"function\") {\n                options()\n                    .then((_options) => {\n                    resolve(this.resolveDefaultConfig(_options));\n                })\n                    .catch(reject);\n            }\n            else {\n                resolve(this.resolveDefaultConfig(options));\n            }\n        });\n    }\n    resolveDefaultConfig(options) {\n        const { requestTimeout, connectionTimeout, socketTimeout, httpAgent, httpsAgent } = options || {};\n        const keepAlive = true;\n        const maxSockets = 50;\n        return {\n            connectionTimeout,\n            requestTimeout: requestTimeout ?? socketTimeout,\n            httpAgent: (() => {\n                if (httpAgent instanceof hAgent || typeof httpAgent?.destroy === \"function\") {\n                    return httpAgent;\n                }\n                return new hAgent({ keepAlive, maxSockets, ...httpAgent });\n            })(),\n            httpsAgent: (() => {\n                if (httpsAgent instanceof hsAgent || typeof httpsAgent?.destroy === \"function\") {\n                    return httpsAgent;\n                }\n                return new hsAgent({ keepAlive, maxSockets, ...httpsAgent });\n            })(),\n            logger: console,\n        };\n    }\n    destroy() {\n        this.config?.httpAgent?.destroy();\n        this.config?.httpsAgent?.destroy();\n    }\n    async handle(request, { abortSignal } = {}) {\n        if (!this.config) {\n            this.config = await this.configProvider;\n        }\n        return new Promise((_resolve, _reject) => {\n            let writeRequestBodyPromise = undefined;\n            const timeouts = [];\n            const resolve = async (arg) => {\n                await writeRequestBodyPromise;\n                timeouts.forEach(timing.clearTimeout);\n                _resolve(arg);\n            };\n            const reject = async (arg) => {\n                await writeRequestBodyPromise;\n                timeouts.forEach(timing.clearTimeout);\n                _reject(arg);\n            };\n            if (!this.config) {\n                throw new Error(\"Node HTTP request handler config is not resolved\");\n            }\n            if (abortSignal?.aborted) {\n                const abortError = new Error(\"Request aborted\");\n                abortError.name = \"AbortError\";\n                reject(abortError);\n                return;\n            }\n            const isSSL = request.protocol === \"https:\";\n            const agent = isSSL ? this.config.httpsAgent : this.config.httpAgent;\n            timeouts.push(timing.setTimeout(() => {\n                this.socketWarningTimestamp = NodeHttpHandler.checkSocketUsage(agent, this.socketWarningTimestamp, this.config.logger);\n            }, this.config.socketAcquisitionWarningTimeout ??\n                (this.config.requestTimeout ?? 2000) + (this.config.connectionTimeout ?? 1000)));\n            const queryString = buildQueryString(request.query || {});\n            let auth = undefined;\n            if (request.username != null || request.password != null) {\n                const username = request.username ?? \"\";\n                const password = request.password ?? \"\";\n                auth = `${username}:${password}`;\n            }\n            let path = request.path;\n            if (queryString) {\n                path += `?${queryString}`;\n            }\n            if (request.fragment) {\n                path += `#${request.fragment}`;\n            }\n            let hostname = request.hostname ?? \"\";\n            if (hostname[0] === \"[\" && hostname.endsWith(\"]\")) {\n                hostname = request.hostname.slice(1, -1);\n            }\n            else {\n                hostname = request.hostname;\n            }\n            const nodeHttpsOptions = {\n                headers: request.headers,\n                host: hostname,\n                method: request.method,\n                path,\n                port: request.port,\n                agent,\n                auth,\n            };\n            const requestFunc = isSSL ? hsRequest : hRequest;\n            const req = requestFunc(nodeHttpsOptions, (res) => {\n                const httpResponse = new HttpResponse({\n                    statusCode: res.statusCode || -1,\n                    reason: res.statusMessage,\n                    headers: getTransformedHeaders(res.headers),\n                    body: res,\n                });\n                resolve({ response: httpResponse });\n            });\n            req.on(\"error\", (err) => {\n                if (NODEJS_TIMEOUT_ERROR_CODES.includes(err.code)) {\n                    reject(Object.assign(err, { name: \"TimeoutError\" }));\n                }\n                else {\n                    reject(err);\n                }\n            });\n            if (abortSignal) {\n                const onAbort = () => {\n                    req.destroy();\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                    req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n                }\n                else {\n                    abortSignal.onabort = onAbort;\n                }\n            }\n            timeouts.push(setConnectionTimeout(req, reject, this.config.connectionTimeout));\n            timeouts.push(setSocketTimeout(req, reject, this.config.requestTimeout));\n            const httpAgent = nodeHttpsOptions.agent;\n            if (typeof httpAgent === \"object\" && \"keepAlive\" in httpAgent) {\n                timeouts.push(setSocketKeepAlive(req, {\n                    keepAlive: httpAgent.keepAlive,\n                    keepAliveMsecs: httpAgent.keepAliveMsecs,\n                }));\n            }\n            writeRequestBodyPromise = writeRequestBody(req, request, this.config.requestTimeout).catch((e) => {\n                timeouts.forEach(timing.clearTimeout);\n                return _reject(e);\n            });\n        });\n    }\n    updateHttpClientConfig(key, value) {\n        this.config = undefined;\n        this.configProvider = this.configProvider.then((config) => {\n            return {\n                ...config,\n                [key]: value,\n            };\n        });\n    }\n    httpHandlerConfigs() {\n        return this.config ?? {};\n    }\n}\n","export class NodeHttp2ConnectionPool {\n    constructor(sessions) {\n        this.sessions = [];\n        this.sessions = sessions ?? [];\n    }\n    poll() {\n        if (this.sessions.length > 0) {\n            return this.sessions.shift();\n        }\n    }\n    offerLast(session) {\n        this.sessions.push(session);\n    }\n    contains(session) {\n        return this.sessions.includes(session);\n    }\n    remove(session) {\n        this.sessions = this.sessions.filter((s) => s !== session);\n    }\n    [Symbol.iterator]() {\n        return this.sessions[Symbol.iterator]();\n    }\n    destroy(connection) {\n        for (const session of this.sessions) {\n            if (session === connection) {\n                if (!session.destroyed) {\n                    session.destroy();\n                }\n            }\n        }\n    }\n}\n","import http2 from \"http2\";\nimport { NodeHttp2ConnectionPool } from \"./node-http2-connection-pool\";\nexport class NodeHttp2ConnectionManager {\n    constructor(config) {\n        this.sessionCache = new Map();\n        this.config = config;\n        if (this.config.maxConcurrency && this.config.maxConcurrency <= 0) {\n            throw new RangeError(\"maxConcurrency must be greater than zero.\");\n        }\n    }\n    lease(requestContext, connectionConfiguration) {\n        const url = this.getUrlString(requestContext);\n        const existingPool = this.sessionCache.get(url);\n        if (existingPool) {\n            const existingSession = existingPool.poll();\n            if (existingSession && !this.config.disableConcurrency) {\n                return existingSession;\n            }\n        }\n        const session = http2.connect(url);\n        if (this.config.maxConcurrency) {\n            session.settings({ maxConcurrentStreams: this.config.maxConcurrency }, (err) => {\n                if (err) {\n                    throw new Error(\"Fail to set maxConcurrentStreams to \" +\n                        this.config.maxConcurrency +\n                        \"when creating new session for \" +\n                        requestContext.destination.toString());\n                }\n            });\n        }\n        session.unref();\n        const destroySessionCb = () => {\n            session.destroy();\n            this.deleteSession(url, session);\n        };\n        session.on(\"goaway\", destroySessionCb);\n        session.on(\"error\", destroySessionCb);\n        session.on(\"frameError\", destroySessionCb);\n        session.on(\"close\", () => this.deleteSession(url, session));\n        if (connectionConfiguration.requestTimeout) {\n            session.setTimeout(connectionConfiguration.requestTimeout, destroySessionCb);\n        }\n        const connectionPool = this.sessionCache.get(url) || new NodeHttp2ConnectionPool();\n        connectionPool.offerLast(session);\n        this.sessionCache.set(url, connectionPool);\n        return session;\n    }\n    deleteSession(authority, session) {\n        const existingConnectionPool = this.sessionCache.get(authority);\n        if (!existingConnectionPool) {\n            return;\n        }\n        if (!existingConnectionPool.contains(session)) {\n            return;\n        }\n        existingConnectionPool.remove(session);\n        this.sessionCache.set(authority, existingConnectionPool);\n    }\n    release(requestContext, session) {\n        const cacheKey = this.getUrlString(requestContext);\n        this.sessionCache.get(cacheKey)?.offerLast(session);\n    }\n    destroy() {\n        for (const [key, connectionPool] of this.sessionCache) {\n            for (const session of connectionPool) {\n                if (!session.destroyed) {\n                    session.destroy();\n                }\n                connectionPool.remove(session);\n            }\n            this.sessionCache.delete(key);\n        }\n    }\n    setMaxConcurrentStreams(maxConcurrentStreams) {\n        if (maxConcurrentStreams && maxConcurrentStreams <= 0) {\n            throw new RangeError(\"maxConcurrentStreams must be greater than zero.\");\n        }\n        this.config.maxConcurrency = maxConcurrentStreams;\n    }\n    setDisableConcurrentStreams(disableConcurrentStreams) {\n        this.config.disableConcurrency = disableConcurrentStreams;\n    }\n    getUrlString(request) {\n        return request.destination.toString();\n    }\n}\n","import { HttpResponse } from \"@smithy/protocol-http\";\nimport { buildQueryString } from \"@smithy/querystring-builder\";\nimport { constants } from \"http2\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { NodeHttp2ConnectionManager } from \"./node-http2-connection-manager\";\nimport { writeRequestBody } from \"./write-request-body\";\nexport class NodeHttp2Handler {\n    static create(instanceOrOptions) {\n        if (typeof instanceOrOptions?.handle === \"function\") {\n            return instanceOrOptions;\n        }\n        return new NodeHttp2Handler(instanceOrOptions);\n    }\n    constructor(options) {\n        this.metadata = { handlerProtocol: \"h2\" };\n        this.connectionManager = new NodeHttp2ConnectionManager({});\n        this.configProvider = new Promise((resolve, reject) => {\n            if (typeof options === \"function\") {\n                options()\n                    .then((opts) => {\n                    resolve(opts || {});\n                })\n                    .catch(reject);\n            }\n            else {\n                resolve(options || {});\n            }\n        });\n    }\n    destroy() {\n        this.connectionManager.destroy();\n    }\n    async handle(request, { abortSignal } = {}) {\n        if (!this.config) {\n            this.config = await this.configProvider;\n            this.connectionManager.setDisableConcurrentStreams(this.config.disableConcurrentStreams || false);\n            if (this.config.maxConcurrentStreams) {\n                this.connectionManager.setMaxConcurrentStreams(this.config.maxConcurrentStreams);\n            }\n        }\n        const { requestTimeout, disableConcurrentStreams } = this.config;\n        return new Promise((_resolve, _reject) => {\n            let fulfilled = false;\n            let writeRequestBodyPromise = undefined;\n            const resolve = async (arg) => {\n                await writeRequestBodyPromise;\n                _resolve(arg);\n            };\n            const reject = async (arg) => {\n                await writeRequestBodyPromise;\n                _reject(arg);\n            };\n            if (abortSignal?.aborted) {\n                fulfilled = true;\n                const abortError = new Error(\"Request aborted\");\n                abortError.name = \"AbortError\";\n                reject(abortError);\n                return;\n            }\n            const { hostname, method, port, protocol, query } = request;\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 authority = `${protocol}//${auth}${hostname}${port ? `:${port}` : \"\"}`;\n            const requestContext = { destination: new URL(authority) };\n            const session = this.connectionManager.lease(requestContext, {\n                requestTimeout: this.config?.sessionTimeout,\n                disableConcurrentStreams: disableConcurrentStreams || false,\n            });\n            const rejectWithDestroy = (err) => {\n                if (disableConcurrentStreams) {\n                    this.destroySession(session);\n                }\n                fulfilled = true;\n                reject(err);\n            };\n            const queryString = buildQueryString(query || {});\n            let path = request.path;\n            if (queryString) {\n                path += `?${queryString}`;\n            }\n            if (request.fragment) {\n                path += `#${request.fragment}`;\n            }\n            const req = session.request({\n                ...request.headers,\n                [constants.HTTP2_HEADER_PATH]: path,\n                [constants.HTTP2_HEADER_METHOD]: method,\n            });\n            session.ref();\n            req.on(\"response\", (headers) => {\n                const httpResponse = new HttpResponse({\n                    statusCode: headers[\":status\"] || -1,\n                    headers: getTransformedHeaders(headers),\n                    body: req,\n                });\n                fulfilled = true;\n                resolve({ response: httpResponse });\n                if (disableConcurrentStreams) {\n                    session.close();\n                    this.connectionManager.deleteSession(authority, session);\n                }\n            });\n            if (requestTimeout) {\n                req.setTimeout(requestTimeout, () => {\n                    req.close();\n                    const timeoutError = new Error(`Stream timed out because of no activity for ${requestTimeout} ms`);\n                    timeoutError.name = \"TimeoutError\";\n                    rejectWithDestroy(timeoutError);\n                });\n            }\n            if (abortSignal) {\n                const onAbort = () => {\n                    req.close();\n                    const abortError = new Error(\"Request aborted\");\n                    abortError.name = \"AbortError\";\n                    rejectWithDestroy(abortError);\n                };\n                if (typeof abortSignal.addEventListener === \"function\") {\n                    const signal = abortSignal;\n                    signal.addEventListener(\"abort\", onAbort, { once: true });\n                    req.once(\"close\", () => signal.removeEventListener(\"abort\", onAbort));\n                }\n                else {\n                    abortSignal.onabort = onAbort;\n                }\n            }\n            req.on(\"frameError\", (type, code, id) => {\n                rejectWithDestroy(new Error(`Frame type id ${type} in stream id ${id} has failed with code ${code}.`));\n            });\n            req.on(\"error\", rejectWithDestroy);\n            req.on(\"aborted\", () => {\n                rejectWithDestroy(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${req.rstCode}.`));\n            });\n            req.on(\"close\", () => {\n                session.unref();\n                if (disableConcurrentStreams) {\n                    session.destroy();\n                }\n                if (!fulfilled) {\n                    rejectWithDestroy(new Error(\"Unexpected error: http2 request did not get a response\"));\n                }\n            });\n            writeRequestBodyPromise = writeRequestBody(req, request, requestTimeout);\n        });\n    }\n    updateHttpClientConfig(key, value) {\n        this.config = undefined;\n        this.configProvider = this.configProvider.then((config) => {\n            return {\n                ...config,\n                [key]: value,\n            };\n        });\n    }\n    httpHandlerConfigs() {\n        return this.config ?? {};\n    }\n    destroySession(session) {\n        if (!session.destroyed) {\n            session.destroy();\n        }\n    }\n}\n","import { Writable } from \"stream\";\nexport class Collector extends Writable {\n    constructor() {\n        super(...arguments);\n        this.bufferedBytes = [];\n    }\n    _write(chunk, encoding, callback) {\n        this.bufferedBytes.push(chunk);\n        callback();\n    }\n}\n","import { Collector } from \"./collector\";\nexport const streamCollector = (stream) => {\n    if (isReadableStreamInstance(stream)) {\n        return collectReadableStream(stream);\n    }\n    return new Promise((resolve, reject) => {\n        const collector = new Collector();\n        stream.pipe(collector);\n        stream.on(\"error\", (err) => {\n            collector.end();\n            reject(err);\n        });\n        collector.on(\"error\", reject);\n        collector.on(\"finish\", function () {\n            const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n            resolve(bytes);\n        });\n    });\n};\nconst isReadableStreamInstance = (stream) => typeof ReadableStream === \"function\" && stream instanceof ReadableStream;\nasync function collectReadableStream(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}\n","export * from \"./node-http-handler\";\nexport * from \"./node-http2-handler\";\nexport * from \"./stream-collector\";\n","export function createRequest(url, requestOptions) {\n    return new Request(url, requestOptions);\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 { createRequest } from \"./create-request\";\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 createRequest(\"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 (this.config?.cache) {\n            requestOptions.cache = this.config.cache;\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        if (typeof this.config.requestInit === \"function\") {\n            Object.assign(requestOptions, this.config.requestInit(request));\n        }\n        let removeSignalEventListener = () => { };\n        const fetchRequest = createRequest(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","export const streamCollector = async (stream) => {\n    if ((typeof Blob === \"function\" && stream instanceof Blob) || stream.constructor?.name === \"Blob\") {\n        return new Uint8Array(await stream.arrayBuffer());\n    }\n    return collectStream(stream);\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}\n","export * from \"./fetch-http-handler\";\nexport * from \"./stream-collector\";\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","export const isReadableStream = (stream) => typeof ReadableStream === \"function\" &&\n    (stream?.constructor?.name === ReadableStream.name || stream instanceof ReadableStream);\nexport const isBlob = (blob) => {\n    return typeof Blob === \"function\" && (blob?.constructor?.name === Blob.name || blob instanceof Blob);\n};\n","import { streamCollector } from \"@smithy/fetch-http-handler\";\nimport { toBase64 } from \"@smithy/util-base64\";\nimport { toHex } from \"@smithy/util-hex-encoding\";\nimport { toUtf8 } from \"@smithy/util-utf8\";\nimport { isReadableStream } from \"./stream-type-check\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n    if (!isBlobInstance(stream) && !isReadableStream(stream)) {\n        const name = stream?.__proto__?.constructor?.name || stream;\n        throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);\n    }\n    let transformed = false;\n    const transformToByteArray = async () => {\n        if (transformed) {\n            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n        }\n        transformed = true;\n        return await streamCollector(stream);\n    };\n    const blobToWebStream = (blob) => {\n        if (typeof blob.stream !== \"function\") {\n            throw new Error(\"Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\\n\" +\n                \"If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body\");\n        }\n        return blob.stream();\n    };\n    return Object.assign(stream, {\n        transformToByteArray: transformToByteArray,\n        transformToString: async (encoding) => {\n            const buf = await transformToByteArray();\n            if (encoding === \"base64\") {\n                return toBase64(buf);\n            }\n            else if (encoding === \"hex\") {\n                return toHex(buf);\n            }\n            else if (encoding === undefined || encoding === \"utf8\" || encoding === \"utf-8\") {\n                return toUtf8(buf);\n            }\n            else if (typeof TextDecoder === \"function\") {\n                return new TextDecoder(encoding).decode(buf);\n            }\n            else {\n                throw new Error(\"TextDecoder is not available, please make sure polyfill is provided.\");\n            }\n        },\n        transformToWebStream: () => {\n            if (transformed) {\n                throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n            }\n            transformed = true;\n            if (isBlobInstance(stream)) {\n                return blobToWebStream(stream);\n            }\n            else if (isReadableStream(stream)) {\n                return stream;\n            }\n            else {\n                throw new Error(`Cannot transform payload to web stream, got ${stream}`);\n            }\n        },\n    });\n};\nconst isBlobInstance = (stream) => typeof Blob === \"function\" && stream instanceof Blob;\n","import { streamCollector } from \"@smithy/node-http-handler\";\nimport { fromArrayBuffer } from \"@smithy/util-buffer-from\";\nimport { Readable } from \"stream\";\nimport { sdkStreamMixin as sdkStreamMixinReadableStream } from \"./sdk-stream-mixin.browser\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n    if (!(stream instanceof Readable)) {\n        try {\n            return sdkStreamMixinReadableStream(stream);\n        }\n        catch (e) {\n            const name = stream?.__proto__?.constructor?.name || stream;\n            throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);\n        }\n    }\n    let transformed = false;\n    const transformToByteArray = async () => {\n        if (transformed) {\n            throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n        }\n        transformed = true;\n        return await streamCollector(stream);\n    };\n    return Object.assign(stream, {\n        transformToByteArray,\n        transformToString: async (encoding) => {\n            const buf = await transformToByteArray();\n            if (encoding === undefined || Buffer.isEncoding(encoding)) {\n                return fromArrayBuffer(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);\n            }\n            else {\n                const decoder = new TextDecoder(encoding);\n                return decoder.decode(buf);\n            }\n        },\n        transformToWebStream: () => {\n            if (transformed) {\n                throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n            }\n            if (stream.readableFlowing !== null) {\n                throw new Error(\"The stream has been consumed by other callbacks.\");\n            }\n            if (typeof Readable.toWeb !== \"function\") {\n                throw new Error(\"Readable.toWeb() is not supported. Please make sure you are using Node.js >= 17.0.0, or polyfill is available.\");\n            }\n            transformed = true;\n            return Readable.toWeb(stream);\n        },\n    });\n};\n","export async function splitStream(stream) {\n    if (typeof stream.stream === \"function\") {\n        stream = stream.stream();\n    }\n    const readableStream = stream;\n    return readableStream.tee();\n}\n","import { PassThrough } from \"stream\";\nimport { splitStream as splitWebStream } from \"./splitStream.browser\";\nimport { isBlob, isReadableStream } from \"./stream-type-check\";\nexport async function splitStream(stream) {\n    if (isReadableStream(stream) || isBlob(stream)) {\n        return splitWebStream(stream);\n    }\n    const stream1 = new PassThrough();\n    const stream2 = new PassThrough();\n    stream.pipe(stream1);\n    stream.pipe(stream2);\n    return [stream1, stream2];\n}\n","export async function headStream(stream, bytes) {\n    let byteLengthCounter = 0;\n    const chunks = [];\n    const reader = stream.getReader();\n    let isDone = false;\n    while (!isDone) {\n        const { done, value } = await reader.read();\n        if (value) {\n            chunks.push(value);\n            byteLengthCounter += value?.byteLength ?? 0;\n        }\n        if (byteLengthCounter >= bytes) {\n            break;\n        }\n        isDone = done;\n    }\n    reader.releaseLock();\n    const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));\n    let offset = 0;\n    for (const chunk of chunks) {\n        if (chunk.byteLength > collected.byteLength - offset) {\n            collected.set(chunk.subarray(0, collected.byteLength - offset), offset);\n            break;\n        }\n        else {\n            collected.set(chunk, offset);\n        }\n        offset += chunk.length;\n    }\n    return collected;\n}\n","import { Writable } from \"stream\";\nimport { headStream as headWebStream } from \"./headStream.browser\";\nimport { isReadableStream } from \"./stream-type-check\";\nexport const headStream = (stream, bytes) => {\n    if (isReadableStream(stream)) {\n        return headWebStream(stream, bytes);\n    }\n    return new Promise((resolve, reject) => {\n        const collector = new Collector();\n        collector.limit = bytes;\n        stream.pipe(collector);\n        stream.on(\"error\", (err) => {\n            collector.end();\n            reject(err);\n        });\n        collector.on(\"error\", reject);\n        collector.on(\"finish\", function () {\n            const bytes = new Uint8Array(Buffer.concat(this.buffers));\n            resolve(bytes);\n        });\n    });\n};\nclass Collector extends Writable {\n    constructor() {\n        super(...arguments);\n        this.buffers = [];\n        this.limit = Infinity;\n        this.bytesBuffered = 0;\n    }\n    _write(chunk, encoding, callback) {\n        this.buffers.push(chunk);\n        this.bytesBuffered += chunk.byteLength ?? 0;\n        if (this.bytesBuffered >= this.limit) {\n            const excess = this.bytesBuffered - this.limit;\n            const tailBuffer = this.buffers[this.buffers.length - 1];\n            this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);\n            this.emit(\"finish\");\n        }\n        callback();\n    }\n}\n","import { toBase64 } from \"@smithy/util-base64\";\nimport { Duplex } from \"stream\";\nexport class ChecksumStream extends Duplex {\n    constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder, }) {\n        super();\n        if (typeof source.pipe === \"function\") {\n            this.source = source;\n        }\n        else {\n            throw new Error(`@smithy/util-stream: unsupported source type ${source?.constructor?.name ?? source} in ChecksumStream.`);\n        }\n        this.base64Encoder = base64Encoder ?? toBase64;\n        this.expectedChecksum = expectedChecksum;\n        this.checksum = checksum;\n        this.checksumSourceLocation = checksumSourceLocation;\n        this.source.pipe(this);\n    }\n    _read(size) { }\n    _write(chunk, encoding, callback) {\n        try {\n            this.checksum.update(chunk);\n            this.push(chunk);\n        }\n        catch (e) {\n            return callback(e);\n        }\n        return callback();\n    }\n    async _final(callback) {\n        try {\n            const digest = await this.checksum.digest();\n            const received = this.base64Encoder(digest);\n            if (this.expectedChecksum !== received) {\n                return callback(new Error(`Checksum mismatch: expected \"${this.expectedChecksum}\" but received \"${received}\"` +\n                    ` in response header \"${this.checksumSourceLocation}\".`));\n            }\n        }\n        catch (e) {\n            return callback(e);\n        }\n        this.push(null);\n        return callback();\n    }\n}\n","const ReadableStreamRef = typeof ReadableStream === \"function\" ? ReadableStream : function () { };\nexport class ChecksumStream extends ReadableStreamRef {\n}\n","import { toBase64 } from \"@smithy/util-base64\";\nimport { isReadableStream } from \"../stream-type-check\";\nimport { ChecksumStream } from \"./ChecksumStream.browser\";\nexport const createChecksumStream = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder, }) => {\n    if (!isReadableStream(source)) {\n        throw new Error(`@smithy/util-stream: unsupported source type ${source?.constructor?.name ?? source} in ChecksumStream.`);\n    }\n    const encoder = base64Encoder ?? toBase64;\n    if (typeof TransformStream !== \"function\") {\n        throw new Error(\"@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.\");\n    }\n    const transform = new TransformStream({\n        start() { },\n        async transform(chunk, controller) {\n            checksum.update(chunk);\n            controller.enqueue(chunk);\n        },\n        async flush(controller) {\n            const digest = await checksum.digest();\n            const received = encoder(digest);\n            if (expectedChecksum !== received) {\n                const error = new Error(`Checksum mismatch: expected \"${expectedChecksum}\" but received \"${received}\"` +\n                    ` in response header \"${checksumSourceLocation}\".`);\n                controller.error(error);\n            }\n            else {\n                controller.terminate();\n            }\n        },\n    });\n    source.pipeThrough(transform);\n    const readable = transform.readable;\n    Object.setPrototypeOf(readable, ChecksumStream.prototype);\n    return readable;\n};\n","import { isReadableStream } from \"../stream-type-check\";\nimport { ChecksumStream } from \"./ChecksumStream\";\nimport { createChecksumStream as createChecksumStreamWeb } from \"./createChecksumStream.browser\";\nexport function createChecksumStream(init) {\n    if (typeof ReadableStream === \"function\" && isReadableStream(init.source)) {\n        return createChecksumStreamWeb(init);\n    }\n    return new ChecksumStream(init);\n}\n","export * from \"./blob/Uint8ArrayBlobAdapter\";\nexport * from \"./getAwsChunkedEncodingStream\";\nexport * from \"./sdk-stream-mixin\";\nexport * from \"./splitStream\";\nexport * from \"./headStream\";\nexport * from \"./stream-type-check\";\nexport * from \"./checksum/createChecksumStream\";\nexport * from \"./checksum/ChecksumStream\";\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","export function extendedEncodeURIComponent(str) {\n    return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n        return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n    });\n}\n","import { extendedEncodeURIComponent } from \"./extended-encode-uri-component\";\nexport const resolvedPath = (resolvedPath, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {\n    if (input != null && input[memberName] !== undefined) {\n        const labelValue = labelValueProvider();\n        if (labelValue.length <= 0) {\n            throw new Error(\"Empty value provided for input HTTP label: \" + memberName + \".\");\n        }\n        resolvedPath = resolvedPath.replace(uriLabel, isGreedyLabel\n            ? labelValue\n                .split(\"/\")\n                .map((segment) => extendedEncodeURIComponent(segment))\n                .join(\"/\")\n            : extendedEncodeURIComponent(labelValue));\n    }\n    else {\n        throw new Error(\"No value provided for input HTTP label: \" + memberName + \".\");\n    }\n    return resolvedPath;\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { resolvedPath } from \"./resolve-path\";\nexport function requestBuilder(input, context) {\n    return new RequestBuilder(input, context);\n}\nexport class RequestBuilder {\n    constructor(input, context) {\n        this.input = input;\n        this.context = context;\n        this.query = {};\n        this.method = \"\";\n        this.headers = {};\n        this.path = \"\";\n        this.body = null;\n        this.hostname = \"\";\n        this.resolvePathStack = [];\n    }\n    async build() {\n        const { hostname, protocol = \"https\", port, path: basePath } = await this.context.endpoint();\n        this.path = basePath;\n        for (const resolvePath of this.resolvePathStack) {\n            resolvePath(this.path);\n        }\n        return new HttpRequest({\n            protocol,\n            hostname: this.hostname || hostname,\n            port,\n            method: this.method,\n            path: this.path,\n            query: this.query,\n            body: this.body,\n            headers: this.headers,\n        });\n    }\n    hn(hostname) {\n        this.hostname = hostname;\n        return this;\n    }\n    bp(uriLabel) {\n        this.resolvePathStack.push((basePath) => {\n            this.path = `${basePath?.endsWith(\"/\") ? basePath.slice(0, -1) : basePath || \"\"}` + uriLabel;\n        });\n        return this;\n    }\n    p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {\n        this.resolvePathStack.push((path) => {\n            this.path = resolvedPath(path, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);\n        });\n        return this;\n    }\n    h(headers) {\n        this.headers = headers;\n        return this;\n    }\n    q(query) {\n        this.query = query;\n        return this;\n    }\n    b(body) {\n        this.body = body;\n        return this;\n    }\n    m(method) {\n        this.method = method;\n        return this;\n    }\n}\n","export * from \"./collect-stream-body\";\nexport * from \"./extended-encode-uri-component\";\nexport * from \"./requestBuilder\";\nexport * from \"./resolve-path\";\n","export { requestBuilder } from \"@smithy/core/protocols\";\n","export function setFeature(context, feature, value) {\n    if (!context.__smithy_context) {\n        context.__smithy_context = {\n            features: {},\n        };\n    }\n    else if (!context.__smithy_context.features) {\n        context.__smithy_context.features = {};\n    }\n    context.__smithy_context.features[feature] = value;\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","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { HttpApiKeyAuthLocation } from \"@smithy/types\";\nexport class HttpApiKeyAuthSigner {\n    async sign(httpRequest, identity, signingProperties) {\n        if (!signingProperties) {\n            throw new Error(\"request could not be signed with `apiKey` since the `name` and `in` signer properties are missing\");\n        }\n        if (!signingProperties.name) {\n            throw new Error(\"request could not be signed with `apiKey` since the `name` signer property is missing\");\n        }\n        if (!signingProperties.in) {\n            throw new Error(\"request could not be signed with `apiKey` since the `in` signer property is missing\");\n        }\n        if (!identity.apiKey) {\n            throw new Error(\"request could not be signed with `apiKey` since the `apiKey` is not defined\");\n        }\n        const clonedRequest = HttpRequest.clone(httpRequest);\n        if (signingProperties.in === HttpApiKeyAuthLocation.QUERY) {\n            clonedRequest.query[signingProperties.name] = identity.apiKey;\n        }\n        else if (signingProperties.in === HttpApiKeyAuthLocation.HEADER) {\n            clonedRequest.headers[signingProperties.name] = signingProperties.scheme\n                ? `${signingProperties.scheme} ${identity.apiKey}`\n                : identity.apiKey;\n        }\n        else {\n            throw new Error(\"request can only be signed with `apiKey` locations `query` or `header`, \" +\n                \"but found: `\" +\n                signingProperties.in +\n                \"`\");\n        }\n        return clonedRequest;\n    }\n}\n","import { HttpRequest } from \"@smithy/protocol-http\";\nexport class HttpBearerAuthSigner {\n    async sign(httpRequest, identity, signingProperties) {\n        const clonedRequest = HttpRequest.clone(httpRequest);\n        if (!identity.token) {\n            throw new Error(\"request could not be signed with `token` since the `token` is not defined\");\n        }\n        clonedRequest.headers[\"Authorization\"] = `Bearer ${identity.token}`;\n        return clonedRequest;\n    }\n}\n","export class NoAuthSigner {\n    async sign(httpRequest, identity, signingProperties) {\n        return httpRequest;\n    }\n}\n","export * from \"./httpApiKeyAuth\";\nexport * from \"./httpBearerAuth\";\nexport * from \"./noAuth\";\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 * from \"./DefaultIdentityProviderConfig\";\nexport * from \"./httpAuthSchemes\";\nexport * from \"./memoizeIdentityProvider\";\n","export * from \"./getSmithyContext\";\nexport * from \"./middleware-http-auth-scheme\";\nexport * from \"./middleware-http-signing\";\nexport * from \"./normalizeProvider\";\nexport { createPaginator } from \"./pagination/createPaginator\";\nexport * from \"./protocols/requestBuilder\";\nexport * from \"./setFeature\";\nexport * from \"./util-identity-and-auth\";\n","import { normalizeProvider } from \"@smithy/core\";\nexport const DEFAULT_UA_APP_ID = undefined;\nfunction isValidUserAgentAppId(appId) {\n    if (appId === undefined) {\n        return true;\n    }\n    return typeof appId === \"string\" && appId.length <= 50;\n}\nexport function resolveUserAgentConfig(input) {\n    const normalizedAppIdProvider = normalizeProvider(input.userAgentAppId ?? DEFAULT_UA_APP_ID);\n    return {\n        ...input,\n        customUserAgent: typeof input.customUserAgent === \"string\" ? [[input.customUserAgent]] : input.customUserAgent,\n        userAgentAppId: async () => {\n            const appId = await normalizedAppIdProvider();\n            if (!isValidUserAgentAppId(appId)) {\n                const logger = input.logger?.constructor?.name === \"NoOpLogger\" || !input.logger ? console : input.logger;\n                if (typeof appId !== \"string\") {\n                    logger?.warn(\"userAgentAppId must be a string or undefined.\");\n                }\n                else if (appId.length > 50) {\n                    logger?.warn(\"The provided userAgentAppId exceeds the maximum length of 50 characters.\");\n                }\n            }\n            return appId;\n        },\n    };\n}\n","export class EndpointCache {\n    constructor({ size, params }) {\n        this.data = new Map();\n        this.parameters = [];\n        this.capacity = size ?? 50;\n        if (params) {\n            this.parameters = params;\n        }\n    }\n    get(endpointParams, resolver) {\n        const key = this.hash(endpointParams);\n        if (key === false) {\n            return resolver();\n        }\n        if (!this.data.has(key)) {\n            if (this.data.size > this.capacity + 10) {\n                const keys = this.data.keys();\n                let i = 0;\n                while (true) {\n                    const { value, done } = keys.next();\n                    this.data.delete(value);\n                    if (done || ++i > 10) {\n                        break;\n                    }\n                }\n            }\n            this.data.set(key, resolver());\n        }\n        return this.data.get(key);\n    }\n    size() {\n        return this.data.size;\n    }\n    hash(endpointParams) {\n        let buffer = \"\";\n        const { parameters } = this;\n        if (parameters.length === 0) {\n            return false;\n        }\n        for (const param of parameters) {\n            const val = String(endpointParams[param] ?? \"\");\n            if (val.includes(\"|;\")) {\n                return false;\n            }\n            buffer += val + \"|;\";\n        }\n        return buffer;\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 * from \"./debugId\";\nexport * from \"./toDebugString\";\n","export class EndpointError extends Error {\n    constructor(message) {\n        super(message);\n        this.name = \"EndpointError\";\n    }\n}\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export * from \"./EndpointError\";\nexport * from \"./EndpointFunctions\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\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","export * from \"./booleanEquals\";\nexport * from \"./getAttr\";\nexport * from \"./isSet\";\nexport * from \"./isValidHostLabel\";\nexport * from \"./not\";\nexport * from \"./parseURL\";\nexport * from \"./stringEquals\";\nexport * from \"./substring\";\nexport * from \"./uriEncode\";\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","export * from \"./customEndpointFunctions\";\nexport * from \"./evaluateRules\";\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    options.logger?.debug?.(`${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);\n    return endpoint;\n};\n","export * from \"./cache/EndpointCache\";\nexport * from \"./lib/isIpAddress\";\nexport * from \"./lib/isValidHostLabel\";\nexport * from \"./utils/customEndpointFunctions\";\nexport * from \"./resolveEndpoint\";\nexport * from \"./types\";\n","export { isIpAddress } from \"@smithy/util-endpoints\";\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","{\n    \"partitions\": [{\n            \"id\": \"aws\",\n            \"outputs\": {\n                \"dnsSuffix\": \"amazonaws.com\",\n                \"dualStackDnsSuffix\": \"api.aws\",\n                \"implicitGlobalRegion\": \"us-east-1\",\n                \"name\": \"aws\",\n                \"supportsDualStack\": true,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^(us|eu|ap|sa|ca|me|af|il|mx)\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {\n                \"af-south-1\": {\n                    \"description\": \"Africa (Cape Town)\"\n                },\n                \"ap-east-1\": {\n                    \"description\": \"Asia Pacific (Hong Kong)\"\n                },\n                \"ap-northeast-1\": {\n                    \"description\": \"Asia Pacific (Tokyo)\"\n                },\n                \"ap-northeast-2\": {\n                    \"description\": \"Asia Pacific (Seoul)\"\n                },\n                \"ap-northeast-3\": {\n                    \"description\": \"Asia Pacific (Osaka)\"\n                },\n                \"ap-south-1\": {\n                    \"description\": \"Asia Pacific (Mumbai)\"\n                },\n                \"ap-south-2\": {\n                    \"description\": \"Asia Pacific (Hyderabad)\"\n                },\n                \"ap-southeast-1\": {\n                    \"description\": \"Asia Pacific (Singapore)\"\n                },\n                \"ap-southeast-2\": {\n                    \"description\": \"Asia Pacific (Sydney)\"\n                },\n                \"ap-southeast-3\": {\n                    \"description\": \"Asia Pacific (Jakarta)\"\n                },\n                \"ap-southeast-4\": {\n                    \"description\": \"Asia Pacific (Melbourne)\"\n                },\n                \"ap-southeast-5\": {\n                    \"description\": \"Asia Pacific (Malaysia)\"\n                },\n                \"aws-global\": {\n                    \"description\": \"AWS Standard global region\"\n                },\n                \"ca-central-1\": {\n                    \"description\": \"Canada (Central)\"\n                },\n                \"ca-west-1\": {\n                    \"description\": \"Canada West (Calgary)\"\n                },\n                \"eu-central-1\": {\n                    \"description\": \"Europe (Frankfurt)\"\n                },\n                \"eu-central-2\": {\n                    \"description\": \"Europe (Zurich)\"\n                },\n                \"eu-north-1\": {\n                    \"description\": \"Europe (Stockholm)\"\n                },\n                \"eu-south-1\": {\n                    \"description\": \"Europe (Milan)\"\n                },\n                \"eu-south-2\": {\n                    \"description\": \"Europe (Spain)\"\n                },\n                \"eu-west-1\": {\n                    \"description\": \"Europe (Ireland)\"\n                },\n                \"eu-west-2\": {\n                    \"description\": \"Europe (London)\"\n                },\n                \"eu-west-3\": {\n                    \"description\": \"Europe (Paris)\"\n                },\n                \"il-central-1\": {\n                    \"description\": \"Israel (Tel Aviv)\"\n                },\n                \"me-central-1\": {\n                    \"description\": \"Middle East (UAE)\"\n                },\n                \"me-south-1\": {\n                    \"description\": \"Middle East (Bahrain)\"\n                },\n                \"sa-east-1\": {\n                    \"description\": \"South America (Sao Paulo)\"\n                },\n                \"us-east-1\": {\n                    \"description\": \"US East (N. Virginia)\"\n                },\n                \"us-east-2\": {\n                    \"description\": \"US East (Ohio)\"\n                },\n                \"us-west-1\": {\n                    \"description\": \"US West (N. California)\"\n                },\n                \"us-west-2\": {\n                    \"description\": \"US West (Oregon)\"\n                }\n            }\n        }, {\n            \"id\": \"aws-cn\",\n            \"outputs\": {\n                \"dnsSuffix\": \"amazonaws.com.cn\",\n                \"dualStackDnsSuffix\": \"api.amazonwebservices.com.cn\",\n                \"implicitGlobalRegion\": \"cn-northwest-1\",\n                \"name\": \"aws-cn\",\n                \"supportsDualStack\": true,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {\n                \"aws-cn-global\": {\n                    \"description\": \"AWS China global region\"\n                },\n                \"cn-north-1\": {\n                    \"description\": \"China (Beijing)\"\n                },\n                \"cn-northwest-1\": {\n                    \"description\": \"China (Ningxia)\"\n                }\n            }\n        }, {\n            \"id\": \"aws-us-gov\",\n            \"outputs\": {\n                \"dnsSuffix\": \"amazonaws.com\",\n                \"dualStackDnsSuffix\": \"api.aws\",\n                \"implicitGlobalRegion\": \"us-gov-west-1\",\n                \"name\": \"aws-us-gov\",\n                \"supportsDualStack\": true,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {\n                \"aws-us-gov-global\": {\n                    \"description\": \"AWS GovCloud (US) global region\"\n                },\n                \"us-gov-east-1\": {\n                    \"description\": \"AWS GovCloud (US-East)\"\n                },\n                \"us-gov-west-1\": {\n                    \"description\": \"AWS GovCloud (US-West)\"\n                }\n            }\n        }, {\n            \"id\": \"aws-iso\",\n            \"outputs\": {\n                \"dnsSuffix\": \"c2s.ic.gov\",\n                \"dualStackDnsSuffix\": \"c2s.ic.gov\",\n                \"implicitGlobalRegion\": \"us-iso-east-1\",\n                \"name\": \"aws-iso\",\n                \"supportsDualStack\": false,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {\n                \"aws-iso-global\": {\n                    \"description\": \"AWS ISO (US) global region\"\n                },\n                \"us-iso-east-1\": {\n                    \"description\": \"US ISO East\"\n                },\n                \"us-iso-west-1\": {\n                    \"description\": \"US ISO WEST\"\n                }\n            }\n        }, {\n            \"id\": \"aws-iso-b\",\n            \"outputs\": {\n                \"dnsSuffix\": \"sc2s.sgov.gov\",\n                \"dualStackDnsSuffix\": \"sc2s.sgov.gov\",\n                \"implicitGlobalRegion\": \"us-isob-east-1\",\n                \"name\": \"aws-iso-b\",\n                \"supportsDualStack\": false,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {\n                \"aws-iso-b-global\": {\n                    \"description\": \"AWS ISOB (US) global region\"\n                },\n                \"us-isob-east-1\": {\n                    \"description\": \"US ISOB East (Ohio)\"\n                }\n            }\n        }, {\n            \"id\": \"aws-iso-e\",\n            \"outputs\": {\n                \"dnsSuffix\": \"cloud.adc-e.uk\",\n                \"dualStackDnsSuffix\": \"cloud.adc-e.uk\",\n                \"implicitGlobalRegion\": \"eu-isoe-west-1\",\n                \"name\": \"aws-iso-e\",\n                \"supportsDualStack\": false,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^eu\\\\-isoe\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {\n                \"eu-isoe-west-1\": {\n                    \"description\": \"EU ISOE West\"\n                }\n            }\n        }, {\n            \"id\": \"aws-iso-f\",\n            \"outputs\": {\n                \"dnsSuffix\": \"csp.hci.ic.gov\",\n                \"dualStackDnsSuffix\": \"csp.hci.ic.gov\",\n                \"implicitGlobalRegion\": \"us-isof-south-1\",\n                \"name\": \"aws-iso-f\",\n                \"supportsDualStack\": false,\n                \"supportsFIPS\": true\n            },\n            \"regionRegex\": \"^us\\\\-isof\\\\-\\\\w+\\\\-\\\\d+$\",\n            \"regions\": {}\n        }],\n    \"version\": \"1.1\"\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 { resolveEndpoint } from \"@smithy/util-endpoints\";\n","export { EndpointError } from \"@smithy/util-endpoints\";\n","export {};\n","export {};\n","export {};\n","export {};\n","export {};\n","export * from \"./EndpointError\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\n","export * from \"./aws\";\nexport * from \"./lib/aws/partition\";\nexport * from \"./lib/isIpAddress\";\nexport * from \"./resolveEndpoint\";\nexport * from \"./types\";\n","export const state = {\n    warningEmitted: false,\n};\nexport const emitWarningIfUnsupportedVersion = (version) => {\n    if (version && !state.warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 18) {\n        state.warningEmitted = true;\n        process.emitWarning(`NodeDeprecationWarning: The AWS SDK for JavaScript (v3) will\nno longer support Node.js 16.x on January 6, 2025.\n\nTo continue receiving updates to AWS services, bug fixes, and security\nupdates please upgrade to a supported Node.js LTS version.\n\nMore information can be found at: https://a.co/74kJMmI`);\n    }\n};\n","export function setCredentialFeature(credentials, feature, value) {\n    if (!credentials.$source) {\n        credentials.$source = {};\n    }\n    credentials.$source[feature] = value;\n    return credentials;\n}\n","export function setFeature(context, feature, value) {\n    if (!context.__aws_sdk_context) {\n        context.__aws_sdk_context = {\n            features: {},\n        };\n    }\n    else if (!context.__aws_sdk_context.features) {\n        context.__aws_sdk_context.features = {};\n    }\n    context.__aws_sdk_context.features[feature] = value;\n}\n","export * from \"./emitWarningIfUnsupportedVersion\";\nexport * from \"./setCredentialFeature\";\nexport * from \"./setFeature\";\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","export * from \"./getDateHeader\";\nexport * from \"./getSkewCorrectedDate\";\nexport * from \"./getUpdatedSystemClockOffset\";\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 class ProviderError extends Error {\n    constructor(message, options = true) {\n        let logger;\n        let tryNextLink = true;\n        if (typeof options === \"boolean\") {\n            logger = undefined;\n            tryNextLink = options;\n        }\n        else if (options != null && typeof options === \"object\") {\n            logger = options.logger;\n            tryNextLink = options.tryNextLink ?? true;\n        }\n        super(message);\n        this.name = \"ProviderError\";\n        this.tryNextLink = tryNextLink;\n        Object.setPrototypeOf(this, ProviderError.prototype);\n        logger?.debug?.(`@smithy/property-provider ${tryNextLink ? \"->\" : \"(!)\"} ${message}`);\n    }\n    static from(error, options = true) {\n        return Object.assign(new this(error.message, options), error);\n    }\n}\n","import { ProviderError } from \"./ProviderError\";\nexport class CredentialsProviderError extends ProviderError {\n    constructor(message, options = true) {\n        super(message, options);\n        this.name = \"CredentialsProviderError\";\n        Object.setPrototypeOf(this, CredentialsProviderError.prototype);\n    }\n}\n","import { ProviderError } from \"./ProviderError\";\nexport class TokenProviderError extends ProviderError {\n    constructor(message, options = true) {\n        super(message, options);\n        this.name = \"TokenProviderError\";\n        Object.setPrototypeOf(this, TokenProviderError.prototype);\n    }\n}\n","import { ProviderError } from \"./ProviderError\";\nexport const chain = (...providers) => async () => {\n    if (providers.length === 0) {\n        throw new ProviderError(\"No providers in chain\");\n    }\n    let lastProviderError;\n    for (const provider of providers) {\n        try {\n            const credentials = await provider();\n            return credentials;\n        }\n        catch (err) {\n            lastProviderError = err;\n            if (err?.tryNextLink) {\n                continue;\n            }\n            throw err;\n        }\n    }\n    throw lastProviderError;\n};\n","export const fromStatic = (staticValue) => () => Promise.resolve(staticValue);\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 * from \"./CredentialsProviderError\";\nexport * from \"./ProviderError\";\nexport * from \"./TokenProviderError\";\nexport * from \"./chain\";\nexport * from \"./fromStatic\";\nexport * from \"./memoize\";\n","import { normalizeProvider } from \"@smithy/core\";\nimport { ProviderError } from \"@smithy/property-provider\";\nexport const resolveAwsSdkSigV4AConfig = (config) => {\n    config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);\n    return config;\n};\nexport const NODE_SIGV4A_CONFIG_OPTIONS = {\n    environmentVariableSelector(env) {\n        if (env.AWS_SIGV4A_SIGNING_REGION_SET) {\n            return env.AWS_SIGV4A_SIGNING_REGION_SET.split(\",\").map((_) => _.trim());\n        }\n        throw new ProviderError(\"AWS_SIGV4A_SIGNING_REGION_SET not set in env.\", {\n            tryNextLink: true,\n        });\n    },\n    configFileSelector(profile) {\n        if (profile.sigv4a_signing_region_set) {\n            return (profile.sigv4a_signing_region_set ?? \"\").split(\",\").map((_) => _.trim());\n        }\n        throw new ProviderError(\"sigv4a_signing_region_set not set in profile.\", {\n            tryNextLink: true,\n        });\n    },\n    default: undefined,\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)) {\n        if (key.toLowerCase() === SIGNATURE_HEADER) {\n            continue;\n        }\n        const encodedKey = escapeUri(key);\n        keys.push(encodedKey);\n        const value = query[key];\n        if (typeof value === \"string\") {\n            serialized[encodedKey] = `${encodedKey}=${escapeUri(value)}`;\n        }\n        else if (Array.isArray(value)) {\n            serialized[encodedKey] = value\n                .slice(0)\n                .reduce((encoded, value) => encoded.concat([`${encodedKey}=${escapeUri(value)}`]), [])\n                .sort()\n                .join(\"&\");\n        }\n    }\n    return keys\n        .sort()\n        .map((key) => serialized[key])\n        .filter((serialized) => serialized)\n        .join(\"&\");\n};\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            options.hoistableHeaders?.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, hoistableHeaders, 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, hoistableHeaders });\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","export * from \"./SignatureV4\";\nexport { getCanonicalHeaders } from \"./getCanonicalHeaders\";\nexport { getCanonicalQuery } from \"./getCanonicalQuery\";\nexport { getPayloadHash } from \"./getPayloadHash\";\nexport { moveHeadersToQuery } from \"./moveHeadersToQuery\";\nexport { prepareRequest } from \"./prepareRequest\";\nexport * from \"./credentialDerivation\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider, normalizeProvider, } from \"@smithy/core\";\nimport { SignatureV4 } from \"@smithy/signature-v4\";\nexport const resolveAwsSdkSigV4Config = (config) => {\n    let isUserSupplied = false;\n    let normalizedCreds;\n    if (config.credentials) {\n        isUserSupplied = true;\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: isUserSupplied\n            ? async () => normalizedCreds().then((creds) => setCredentialFeature(creds, \"CREDENTIALS_CODE\", \"e\"))\n            : normalizedCreds,\n        signer,\n    };\n};\nexport const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\n","export { AwsSdkSigV4Signer, AWSSDKSigV4Signer, validateSigningProperties } from \"./AwsSdkSigV4Signer\";\nexport { AwsSdkSigV4ASigner } from \"./AwsSdkSigV4ASigner\";\nexport * from \"./resolveAwsSdkSigV4AConfig\";\nexport * from \"./resolveAwsSdkSigV4Config\";\n","export * from \"./aws_sdk\";\n","export const _toStr = (val) => {\n    if (val == null) {\n        return val;\n    }\n    if (typeof val === \"number\" || typeof val === \"bigint\") {\n        const warning = new Error(`Received number ${val} where a string was expected.`);\n        warning.name = \"Warning\";\n        console.warn(warning);\n        return String(val);\n    }\n    if (typeof val === \"boolean\") {\n        const warning = new Error(`Received boolean ${val} where a string was expected.`);\n        warning.name = \"Warning\";\n        console.warn(warning);\n        return String(val);\n    }\n    return val;\n};\nexport const _toBool = (val) => {\n    if (val == null) {\n        return val;\n    }\n    if (typeof val === \"number\") {\n    }\n    if (typeof val === \"string\") {\n        const lowercase = val.toLowerCase();\n        if (val !== \"\" && lowercase !== \"false\" && lowercase !== \"true\") {\n            const warning = new Error(`Received string \"${val}\" where a boolean was expected.`);\n            warning.name = \"Warning\";\n            console.warn(warning);\n        }\n        return val !== \"\" && lowercase !== \"false\";\n    }\n    return val;\n};\nexport const _toNum = (val) => {\n    if (val == null) {\n        return val;\n    }\n    if (typeof val === \"boolean\") {\n    }\n    if (typeof val === \"string\") {\n        const num = Number(val);\n        if (num.toString() !== val) {\n            const warning = new Error(`Received string \"${val}\" where a number was expected.`);\n            warning.name = \"Warning\";\n            console.warn(warning);\n            return val;\n        }\n        return num;\n    }\n    return val;\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","export * from \"./MiddlewareStack\";\n","import { constructStack } from \"@smithy/middleware-stack\";\nexport class Client {\n    constructor(config) {\n        this.config = config;\n        this.middlewareStack = constructStack();\n    }\n    send(command, optionsOrCb, cb) {\n        const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n        const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n        const useHandlerCache = options === undefined && this.config.cacheMiddleware === true;\n        let handler;\n        if (useHandlerCache) {\n            if (!this.handlers) {\n                this.handlers = new WeakMap();\n            }\n            const handlers = this.handlers;\n            if (handlers.has(command.constructor)) {\n                handler = handlers.get(command.constructor);\n            }\n            else {\n                handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n                handlers.set(command.constructor, handler);\n            }\n        }\n        else {\n            delete this.handlers;\n            handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n        }\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        this.config?.requestHandler?.destroy?.();\n        delete this.handlers;\n    }\n}\n","export { collectBody } from \"@smithy/core/protocols\";\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 const SENSITIVE_STRING = \"***SensitiveInformation***\";\n","export const createAggregatedClient = (commands, Client) => {\n    for (const command of Object.keys(commands)) {\n        const CommandCtor = commands[command];\n        const methodImpl = async function (args, optionsOrCb, cb) {\n            const command = new CommandCtor(args);\n            if (typeof optionsOrCb === \"function\") {\n                this.send(command, optionsOrCb);\n            }\n            else if (typeof cb === \"function\") {\n                if (typeof optionsOrCb !== \"object\")\n                    throw new Error(`Expected http options but got ${typeof optionsOrCb}`);\n                this.send(command, optionsOrCb || {}, cb);\n            }\n            else {\n                return this.send(command, optionsOrCb);\n            }\n        };\n        const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, \"\");\n        Client.prototype[methodName] = methodImpl;\n    }\n};\n","export const parseBoolean = (value) => {\n    switch (value) {\n        case \"true\":\n            return true;\n        case \"false\":\n            return false;\n        default:\n            throw new Error(`Unable to parse boolean value \"${value}\"`);\n    }\n};\nexport const expectBoolean = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value === \"number\") {\n        if (value === 0 || value === 1) {\n            logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n        }\n        if (value === 0) {\n            return false;\n        }\n        if (value === 1) {\n            return true;\n        }\n    }\n    if (typeof value === \"string\") {\n        const lower = value.toLowerCase();\n        if (lower === \"false\" || lower === \"true\") {\n            logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n        }\n        if (lower === \"false\") {\n            return false;\n        }\n        if (lower === \"true\") {\n            return true;\n        }\n    }\n    if (typeof value === \"boolean\") {\n        return value;\n    }\n    throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);\n};\nexport const expectNumber = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value === \"string\") {\n        const parsed = parseFloat(value);\n        if (!Number.isNaN(parsed)) {\n            if (String(parsed) !== String(value)) {\n                logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));\n            }\n            return parsed;\n        }\n    }\n    if (typeof value === \"number\") {\n        return value;\n    }\n    throw new TypeError(`Expected number, got ${typeof value}: ${value}`);\n};\nconst MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));\nexport const expectFloat32 = (value) => {\n    const expected = expectNumber(value);\n    if (expected !== undefined && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {\n        if (Math.abs(expected) > MAX_FLOAT) {\n            throw new TypeError(`Expected 32-bit float, got ${value}`);\n        }\n    }\n    return expected;\n};\nexport const expectLong = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (Number.isInteger(value) && !Number.isNaN(value)) {\n        return value;\n    }\n    throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);\n};\nexport const expectInt = expectLong;\nexport const expectInt32 = (value) => expectSizedInt(value, 32);\nexport const expectShort = (value) => expectSizedInt(value, 16);\nexport const expectByte = (value) => expectSizedInt(value, 8);\nconst expectSizedInt = (value, size) => {\n    const expected = expectLong(value);\n    if (expected !== undefined && castInt(expected, size) !== expected) {\n        throw new TypeError(`Expected ${size}-bit integer, got ${value}`);\n    }\n    return expected;\n};\nconst castInt = (value, size) => {\n    switch (size) {\n        case 32:\n            return Int32Array.of(value)[0];\n        case 16:\n            return Int16Array.of(value)[0];\n        case 8:\n            return Int8Array.of(value)[0];\n    }\n};\nexport const expectNonNull = (value, location) => {\n    if (value === null || value === undefined) {\n        if (location) {\n            throw new TypeError(`Expected a non-null value for ${location}`);\n        }\n        throw new TypeError(\"Expected a non-null value\");\n    }\n    return value;\n};\nexport const expectObject = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value === \"object\" && !Array.isArray(value)) {\n        return value;\n    }\n    const receivedType = Array.isArray(value) ? \"array\" : typeof value;\n    throw new TypeError(`Expected object, got ${receivedType}: ${value}`);\n};\nexport const expectString = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value === \"string\") {\n        return value;\n    }\n    if ([\"boolean\", \"number\", \"bigint\"].includes(typeof value)) {\n        logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));\n        return String(value);\n    }\n    throw new TypeError(`Expected string, got ${typeof value}: ${value}`);\n};\nexport const expectUnion = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    const asObject = expectObject(value);\n    const setKeys = Object.entries(asObject)\n        .filter(([, v]) => v != null)\n        .map(([k]) => k);\n    if (setKeys.length === 0) {\n        throw new TypeError(`Unions must have exactly one non-null member. None were found.`);\n    }\n    if (setKeys.length > 1) {\n        throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);\n    }\n    return asObject;\n};\nexport const strictParseDouble = (value) => {\n    if (typeof value == \"string\") {\n        return expectNumber(parseNumber(value));\n    }\n    return expectNumber(value);\n};\nexport const strictParseFloat = strictParseDouble;\nexport const strictParseFloat32 = (value) => {\n    if (typeof value == \"string\") {\n        return expectFloat32(parseNumber(value));\n    }\n    return expectFloat32(value);\n};\nconst NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nconst parseNumber = (value) => {\n    const matches = value.match(NUMBER_REGEX);\n    if (matches === null || matches[0].length !== value.length) {\n        throw new TypeError(`Expected real number, got implicit NaN`);\n    }\n    return parseFloat(value);\n};\nexport const limitedParseDouble = (value) => {\n    if (typeof value == \"string\") {\n        return parseFloatString(value);\n    }\n    return expectNumber(value);\n};\nexport const handleFloat = limitedParseDouble;\nexport const limitedParseFloat = limitedParseDouble;\nexport const limitedParseFloat32 = (value) => {\n    if (typeof value == \"string\") {\n        return parseFloatString(value);\n    }\n    return expectFloat32(value);\n};\nconst parseFloatString = (value) => {\n    switch (value) {\n        case \"NaN\":\n            return NaN;\n        case \"Infinity\":\n            return Infinity;\n        case \"-Infinity\":\n            return -Infinity;\n        default:\n            throw new Error(`Unable to parse float value: ${value}`);\n    }\n};\nexport const strictParseLong = (value) => {\n    if (typeof value === \"string\") {\n        return expectLong(parseNumber(value));\n    }\n    return expectLong(value);\n};\nexport const strictParseInt = strictParseLong;\nexport const strictParseInt32 = (value) => {\n    if (typeof value === \"string\") {\n        return expectInt32(parseNumber(value));\n    }\n    return expectInt32(value);\n};\nexport const strictParseShort = (value) => {\n    if (typeof value === \"string\") {\n        return expectShort(parseNumber(value));\n    }\n    return expectShort(value);\n};\nexport const strictParseByte = (value) => {\n    if (typeof value === \"string\") {\n        return expectByte(parseNumber(value));\n    }\n    return expectByte(value);\n};\nconst stackTraceWarning = (message) => {\n    return String(new TypeError(message).stack || message)\n        .split(\"\\n\")\n        .slice(0, 5)\n        .filter((s) => !s.includes(\"stackTraceWarning\"))\n        .join(\"\\n\");\n};\nexport const logger = {\n    warn: console.warn,\n};\n","import { strictParseByte, strictParseDouble, strictParseFloat32, strictParseShort } from \"./parse-utils\";\nconst DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nconst MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport function dateToUtcString(date) {\n    const year = date.getUTCFullYear();\n    const month = date.getUTCMonth();\n    const dayOfWeek = date.getUTCDay();\n    const dayOfMonthInt = date.getUTCDate();\n    const hoursInt = date.getUTCHours();\n    const minutesInt = date.getUTCMinutes();\n    const secondsInt = date.getUTCSeconds();\n    const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;\n    const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;\n    const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;\n    const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;\n    return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;\n}\nconst RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nexport const parseRfc3339DateTime = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value !== \"string\") {\n        throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n    }\n    const match = RFC3339.exec(value);\n    if (!match) {\n        throw new TypeError(\"Invalid RFC-3339 date-time value\");\n    }\n    const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n    const year = strictParseShort(stripLeadingZeroes(yearStr));\n    const month = parseDateValue(monthStr, \"month\", 1, 12);\n    const day = parseDateValue(dayStr, \"day\", 1, 31);\n    return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n};\nconst RFC3339_WITH_OFFSET = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?(([-+]\\d{2}\\:\\d{2})|[zZ])$/);\nexport const parseRfc3339DateTimeWithOffset = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value !== \"string\") {\n        throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n    }\n    const match = RFC3339_WITH_OFFSET.exec(value);\n    if (!match) {\n        throw new TypeError(\"Invalid RFC-3339 date-time value\");\n    }\n    const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;\n    const year = strictParseShort(stripLeadingZeroes(yearStr));\n    const month = parseDateValue(monthStr, \"month\", 1, 12);\n    const day = parseDateValue(dayStr, \"day\", 1, 31);\n    const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n    if (offsetStr.toUpperCase() != \"Z\") {\n        date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));\n    }\n    return date;\n};\nconst IMF_FIXDATE = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\\d{4}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst RFC_850_DATE = new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst ASC_TIME = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nexport const parseRfc7231DateTime = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    if (typeof value !== \"string\") {\n        throw new TypeError(\"RFC-7231 date-times must be expressed as strings\");\n    }\n    let match = IMF_FIXDATE.exec(value);\n    if (match) {\n        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n        return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n    }\n    match = RFC_850_DATE.exec(value);\n    if (match) {\n        const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n        return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n            hours,\n            minutes,\n            seconds,\n            fractionalMilliseconds,\n        }));\n    }\n    match = ASC_TIME.exec(value);\n    if (match) {\n        const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;\n        return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n    }\n    throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nexport const parseEpochTimestamp = (value) => {\n    if (value === null || value === undefined) {\n        return undefined;\n    }\n    let valueAsDouble;\n    if (typeof value === \"number\") {\n        valueAsDouble = value;\n    }\n    else if (typeof value === \"string\") {\n        valueAsDouble = strictParseDouble(value);\n    }\n    else if (typeof value === \"object\" && value.tag === 1) {\n        valueAsDouble = value.value;\n    }\n    else {\n        throw new TypeError(\"Epoch timestamps must be expressed as floating point numbers or their string representation\");\n    }\n    if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {\n        throw new TypeError(\"Epoch timestamps must be valid, non-Infinite, non-NaN numerics\");\n    }\n    return new Date(Math.round(valueAsDouble * 1000));\n};\nconst buildDate = (year, month, day, time) => {\n    const adjustedMonth = month - 1;\n    validateDayOfMonth(year, adjustedMonth, day);\n    return new Date(Date.UTC(year, adjustedMonth, day, parseDateValue(time.hours, \"hour\", 0, 23), parseDateValue(time.minutes, \"minute\", 0, 59), parseDateValue(time.seconds, \"seconds\", 0, 60), parseMilliseconds(time.fractionalMilliseconds)));\n};\nconst parseTwoDigitYear = (value) => {\n    const thisYear = new Date().getUTCFullYear();\n    const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n    if (valueInThisCentury < thisYear) {\n        return valueInThisCentury + 100;\n    }\n    return valueInThisCentury;\n};\nconst FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nconst adjustRfc850Year = (input) => {\n    if (input.getTime() - new Date().getTime() > FIFTY_YEARS_IN_MILLIS) {\n        return new Date(Date.UTC(input.getUTCFullYear() - 100, input.getUTCMonth(), input.getUTCDate(), input.getUTCHours(), input.getUTCMinutes(), input.getUTCSeconds(), input.getUTCMilliseconds()));\n    }\n    return input;\n};\nconst parseMonthByShortName = (value) => {\n    const monthIdx = MONTHS.indexOf(value);\n    if (monthIdx < 0) {\n        throw new TypeError(`Invalid month: ${value}`);\n    }\n    return monthIdx + 1;\n};\nconst DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nconst validateDayOfMonth = (year, month, day) => {\n    let maxDays = DAYS_IN_MONTH[month];\n    if (month === 1 && isLeapYear(year)) {\n        maxDays = 29;\n    }\n    if (day > maxDays) {\n        throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);\n    }\n};\nconst isLeapYear = (year) => {\n    return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nconst parseDateValue = (value, type, lower, upper) => {\n    const dateVal = strictParseByte(stripLeadingZeroes(value));\n    if (dateVal < lower || dateVal > upper) {\n        throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);\n    }\n    return dateVal;\n};\nconst parseMilliseconds = (value) => {\n    if (value === null || value === undefined) {\n        return 0;\n    }\n    return strictParseFloat32(\"0.\" + value) * 1000;\n};\nconst parseOffsetToMilliseconds = (value) => {\n    const directionStr = value[0];\n    let direction = 1;\n    if (directionStr == \"+\") {\n        direction = 1;\n    }\n    else if (directionStr == \"-\") {\n        direction = -1;\n    }\n    else {\n        throw new TypeError(`Offset direction, ${directionStr}, must be \"+\" or \"-\"`);\n    }\n    const hour = Number(value.substring(1, 3));\n    const minute = Number(value.substring(4, 6));\n    return direction * (hour * 60 + minute) * 60 * 1000;\n};\nconst stripLeadingZeroes = (value) => {\n    let idx = 0;\n    while (idx < value.length - 1 && value.charAt(idx) === \"0\") {\n        idx++;\n    }\n    if (idx === 0) {\n        return value;\n    }\n    return value.slice(idx);\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","let warningEmitted = false;\nexport const emitWarningIfUnsupportedVersion = (version) => {\n    if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n        warningEmitted = true;\n    }\n};\n","export { extendedEncodeURIComponent } from \"@smithy/core/protocols\";\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 * from \"./defaultExtensionConfiguration\";\n","export const getArrayIfSingleItem = (mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray];\n","export const getValueFromTextNode = (obj) => {\n    const textNodeName = \"#text\";\n    for (const key in obj) {\n        if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== undefined) {\n            obj[key] = obj[key][textNodeName];\n        }\n        else if (typeof obj[key] === \"object\" && obj[key] !== null) {\n            obj[key] = getValueFromTextNode(obj[key]);\n        }\n    }\n    return obj;\n};\n","export const isSerializableHeaderValue = (value) => {\n    return value != null;\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 class NoOpLogger {\n    trace() { }\n    debug() { }\n    info() { }\n    warn() { }\n    error() { }\n}\n","export function map(arg0, arg1, arg2) {\n    let target;\n    let filter;\n    let instructions;\n    if (typeof arg1 === \"undefined\" && typeof arg2 === \"undefined\") {\n        target = {};\n        instructions = arg0;\n    }\n    else {\n        target = arg0;\n        if (typeof arg1 === \"function\") {\n            filter = arg1;\n            instructions = arg2;\n            return mapWithFilter(target, filter, instructions);\n        }\n        else {\n            instructions = arg1;\n        }\n    }\n    for (const key of Object.keys(instructions)) {\n        if (!Array.isArray(instructions[key])) {\n            target[key] = instructions[key];\n            continue;\n        }\n        applyInstruction(target, null, instructions, key);\n    }\n    return target;\n}\nexport const convertMap = (target) => {\n    const output = {};\n    for (const [k, v] of Object.entries(target || {})) {\n        output[k] = [, v];\n    }\n    return output;\n};\nexport const take = (source, instructions) => {\n    const out = {};\n    for (const key in instructions) {\n        applyInstruction(out, source, instructions, key);\n    }\n    return out;\n};\nconst mapWithFilter = (target, filter, instructions) => {\n    return map(target, Object.entries(instructions).reduce((_instructions, [key, value]) => {\n        if (Array.isArray(value)) {\n            _instructions[key] = value;\n        }\n        else {\n            if (typeof value === \"function\") {\n                _instructions[key] = [filter, value()];\n            }\n            else {\n                _instructions[key] = [filter, value];\n            }\n        }\n        return _instructions;\n    }, {}));\n};\nconst applyInstruction = (target, source, instructions, targetKey) => {\n    if (source !== null) {\n        let instruction = instructions[targetKey];\n        if (typeof instruction === \"function\") {\n            instruction = [, instruction];\n        }\n        const [filter = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;\n        if ((typeof filter === \"function\" && filter(source[sourceKey])) || (typeof filter !== \"function\" && !!filter)) {\n            target[targetKey] = valueFn(source[sourceKey]);\n        }\n        return;\n    }\n    let [filter, value] = instructions[targetKey];\n    if (typeof value === \"function\") {\n        let _value;\n        const defaultFilterPassed = filter === undefined && (_value = value()) != null;\n        const customFilterPassed = (typeof filter === \"function\" && !!filter(void 0)) || (typeof filter !== \"function\" && !!filter);\n        if (defaultFilterPassed) {\n            target[targetKey] = _value;\n        }\n        else if (customFilterPassed) {\n            target[targetKey] = value();\n        }\n    }\n    else {\n        const defaultFilterPassed = filter === undefined && value != null;\n        const customFilterPassed = (typeof filter === \"function\" && !!filter(value)) || (typeof filter !== \"function\" && !!filter);\n        if (defaultFilterPassed || customFilterPassed) {\n            target[targetKey] = value;\n        }\n    }\n};\nconst nonNullish = (_) => _ != null;\nconst pass = (_) => _;\n","export function quoteHeader(part) {\n    if (part.includes(\",\") || part.includes('\"')) {\n        part = `\"${part.replace(/\"/g, '\\\\\"')}\"`;\n    }\n    return part;\n}\n","export { resolvedPath } from \"@smithy/core/protocols\";\n","export const serializeFloat = (value) => {\n    if (value !== value) {\n        return \"NaN\";\n    }\n    switch (value) {\n        case Infinity:\n            return \"Infinity\";\n        case -Infinity:\n            return \"-Infinity\";\n        default:\n            return value;\n    }\n};\nexport const serializeDateTime = (date) => date.toISOString().replace(\".000Z\", \"Z\");\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 function splitEvery(value, delimiter, numDelimiters) {\n    if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {\n        throw new Error(\"Invalid number of delimiters (\" + numDelimiters + \") for splitEvery.\");\n    }\n    const segments = value.split(delimiter);\n    if (numDelimiters === 1) {\n        return segments;\n    }\n    const compoundSegments = [];\n    let currentSegment = \"\";\n    for (let i = 0; i < segments.length; i++) {\n        if (currentSegment === \"\") {\n            currentSegment = segments[i];\n        }\n        else {\n            currentSegment += delimiter + segments[i];\n        }\n        if ((i + 1) % numDelimiters === 0) {\n            compoundSegments.push(currentSegment);\n            currentSegment = \"\";\n        }\n    }\n    if (currentSegment !== \"\") {\n        compoundSegments.push(currentSegment);\n    }\n    return compoundSegments;\n}\n","export const splitHeader = (value) => {\n    const z = value.length;\n    const values = [];\n    let withinQuotes = false;\n    let prevChar = undefined;\n    let anchor = 0;\n    for (let i = 0; i < z; ++i) {\n        const char = value[i];\n        switch (char) {\n            case `\"`:\n                if (prevChar !== \"\\\\\") {\n                    withinQuotes = !withinQuotes;\n                }\n                break;\n            case \",\":\n                if (!withinQuotes) {\n                    values.push(value.slice(anchor, i));\n                    anchor = i + 1;\n                }\n                break;\n            default:\n        }\n        prevChar = char;\n    }\n    values.push(value.slice(anchor));\n    return values.map((v) => {\n        v = v.trim();\n        const z = v.length;\n        if (z < 2) {\n            return v;\n        }\n        if (v[0] === `\"` && v[z - 1] === `\"`) {\n            v = v.slice(1, z - 1);\n        }\n        return v.replace(/\\\\\"/g, '\"');\n    });\n};\n","export * from \"./client\";\nexport * from \"./collect-stream-body\";\nexport * from \"./command\";\nexport * from \"./constants\";\nexport * from \"./create-aggregated-client\";\nexport * from \"./date-utils\";\nexport * from \"./default-error-handler\";\nexport * from \"./defaults-mode\";\nexport * from \"./emitWarningIfUnsupportedVersion\";\nexport * from \"./exceptions\";\nexport * from \"./extended-encode-uri-component\";\nexport * from \"./extensions\";\nexport * from \"./get-array-if-single-item\";\nexport * from \"./get-value-from-text-node\";\nexport * from \"./is-serializable-header-value\";\nexport * from \"./lazy-json\";\nexport * from \"./NoOpLogger\";\nexport * from \"./object-mapping\";\nexport * from \"./parse-utils\";\nexport * from \"./quote-header\";\nexport * from \"./resolve-path\";\nexport * from \"./ser-utils\";\nexport * from \"./serde-json\";\nexport * from \"./split-every\";\nexport * from \"./split-header\";\n","import { expectUnion } from \"@smithy/smithy-client\";\nexport const awsExpectUnion = (value) => {\n    if (value == null) {\n        return undefined;\n    }\n    if (typeof value === \"object\" && \"__type\" in value) {\n        delete value.__type;\n    }\n    return expectUnion(value);\n};\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","'use strict';\n\nconst nameStartChar = ':A-Za-z_\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD';\nconst nameChar = nameStartChar + '\\\\-.\\\\d\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040';\nconst nameRegexp = '[' + nameStartChar + '][' + nameChar + ']*'\nconst regexName = new RegExp('^' + nameRegexp + '$');\n\nconst getAllMatches = function(string, regex) {\n  const matches = [];\n  let match = regex.exec(string);\n  while (match) {\n    const allmatches = [];\n    allmatches.startIndex = regex.lastIndex - match[0].length;\n    const len = match.length;\n    for (let index = 0; index < len; index++) {\n      allmatches.push(match[index]);\n    }\n    matches.push(allmatches);\n    match = regex.exec(string);\n  }\n  return matches;\n};\n\nconst isName = function(string) {\n  const match = regexName.exec(string);\n  return !(match === null || typeof match === 'undefined');\n};\n\nexports.isExist = function(v) {\n  return typeof v !== 'undefined';\n};\n\nexports.isEmptyObject = function(obj) {\n  return Object.keys(obj).length === 0;\n};\n\n/**\n * Copy all the properties of a into b.\n * @param {*} target\n * @param {*} a\n */\nexports.merge = function(target, a, arrayMode) {\n  if (a) {\n    const keys = Object.keys(a); // will return an array of own properties\n    const len = keys.length; //don't make it inline\n    for (let i = 0; i < len; i++) {\n      if (arrayMode === 'strict') {\n        target[keys[i]] = [ a[keys[i]] ];\n      } else {\n        target[keys[i]] = a[keys[i]];\n      }\n    }\n  }\n};\n/* exports.merge =function (b,a){\n  return Object.assign(b,a);\n} */\n\nexports.getValue = function(v) {\n  if (exports.isExist(v)) {\n    return v;\n  } else {\n    return '';\n  }\n};\n\n// const fakeCall = function(a) {return a;};\n// const fakeCallNoReturn = function() {};\n\nexports.isName = isName;\nexports.getAllMatches = getAllMatches;\nexports.nameRegexp = nameRegexp;\n","'use strict';\n\nconst util = require('./util');\n\nconst defaultOptions = {\n  allowBooleanAttributes: false, //A tag can have attributes without any value\n  unpairedTags: []\n};\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexports.validate = function (xmlData, options) {\n  options = Object.assign({}, defaultOptions, options);\n\n  //xmlData = xmlData.replace(/(\\r\\n|\\n|\\r)/gm,\"\");//make it single line\n  //xmlData = xmlData.replace(/(^\\s*<\\?xml.*?\\?>)/g,\"\");//Remove XML starting tag\n  //xmlData = xmlData.replace(/(<!DOCTYPE[\\s\\w\\\"\\.\\/\\-\\:]+(\\[.*\\])*\\s*>)/g,\"\");//Remove DOCTYPE\n  const tags = [];\n  let tagFound = false;\n\n  //indicates that the root tag has been closed (aka. depth 0 has been reached)\n  let reachedRoot = false;\n\n  if (xmlData[0] === '\\ufeff') {\n    // check for byte order mark (BOM)\n    xmlData = xmlData.substr(1);\n  }\n  \n  for (let i = 0; i < xmlData.length; i++) {\n\n    if (xmlData[i] === '<' && xmlData[i+1] === '?') {\n      i+=2;\n      i = readPI(xmlData,i);\n      if (i.err) return i;\n    }else if (xmlData[i] === '<') {\n      //starting of tag\n      //read until you reach to '>' avoiding any '>' in attribute value\n      let tagStartPos = i;\n      i++;\n      \n      if (xmlData[i] === '!') {\n        i = readCommentAndCDATA(xmlData, i);\n        continue;\n      } else {\n        let closingTag = false;\n        if (xmlData[i] === '/') {\n          //closing tag\n          closingTag = true;\n          i++;\n        }\n        //read tagname\n        let tagName = '';\n        for (; i < xmlData.length &&\n          xmlData[i] !== '>' &&\n          xmlData[i] !== ' ' &&\n          xmlData[i] !== '\\t' &&\n          xmlData[i] !== '\\n' &&\n          xmlData[i] !== '\\r'; i++\n        ) {\n          tagName += xmlData[i];\n        }\n        tagName = tagName.trim();\n        //console.log(tagName);\n\n        if (tagName[tagName.length - 1] === '/') {\n          //self closing tag without attributes\n          tagName = tagName.substring(0, tagName.length - 1);\n          //continue;\n          i--;\n        }\n        if (!validateTagName(tagName)) {\n          let msg;\n          if (tagName.trim().length === 0) {\n            msg = \"Invalid space after '<'.\";\n          } else {\n            msg = \"Tag '\"+tagName+\"' is an invalid name.\";\n          }\n          return getErrorObject('InvalidTag', msg, getLineNumberForPosition(xmlData, i));\n        }\n\n        const result = readAttributeStr(xmlData, i);\n        if (result === false) {\n          return getErrorObject('InvalidAttr', \"Attributes for '\"+tagName+\"' have open quote.\", getLineNumberForPosition(xmlData, i));\n        }\n        let attrStr = result.value;\n        i = result.index;\n\n        if (attrStr[attrStr.length - 1] === '/') {\n          //self closing tag\n          const attrStrStart = i - attrStr.length;\n          attrStr = attrStr.substring(0, attrStr.length - 1);\n          const isValid = validateAttributeString(attrStr, options);\n          if (isValid === true) {\n            tagFound = true;\n            //continue; //text may presents after self closing tag\n          } else {\n            //the result from the nested function returns the position of the error within the attribute\n            //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n            //this gives us the absolute index in the entire xml, which we can use to find the line at last\n            return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, attrStrStart + isValid.err.line));\n          }\n        } else if (closingTag) {\n          if (!result.tagClosed) {\n            return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' doesn't have proper closing.\", getLineNumberForPosition(xmlData, i));\n          } else if (attrStr.trim().length > 0) {\n            return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' can't have attributes or invalid starting.\", getLineNumberForPosition(xmlData, tagStartPos));\n          } else if (tags.length === 0) {\n            return getErrorObject('InvalidTag', \"Closing tag '\"+tagName+\"' has not been opened.\", getLineNumberForPosition(xmlData, tagStartPos));\n          } else {\n            const otg = tags.pop();\n            if (tagName !== otg.tagName) {\n              let openPos = getLineNumberForPosition(xmlData, otg.tagStartPos);\n              return getErrorObject('InvalidTag',\n                \"Expected closing tag '\"+otg.tagName+\"' (opened in line \"+openPos.line+\", col \"+openPos.col+\") instead of closing tag '\"+tagName+\"'.\",\n                getLineNumberForPosition(xmlData, tagStartPos));\n            }\n\n            //when there are no more tags, we reached the root level.\n            if (tags.length == 0) {\n              reachedRoot = true;\n            }\n          }\n        } else {\n          const isValid = validateAttributeString(attrStr, options);\n          if (isValid !== true) {\n            //the result from the nested function returns the position of the error within the attribute\n            //in order to get the 'true' error line, we need to calculate the position where the attribute begins (i - attrStr.length) and then add the position within the attribute\n            //this gives us the absolute index in the entire xml, which we can use to find the line at last\n            return getErrorObject(isValid.err.code, isValid.err.msg, getLineNumberForPosition(xmlData, i - attrStr.length + isValid.err.line));\n          }\n\n          //if the root level has been reached before ...\n          if (reachedRoot === true) {\n            return getErrorObject('InvalidXml', 'Multiple possible root nodes found.', getLineNumberForPosition(xmlData, i));\n          } else if(options.unpairedTags.indexOf(tagName) !== -1){\n            //don't push into stack\n          } else {\n            tags.push({tagName, tagStartPos});\n          }\n          tagFound = true;\n        }\n\n        //skip tag text value\n        //It may include comments and CDATA value\n        for (i++; i < xmlData.length; i++) {\n          if (xmlData[i] === '<') {\n            if (xmlData[i + 1] === '!') {\n              //comment or CADATA\n              i++;\n              i = readCommentAndCDATA(xmlData, i);\n              continue;\n            } else if (xmlData[i+1] === '?') {\n              i = readPI(xmlData, ++i);\n              if (i.err) return i;\n            } else{\n              break;\n            }\n          } else if (xmlData[i] === '&') {\n            const afterAmp = validateAmpersand(xmlData, i);\n            if (afterAmp == -1)\n              return getErrorObject('InvalidChar', \"char '&' is not expected.\", getLineNumberForPosition(xmlData, i));\n            i = afterAmp;\n          }else{\n            if (reachedRoot === true && !isWhiteSpace(xmlData[i])) {\n              return getErrorObject('InvalidXml', \"Extra text at the end\", getLineNumberForPosition(xmlData, i));\n            }\n          }\n        } //end of reading tag text value\n        if (xmlData[i] === '<') {\n          i--;\n        }\n      }\n    } else {\n      if ( isWhiteSpace(xmlData[i])) {\n        continue;\n      }\n      return getErrorObject('InvalidChar', \"char '\"+xmlData[i]+\"' is not expected.\", getLineNumberForPosition(xmlData, i));\n    }\n  }\n\n  if (!tagFound) {\n    return getErrorObject('InvalidXml', 'Start tag expected.', 1);\n  }else if (tags.length == 1) {\n      return getErrorObject('InvalidTag', \"Unclosed tag '\"+tags[0].tagName+\"'.\", getLineNumberForPosition(xmlData, tags[0].tagStartPos));\n  }else if (tags.length > 0) {\n      return getErrorObject('InvalidXml', \"Invalid '\"+\n          JSON.stringify(tags.map(t => t.tagName), null, 4).replace(/\\r?\\n/g, '')+\n          \"' found.\", {line: 1, col: 1});\n  }\n\n  return true;\n};\n\nfunction isWhiteSpace(char){\n  return char === ' ' || char === '\\t' || char === '\\n'  || char === '\\r';\n}\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n  const start = i;\n  for (; i < xmlData.length; i++) {\n    if (xmlData[i] == '?' || xmlData[i] == ' ') {\n      //tagname\n      const tagname = xmlData.substr(start, i - start);\n      if (i > 5 && tagname === 'xml') {\n        return getErrorObject('InvalidXml', 'XML declaration allowed only at the start of the document.', getLineNumberForPosition(xmlData, i));\n      } else if (xmlData[i] == '?' && xmlData[i + 1] == '>') {\n        //check if valid attribut string\n        i++;\n        break;\n      } else {\n        continue;\n      }\n    }\n  }\n  return i;\n}\n\nfunction readCommentAndCDATA(xmlData, i) {\n  if (xmlData.length > i + 5 && xmlData[i + 1] === '-' && xmlData[i + 2] === '-') {\n    //comment\n    for (i += 3; i < xmlData.length; i++) {\n      if (xmlData[i] === '-' && xmlData[i + 1] === '-' && xmlData[i + 2] === '>') {\n        i += 2;\n        break;\n      }\n    }\n  } else if (\n    xmlData.length > i + 8 &&\n    xmlData[i + 1] === 'D' &&\n    xmlData[i + 2] === 'O' &&\n    xmlData[i + 3] === 'C' &&\n    xmlData[i + 4] === 'T' &&\n    xmlData[i + 5] === 'Y' &&\n    xmlData[i + 6] === 'P' &&\n    xmlData[i + 7] === 'E'\n  ) {\n    let angleBracketsCount = 1;\n    for (i += 8; i < xmlData.length; i++) {\n      if (xmlData[i] === '<') {\n        angleBracketsCount++;\n      } else if (xmlData[i] === '>') {\n        angleBracketsCount--;\n        if (angleBracketsCount === 0) {\n          break;\n        }\n      }\n    }\n  } else if (\n    xmlData.length > i + 9 &&\n    xmlData[i + 1] === '[' &&\n    xmlData[i + 2] === 'C' &&\n    xmlData[i + 3] === 'D' &&\n    xmlData[i + 4] === 'A' &&\n    xmlData[i + 5] === 'T' &&\n    xmlData[i + 6] === 'A' &&\n    xmlData[i + 7] === '['\n  ) {\n    for (i += 8; i < xmlData.length; i++) {\n      if (xmlData[i] === ']' && xmlData[i + 1] === ']' && xmlData[i + 2] === '>') {\n        i += 2;\n        break;\n      }\n    }\n  }\n\n  return i;\n}\n\nconst doubleQuote = '\"';\nconst singleQuote = \"'\";\n\n/**\n * Keep reading xmlData until '<' is found outside the attribute value.\n * @param {string} xmlData\n * @param {number} i\n */\nfunction readAttributeStr(xmlData, i) {\n  let attrStr = '';\n  let startChar = '';\n  let tagClosed = false;\n  for (; i < xmlData.length; i++) {\n    if (xmlData[i] === doubleQuote || xmlData[i] === singleQuote) {\n      if (startChar === '') {\n        startChar = xmlData[i];\n      } else if (startChar !== xmlData[i]) {\n        //if vaue is enclosed with double quote then single quotes are allowed inside the value and vice versa\n      } else {\n        startChar = '';\n      }\n    } else if (xmlData[i] === '>') {\n      if (startChar === '') {\n        tagClosed = true;\n        break;\n      }\n    }\n    attrStr += xmlData[i];\n  }\n  if (startChar !== '') {\n    return false;\n  }\n\n  return {\n    value: attrStr,\n    index: i,\n    tagClosed: tagClosed\n  };\n}\n\n/**\n * Select all the attributes whether valid or invalid.\n */\nconst validAttrStrRegxp = new RegExp('(\\\\s*)([^\\\\s=]+)(\\\\s*=)?(\\\\s*([\\'\"])(([\\\\s\\\\S])*?)\\\\5)?', 'g');\n\n//attr, =\"sd\", a=\"amit's\", a=\"sd\"b=\"saf\", ab  cd=\"\"\n\nfunction validateAttributeString(attrStr, options) {\n  //console.log(\"start:\"+attrStr+\":end\");\n\n  //if(attrStr.trim().length === 0) return true; //empty string\n\n  const matches = util.getAllMatches(attrStr, validAttrStrRegxp);\n  const attrNames = {};\n\n  for (let i = 0; i < matches.length; i++) {\n    if (matches[i][1].length === 0) {\n      //nospace before attribute name: a=\"sd\"b=\"saf\"\n      return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' has no space in starting.\", getPositionFromMatch(matches[i]))\n    } else if (matches[i][3] !== undefined && matches[i][4] === undefined) {\n      return getErrorObject('InvalidAttr', \"Attribute '\"+matches[i][2]+\"' is without value.\", getPositionFromMatch(matches[i]));\n    } else if (matches[i][3] === undefined && !options.allowBooleanAttributes) {\n      //independent attribute: ab\n      return getErrorObject('InvalidAttr', \"boolean attribute '\"+matches[i][2]+\"' is not allowed.\", getPositionFromMatch(matches[i]));\n    }\n    /* else if(matches[i][6] === undefined){//attribute without value: ab=\n                    return { err: { code:\"InvalidAttr\",msg:\"attribute \" + matches[i][2] + \" has no value assigned.\"}};\n                } */\n    const attrName = matches[i][2];\n    if (!validateAttrName(attrName)) {\n      return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is an invalid name.\", getPositionFromMatch(matches[i]));\n    }\n    if (!attrNames.hasOwnProperty(attrName)) {\n      //check for duplicate attribute.\n      attrNames[attrName] = 1;\n    } else {\n      return getErrorObject('InvalidAttr', \"Attribute '\"+attrName+\"' is repeated.\", getPositionFromMatch(matches[i]));\n    }\n  }\n\n  return true;\n}\n\nfunction validateNumberAmpersand(xmlData, i) {\n  let re = /\\d/;\n  if (xmlData[i] === 'x') {\n    i++;\n    re = /[\\da-fA-F]/;\n  }\n  for (; i < xmlData.length; i++) {\n    if (xmlData[i] === ';')\n      return i;\n    if (!xmlData[i].match(re))\n      break;\n  }\n  return -1;\n}\n\nfunction validateAmpersand(xmlData, i) {\n  // https://www.w3.org/TR/xml/#dt-charref\n  i++;\n  if (xmlData[i] === ';')\n    return -1;\n  if (xmlData[i] === '#') {\n    i++;\n    return validateNumberAmpersand(xmlData, i);\n  }\n  let count = 0;\n  for (; i < xmlData.length; i++, count++) {\n    if (xmlData[i].match(/\\w/) && count < 20)\n      continue;\n    if (xmlData[i] === ';')\n      break;\n    return -1;\n  }\n  return i;\n}\n\nfunction getErrorObject(code, message, lineNumber) {\n  return {\n    err: {\n      code: code,\n      msg: message,\n      line: lineNumber.line || lineNumber,\n      col: lineNumber.col,\n    },\n  };\n}\n\nfunction validateAttrName(attrName) {\n  return util.isName(attrName);\n}\n\n// const startsWithXML = /^xml/i;\n\nfunction validateTagName(tagname) {\n  return util.isName(tagname) /* && !tagname.match(startsWithXML) */;\n}\n\n//this function returns the line number for the character at the given index\nfunction getLineNumberForPosition(xmlData, index) {\n  const lines = xmlData.substring(0, index).split(/\\r?\\n/);\n  return {\n    line: lines.length,\n\n    // column number is last line's length + 1, because column numbering starts at 1:\n    col: lines[lines.length - 1].length + 1\n  };\n}\n\n//this function returns the position of the first character of match within attrStr\nfunction getPositionFromMatch(match) {\n  return match.startIndex + match[1].length;\n}\n","\nconst defaultOptions = {\n    preserveOrder: false,\n    attributeNamePrefix: '@_',\n    attributesGroupName: false,\n    textNodeName: '#text',\n    ignoreAttributes: true,\n    removeNSPrefix: false, // remove NS from tag name or attribute name if true\n    allowBooleanAttributes: false, //a tag can have attributes without any value\n    //ignoreRootElement : false,\n    parseTagValue: true,\n    parseAttributeValue: false,\n    trimValues: true, //Trim string values of tag and attributes\n    cdataPropName: false,\n    numberParseOptions: {\n      hex: true,\n      leadingZeros: true,\n      eNotation: true\n    },\n    tagValueProcessor: function(tagName, val) {\n      return val;\n    },\n    attributeValueProcessor: function(attrName, val) {\n      return val;\n    },\n    stopNodes: [], //nested tags will not be parsed even for errors\n    alwaysCreateTextNode: false,\n    isArray: () => false,\n    commentPropName: false,\n    unpairedTags: [],\n    processEntities: true,\n    htmlEntities: false,\n    ignoreDeclaration: false,\n    ignorePiTags: false,\n    transformTagName: false,\n    transformAttributeName: false,\n    updateTag: function(tagName, jPath, attrs){\n      return tagName\n    },\n    // skipEmptyListItem: false\n};\n   \nconst buildOptions = function(options) {\n    return Object.assign({}, defaultOptions, options);\n};\n\nexports.buildOptions = buildOptions;\nexports.defaultOptions = defaultOptions;","'use strict';\n\nclass XmlNode{\n  constructor(tagname) {\n    this.tagname = tagname;\n    this.child = []; //nested tags, text, cdata, comments in order\n    this[\":@\"] = {}; //attributes map\n  }\n  add(key,val){\n    // this.child.push( {name : key, val: val, isCdata: isCdata });\n    if(key === \"__proto__\") key = \"#__proto__\";\n    this.child.push( {[key]: val });\n  }\n  addChild(node) {\n    if(node.tagname === \"__proto__\") node.tagname = \"#__proto__\";\n    if(node[\":@\"] && Object.keys(node[\":@\"]).length > 0){\n      this.child.push( { [node.tagname]: node.child, [\":@\"]: node[\":@\"] });\n    }else{\n      this.child.push( { [node.tagname]: node.child });\n    }\n  };\n};\n\n\nmodule.exports = XmlNode;","const util = require('../util');\n\n//TODO: handle comments\nfunction readDocType(xmlData, i){\n    \n    const entities = {};\n    if( xmlData[i + 3] === 'O' &&\n         xmlData[i + 4] === 'C' &&\n         xmlData[i + 5] === 'T' &&\n         xmlData[i + 6] === 'Y' &&\n         xmlData[i + 7] === 'P' &&\n         xmlData[i + 8] === 'E')\n    {    \n        i = i+9;\n        let angleBracketsCount = 1;\n        let hasBody = false, comment = false;\n        let exp = \"\";\n        for(;i<xmlData.length;i++){\n            if (xmlData[i] === '<' && !comment) { //Determine the tag type\n                if( hasBody && isEntity(xmlData, i)){\n                    i += 7; \n                    [entityName, val,i] = readEntityExp(xmlData,i+1);\n                    if(val.indexOf(\"&\") === -1) //Parameter entities are not supported\n                        entities[ validateEntityName(entityName) ] = {\n                            regx : RegExp( `&${entityName};`,\"g\"),\n                            val: val\n                        };\n                }\n                else if( hasBody && isElement(xmlData, i))  i += 8;//Not supported\n                else if( hasBody && isAttlist(xmlData, i))  i += 8;//Not supported\n                else if( hasBody && isNotation(xmlData, i)) i += 9;//Not supported\n                else if( isComment)                         comment = true;\n                else                                        throw new Error(\"Invalid DOCTYPE\");\n\n                angleBracketsCount++;\n                exp = \"\";\n            } else if (xmlData[i] === '>') { //Read tag content\n                if(comment){\n                    if( xmlData[i - 1] === \"-\" && xmlData[i - 2] === \"-\"){\n                        comment = false;\n                        angleBracketsCount--;\n                    }\n                }else{\n                    angleBracketsCount--;\n                }\n                if (angleBracketsCount === 0) {\n                  break;\n                }\n            }else if( xmlData[i] === '['){\n                hasBody = true;\n            }else{\n                exp += xmlData[i];\n            }\n        }\n        if(angleBracketsCount !== 0){\n            throw new Error(`Unclosed DOCTYPE`);\n        }\n    }else{\n        throw new Error(`Invalid Tag instead of DOCTYPE`);\n    }\n    return {entities, i};\n}\n\nfunction readEntityExp(xmlData,i){\n    //External entities are not supported\n    //    <!ENTITY ext SYSTEM \"http://normal-website.com\" >\n\n    //Parameter entities are not supported\n    //    <!ENTITY entityname \"&anotherElement;\">\n\n    //Internal entities are supported\n    //    <!ENTITY entityname \"replacement text\">\n    \n    //read EntityName\n    let entityName = \"\";\n    for (; i < xmlData.length && (xmlData[i] !== \"'\" && xmlData[i] !== '\"' ); i++) {\n        // if(xmlData[i] === \" \") continue;\n        // else \n        entityName += xmlData[i];\n    }\n    entityName = entityName.trim();\n    if(entityName.indexOf(\" \") !== -1) throw new Error(\"External entites are not supported\");\n\n    //read Entity Value\n    const startChar = xmlData[i++];\n    let val = \"\"\n    for (; i < xmlData.length && xmlData[i] !== startChar ; i++) {\n        val += xmlData[i];\n    }\n    return [entityName, val, i];\n}\n\nfunction isComment(xmlData, i){\n    if(xmlData[i+1] === '!' &&\n    xmlData[i+2] === '-' &&\n    xmlData[i+3] === '-') return true\n    return false\n}\nfunction isEntity(xmlData, i){\n    if(xmlData[i+1] === '!' &&\n    xmlData[i+2] === 'E' &&\n    xmlData[i+3] === 'N' &&\n    xmlData[i+4] === 'T' &&\n    xmlData[i+5] === 'I' &&\n    xmlData[i+6] === 'T' &&\n    xmlData[i+7] === 'Y') return true\n    return false\n}\nfunction isElement(xmlData, i){\n    if(xmlData[i+1] === '!' &&\n    xmlData[i+2] === 'E' &&\n    xmlData[i+3] === 'L' &&\n    xmlData[i+4] === 'E' &&\n    xmlData[i+5] === 'M' &&\n    xmlData[i+6] === 'E' &&\n    xmlData[i+7] === 'N' &&\n    xmlData[i+8] === 'T') return true\n    return false\n}\n\nfunction isAttlist(xmlData, i){\n    if(xmlData[i+1] === '!' &&\n    xmlData[i+2] === 'A' &&\n    xmlData[i+3] === 'T' &&\n    xmlData[i+4] === 'T' &&\n    xmlData[i+5] === 'L' &&\n    xmlData[i+6] === 'I' &&\n    xmlData[i+7] === 'S' &&\n    xmlData[i+8] === 'T') return true\n    return false\n}\nfunction isNotation(xmlData, i){\n    if(xmlData[i+1] === '!' &&\n    xmlData[i+2] === 'N' &&\n    xmlData[i+3] === 'O' &&\n    xmlData[i+4] === 'T' &&\n    xmlData[i+5] === 'A' &&\n    xmlData[i+6] === 'T' &&\n    xmlData[i+7] === 'I' &&\n    xmlData[i+8] === 'O' &&\n    xmlData[i+9] === 'N') return true\n    return false\n}\n\nfunction validateEntityName(name){\n    if (util.isName(name))\n\treturn name;\n    else\n        throw new Error(`Invalid entity name ${name}`);\n}\n\nmodule.exports = readDocType;\n","const hexRegex = /^[-+]?0x[a-fA-F0-9]+$/;\nconst numRegex = /^([\\-\\+])?(0*)(\\.[0-9]+([eE]\\-?[0-9]+)?|[0-9]+(\\.[0-9]+([eE]\\-?[0-9]+)?)?)$/;\n// const octRegex = /0x[a-z0-9]+/;\n// const binRegex = /0x[a-z0-9]+/;\n\n\n//polyfill\nif (!Number.parseInt && window.parseInt) {\n    Number.parseInt = window.parseInt;\n}\nif (!Number.parseFloat && window.parseFloat) {\n    Number.parseFloat = window.parseFloat;\n}\n\n  \nconst consider = {\n    hex :  true,\n    leadingZeros: true,\n    decimalPoint: \"\\.\",\n    eNotation: true\n    //skipLike: /regex/\n};\n\nfunction toNumber(str, options = {}){\n    // const options = Object.assign({}, consider);\n    // if(opt.leadingZeros === false){\n    //     options.leadingZeros = false;\n    // }else if(opt.hex === false){\n    //     options.hex = false;\n    // }\n\n    options = Object.assign({}, consider, options );\n    if(!str || typeof str !== \"string\" ) return str;\n    \n    let trimmedStr  = str.trim();\n    // if(trimmedStr === \"0.0\") return 0;\n    // else if(trimmedStr === \"+0.0\") return 0;\n    // else if(trimmedStr === \"-0.0\") return -0;\n\n    if(options.skipLike !== undefined && options.skipLike.test(trimmedStr)) return str;\n    else if (options.hex && hexRegex.test(trimmedStr)) {\n        return Number.parseInt(trimmedStr, 16);\n    // } else if (options.parseOct && octRegex.test(str)) {\n    //     return Number.parseInt(val, 8);\n    // }else if (options.parseBin && binRegex.test(str)) {\n    //     return Number.parseInt(val, 2);\n    }else{\n        //separate negative sign, leading zeros, and rest number\n        const match = numRegex.exec(trimmedStr);\n        if(match){\n            const sign = match[1];\n            const leadingZeros = match[2];\n            let numTrimmedByZeros = trimZeros(match[3]); //complete num without leading zeros\n            //trim ending zeros for floating number\n            \n            const eNotation = match[4] || match[6];\n            if(!options.leadingZeros && leadingZeros.length > 0 && sign && trimmedStr[2] !== \".\") return str; //-0123\n            else if(!options.leadingZeros && leadingZeros.length > 0 && !sign && trimmedStr[1] !== \".\") return str; //0123\n            else{//no leading zeros or leading zeros are allowed\n                const num = Number(trimmedStr);\n                const numStr = \"\" + num;\n                if(numStr.search(/[eE]/) !== -1){ //given number is long and parsed to eNotation\n                    if(options.eNotation) return num;\n                    else return str;\n                }else if(eNotation){ //given number has enotation\n                    if(options.eNotation) return num;\n                    else return str;\n                }else if(trimmedStr.indexOf(\".\") !== -1){ //floating number\n                    // const decimalPart = match[5].substr(1);\n                    // const intPart = trimmedStr.substr(0,trimmedStr.indexOf(\".\"));\n\n                    \n                    // const p = numStr.indexOf(\".\");\n                    // const givenIntPart = numStr.substr(0,p);\n                    // const givenDecPart = numStr.substr(p+1);\n                    if(numStr === \"0\" && (numTrimmedByZeros === \"\") ) return num; //0.0\n                    else if(numStr === numTrimmedByZeros) return num; //0.456. 0.79000\n                    else if( sign && numStr === \"-\"+numTrimmedByZeros) return num;\n                    else return str;\n                }\n                \n                if(leadingZeros){\n                    // if(numTrimmedByZeros === numStr){\n                    //     if(options.leadingZeros) return num;\n                    //     else return str;\n                    // }else return str;\n                    if(numTrimmedByZeros === numStr) return num;\n                    else if(sign+numTrimmedByZeros === numStr) return num;\n                    else return str;\n                }\n\n                if(trimmedStr === numStr) return num;\n                else if(trimmedStr === sign+numStr) return num;\n                // else{\n                //     //number with +/- sign\n                //     trimmedStr.test(/[-+][0-9]);\n\n                // }\n                return str;\n            }\n            // else if(!eNotation && trimmedStr && trimmedStr !== Number(trimmedStr) ) return str;\n            \n        }else{ //non-numeric string\n            return str;\n        }\n    }\n}\n\n/**\n * \n * @param {string} numStr without leading zeros\n * @returns \n */\nfunction trimZeros(numStr){\n    if(numStr && numStr.indexOf(\".\") !== -1){//float\n        numStr = numStr.replace(/0+$/, \"\"); //remove ending zeros\n        if(numStr === \".\")  numStr = \"0\";\n        else if(numStr[0] === \".\")  numStr = \"0\"+numStr;\n        else if(numStr[numStr.length-1] === \".\")  numStr = numStr.substr(0,numStr.length-1);\n        return numStr;\n    }\n    return numStr;\n}\nmodule.exports = toNumber\n","'use strict';\n///@ts-check\n\nconst util = require('../util');\nconst xmlNode = require('./xmlNode');\nconst readDocType = require(\"./DocTypeReader\");\nconst toNumber = require(\"strnum\");\n\n// const regx =\n//   '<((!\\\\[CDATA\\\\[([\\\\s\\\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\\\/)(NAME)\\\\s*>))([^<]*)'\n//   .replace(/NAME/g, util.nameRegexp);\n\n//const tagsRegx = new RegExp(\"<(\\\\/?[\\\\w:\\\\-\\._]+)([^>]*)>(\\\\s*\"+cdataRegx+\")*([^<]+)?\",\"g\");\n//const tagsRegx = new RegExp(\"<(\\\\/?)((\\\\w*:)?([\\\\w:\\\\-\\._]+))([^>]*)>([^<]*)(\"+cdataRegx+\"([^<]*))*([^<]+)?\",\"g\");\n\nclass OrderedObjParser{\n  constructor(options){\n    this.options = options;\n    this.currentNode = null;\n    this.tagsNodeStack = [];\n    this.docTypeEntities = {};\n    this.lastEntities = {\n      \"apos\" : { regex: /&(apos|#39|#x27);/g, val : \"'\"},\n      \"gt\" : { regex: /&(gt|#62|#x3E);/g, val : \">\"},\n      \"lt\" : { regex: /&(lt|#60|#x3C);/g, val : \"<\"},\n      \"quot\" : { regex: /&(quot|#34|#x22);/g, val : \"\\\"\"},\n    };\n    this.ampEntity = { regex: /&(amp|#38|#x26);/g, val : \"&\"};\n    this.htmlEntities = {\n      \"space\": { regex: /&(nbsp|#160);/g, val: \" \" },\n      // \"lt\" : { regex: /&(lt|#60);/g, val: \"<\" },\n      // \"gt\" : { regex: /&(gt|#62);/g, val: \">\" },\n      // \"amp\" : { regex: /&(amp|#38);/g, val: \"&\" },\n      // \"quot\" : { regex: /&(quot|#34);/g, val: \"\\\"\" },\n      // \"apos\" : { regex: /&(apos|#39);/g, val: \"'\" },\n      \"cent\" : { regex: /&(cent|#162);/g, val: \"¢\" },\n      \"pound\" : { regex: /&(pound|#163);/g, val: \"£\" },\n      \"yen\" : { regex: /&(yen|#165);/g, val: \"¥\" },\n      \"euro\" : { regex: /&(euro|#8364);/g, val: \"€\" },\n      \"copyright\" : { regex: /&(copy|#169);/g, val: \"©\" },\n      \"reg\" : { regex: /&(reg|#174);/g, val: \"®\" },\n      \"inr\" : { regex: /&(inr|#8377);/g, val: \"₹\" },\n      \"num_dec\": { regex: /&#([0-9]{1,7});/g, val : (_, str) => String.fromCharCode(Number.parseInt(str, 10)) },\n      \"num_hex\": { regex: /&#x([0-9a-fA-F]{1,6});/g, val : (_, str) => String.fromCharCode(Number.parseInt(str, 16)) },\n    };\n    this.addExternalEntities = addExternalEntities;\n    this.parseXml = parseXml;\n    this.parseTextData = parseTextData;\n    this.resolveNameSpace = resolveNameSpace;\n    this.buildAttributesMap = buildAttributesMap;\n    this.isItStopNode = isItStopNode;\n    this.replaceEntitiesValue = replaceEntitiesValue;\n    this.readStopNodeData = readStopNodeData;\n    this.saveTextToParentTag = saveTextToParentTag;\n    this.addChild = addChild;\n  }\n\n}\n\nfunction addExternalEntities(externalEntities){\n  const entKeys = Object.keys(externalEntities);\n  for (let i = 0; i < entKeys.length; i++) {\n    const ent = entKeys[i];\n    this.lastEntities[ent] = {\n       regex: new RegExp(\"&\"+ent+\";\",\"g\"),\n       val : externalEntities[ent]\n    }\n  }\n}\n\n/**\n * @param {string} val\n * @param {string} tagName\n * @param {string} jPath\n * @param {boolean} dontTrim\n * @param {boolean} hasAttributes\n * @param {boolean} isLeafNode\n * @param {boolean} escapeEntities\n */\nfunction parseTextData(val, tagName, jPath, dontTrim, hasAttributes, isLeafNode, escapeEntities) {\n  if (val !== undefined) {\n    if (this.options.trimValues && !dontTrim) {\n      val = val.trim();\n    }\n    if(val.length > 0){\n      if(!escapeEntities) val = this.replaceEntitiesValue(val);\n      \n      const newval = this.options.tagValueProcessor(tagName, val, jPath, hasAttributes, isLeafNode);\n      if(newval === null || newval === undefined){\n        //don't parse\n        return val;\n      }else if(typeof newval !== typeof val || newval !== val){\n        //overwrite\n        return newval;\n      }else if(this.options.trimValues){\n        return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n      }else{\n        const trimmedVal = val.trim();\n        if(trimmedVal === val){\n          return parseValue(val, this.options.parseTagValue, this.options.numberParseOptions);\n        }else{\n          return val;\n        }\n      }\n    }\n  }\n}\n\nfunction resolveNameSpace(tagname) {\n  if (this.options.removeNSPrefix) {\n    const tags = tagname.split(':');\n    const prefix = tagname.charAt(0) === '/' ? '/' : '';\n    if (tags[0] === 'xmlns') {\n      return '';\n    }\n    if (tags.length === 2) {\n      tagname = prefix + tags[1];\n    }\n  }\n  return tagname;\n}\n\n//TODO: change regex to capture NS\n//const attrsRegx = new RegExp(\"([\\\\w\\\\-\\\\.\\\\:]+)\\\\s*=\\\\s*(['\\\"])((.|\\n)*?)\\\\2\",\"gm\");\nconst attrsRegx = new RegExp('([^\\\\s=]+)\\\\s*(=\\\\s*([\\'\"])([\\\\s\\\\S]*?)\\\\3)?', 'gm');\n\nfunction buildAttributesMap(attrStr, jPath, tagName) {\n  if (!this.options.ignoreAttributes && typeof attrStr === 'string') {\n    // attrStr = attrStr.replace(/\\r?\\n/g, ' ');\n    //attrStr = attrStr || attrStr.trim();\n\n    const matches = util.getAllMatches(attrStr, attrsRegx);\n    const len = matches.length; //don't make it inline\n    const attrs = {};\n    for (let i = 0; i < len; i++) {\n      const attrName = this.resolveNameSpace(matches[i][1]);\n      let oldVal = matches[i][4];\n      let aName = this.options.attributeNamePrefix + attrName;\n      if (attrName.length) {\n        if (this.options.transformAttributeName) {\n          aName = this.options.transformAttributeName(aName);\n        }\n        if(aName === \"__proto__\") aName  = \"#__proto__\";\n        if (oldVal !== undefined) {\n          if (this.options.trimValues) {\n            oldVal = oldVal.trim();\n          }\n          oldVal = this.replaceEntitiesValue(oldVal);\n          const newVal = this.options.attributeValueProcessor(attrName, oldVal, jPath);\n          if(newVal === null || newVal === undefined){\n            //don't parse\n            attrs[aName] = oldVal;\n          }else if(typeof newVal !== typeof oldVal || newVal !== oldVal){\n            //overwrite\n            attrs[aName] = newVal;\n          }else{\n            //parse\n            attrs[aName] = parseValue(\n              oldVal,\n              this.options.parseAttributeValue,\n              this.options.numberParseOptions\n            );\n          }\n        } else if (this.options.allowBooleanAttributes) {\n          attrs[aName] = true;\n        }\n      }\n    }\n    if (!Object.keys(attrs).length) {\n      return;\n    }\n    if (this.options.attributesGroupName) {\n      const attrCollection = {};\n      attrCollection[this.options.attributesGroupName] = attrs;\n      return attrCollection;\n    }\n    return attrs\n  }\n}\n\nconst parseXml = function(xmlData) {\n  xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\"); //TODO: remove this line\n  const xmlObj = new xmlNode('!xml');\n  let currentNode = xmlObj;\n  let textData = \"\";\n  let jPath = \"\";\n  for(let i=0; i< xmlData.length; i++){//for each char in XML data\n    const ch = xmlData[i];\n    if(ch === '<'){\n      // const nextIndex = i+1;\n      // const _2ndChar = xmlData[nextIndex];\n      if( xmlData[i+1] === '/') {//Closing Tag\n        const closeIndex = findClosingIndex(xmlData, \">\", i, \"Closing Tag is not closed.\")\n        let tagName = xmlData.substring(i+2,closeIndex).trim();\n\n        if(this.options.removeNSPrefix){\n          const colonIndex = tagName.indexOf(\":\");\n          if(colonIndex !== -1){\n            tagName = tagName.substr(colonIndex+1);\n          }\n        }\n\n        if(this.options.transformTagName) {\n          tagName = this.options.transformTagName(tagName);\n        }\n\n        if(currentNode){\n          textData = this.saveTextToParentTag(textData, currentNode, jPath);\n        }\n\n        //check if last tag of nested tag was unpaired tag\n        const lastTagName = jPath.substring(jPath.lastIndexOf(\".\")+1);\n        if(tagName && this.options.unpairedTags.indexOf(tagName) !== -1 ){\n          throw new Error(`Unpaired tag can not be used as closing tag: </${tagName}>`);\n        }\n        let propIndex = 0\n        if(lastTagName && this.options.unpairedTags.indexOf(lastTagName) !== -1 ){\n          propIndex = jPath.lastIndexOf('.', jPath.lastIndexOf('.')-1)\n          this.tagsNodeStack.pop();\n        }else{\n          propIndex = jPath.lastIndexOf(\".\");\n        }\n        jPath = jPath.substring(0, propIndex);\n\n        currentNode = this.tagsNodeStack.pop();//avoid recursion, set the parent tag scope\n        textData = \"\";\n        i = closeIndex;\n      } else if( xmlData[i+1] === '?') {\n\n        let tagData = readTagExp(xmlData,i, false, \"?>\");\n        if(!tagData) throw new Error(\"Pi Tag is not closed.\");\n\n        textData = this.saveTextToParentTag(textData, currentNode, jPath);\n        if( (this.options.ignoreDeclaration && tagData.tagName === \"?xml\") || this.options.ignorePiTags){\n\n        }else{\n  \n          const childNode = new xmlNode(tagData.tagName);\n          childNode.add(this.options.textNodeName, \"\");\n          \n          if(tagData.tagName !== tagData.tagExp && tagData.attrExpPresent){\n            childNode[\":@\"] = this.buildAttributesMap(tagData.tagExp, jPath, tagData.tagName);\n          }\n          this.addChild(currentNode, childNode, jPath)\n\n        }\n\n\n        i = tagData.closeIndex + 1;\n      } else if(xmlData.substr(i + 1, 3) === '!--') {\n        const endIndex = findClosingIndex(xmlData, \"-->\", i+4, \"Comment is not closed.\")\n        if(this.options.commentPropName){\n          const comment = xmlData.substring(i + 4, endIndex - 2);\n\n          textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n          currentNode.add(this.options.commentPropName, [ { [this.options.textNodeName] : comment } ]);\n        }\n        i = endIndex;\n      } else if( xmlData.substr(i + 1, 2) === '!D') {\n        const result = readDocType(xmlData, i);\n        this.docTypeEntities = result.entities;\n        i = result.i;\n      }else if(xmlData.substr(i + 1, 2) === '![') {\n        const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"CDATA is not closed.\") - 2;\n        const tagExp = xmlData.substring(i + 9,closeIndex);\n\n        textData = this.saveTextToParentTag(textData, currentNode, jPath);\n\n        let val = this.parseTextData(tagExp, currentNode.tagname, jPath, true, false, true, true);\n        if(val == undefined) val = \"\";\n\n        //cdata should be set even if it is 0 length string\n        if(this.options.cdataPropName){\n          currentNode.add(this.options.cdataPropName, [ { [this.options.textNodeName] : tagExp } ]);\n        }else{\n          currentNode.add(this.options.textNodeName, val);\n        }\n        \n        i = closeIndex + 2;\n      }else {//Opening tag\n        let result = readTagExp(xmlData,i, this.options.removeNSPrefix);\n        let tagName= result.tagName;\n        const rawTagName = result.rawTagName;\n        let tagExp = result.tagExp;\n        let attrExpPresent = result.attrExpPresent;\n        let closeIndex = result.closeIndex;\n\n        if (this.options.transformTagName) {\n          tagName = this.options.transformTagName(tagName);\n        }\n        \n        //save text as child node\n        if (currentNode && textData) {\n          if(currentNode.tagname !== '!xml'){\n            //when nested tag is found\n            textData = this.saveTextToParentTag(textData, currentNode, jPath, false);\n          }\n        }\n\n        //check if last tag was unpaired tag\n        const lastTag = currentNode;\n        if(lastTag && this.options.unpairedTags.indexOf(lastTag.tagname) !== -1 ){\n          currentNode = this.tagsNodeStack.pop();\n          jPath = jPath.substring(0, jPath.lastIndexOf(\".\"));\n        }\n        if(tagName !== xmlObj.tagname){\n          jPath += jPath ? \".\" + tagName : tagName;\n        }\n        if (this.isItStopNode(this.options.stopNodes, jPath, tagName)) {\n          let tagContent = \"\";\n          //self-closing tag\n          if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n            if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n              tagName = tagName.substr(0, tagName.length - 1);\n              jPath = jPath.substr(0, jPath.length - 1);\n              tagExp = tagName;\n            }else{\n              tagExp = tagExp.substr(0, tagExp.length - 1);\n            }\n            i = result.closeIndex;\n          }\n          //unpaired tag\n          else if(this.options.unpairedTags.indexOf(tagName) !== -1){\n            \n            i = result.closeIndex;\n          }\n          //normal tag\n          else{\n            //read until closing tag is found\n            const result = this.readStopNodeData(xmlData, rawTagName, closeIndex + 1);\n            if(!result) throw new Error(`Unexpected end of ${rawTagName}`);\n            i = result.i;\n            tagContent = result.tagContent;\n          }\n\n          const childNode = new xmlNode(tagName);\n          if(tagName !== tagExp && attrExpPresent){\n            childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n          }\n          if(tagContent) {\n            tagContent = this.parseTextData(tagContent, tagName, jPath, true, attrExpPresent, true, true);\n          }\n          \n          jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n          childNode.add(this.options.textNodeName, tagContent);\n          \n          this.addChild(currentNode, childNode, jPath)\n        }else{\n  //selfClosing tag\n          if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){\n            if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n              tagName = tagName.substr(0, tagName.length - 1);\n              jPath = jPath.substr(0, jPath.length - 1);\n              tagExp = tagName;\n            }else{\n              tagExp = tagExp.substr(0, tagExp.length - 1);\n            }\n            \n            if(this.options.transformTagName) {\n              tagName = this.options.transformTagName(tagName);\n            }\n\n            const childNode = new xmlNode(tagName);\n            if(tagName !== tagExp && attrExpPresent){\n              childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n            }\n            this.addChild(currentNode, childNode, jPath)\n            jPath = jPath.substr(0, jPath.lastIndexOf(\".\"));\n          }\n    //opening tag\n          else{\n            const childNode = new xmlNode( tagName);\n            this.tagsNodeStack.push(currentNode);\n            \n            if(tagName !== tagExp && attrExpPresent){\n              childNode[\":@\"] = this.buildAttributesMap(tagExp, jPath, tagName);\n            }\n            this.addChild(currentNode, childNode, jPath)\n            currentNode = childNode;\n          }\n          textData = \"\";\n          i = closeIndex;\n        }\n      }\n    }else{\n      textData += xmlData[i];\n    }\n  }\n  return xmlObj.child;\n}\n\nfunction addChild(currentNode, childNode, jPath){\n  const result = this.options.updateTag(childNode.tagname, jPath, childNode[\":@\"])\n  if(result === false){\n  }else if(typeof result === \"string\"){\n    childNode.tagname = result\n    currentNode.addChild(childNode);\n  }else{\n    currentNode.addChild(childNode);\n  }\n}\n\nconst replaceEntitiesValue = function(val){\n\n  if(this.options.processEntities){\n    for(let entityName in this.docTypeEntities){\n      const entity = this.docTypeEntities[entityName];\n      val = val.replace( entity.regx, entity.val);\n    }\n    for(let entityName in this.lastEntities){\n      const entity = this.lastEntities[entityName];\n      val = val.replace( entity.regex, entity.val);\n    }\n    if(this.options.htmlEntities){\n      for(let entityName in this.htmlEntities){\n        const entity = this.htmlEntities[entityName];\n        val = val.replace( entity.regex, entity.val);\n      }\n    }\n    val = val.replace( this.ampEntity.regex, this.ampEntity.val);\n  }\n  return val;\n}\nfunction saveTextToParentTag(textData, currentNode, jPath, isLeafNode) {\n  if (textData) { //store previously collected data as textNode\n    if(isLeafNode === undefined) isLeafNode = Object.keys(currentNode.child).length === 0\n    \n    textData = this.parseTextData(textData,\n      currentNode.tagname,\n      jPath,\n      false,\n      currentNode[\":@\"] ? Object.keys(currentNode[\":@\"]).length !== 0 : false,\n      isLeafNode);\n\n    if (textData !== undefined && textData !== \"\")\n      currentNode.add(this.options.textNodeName, textData);\n    textData = \"\";\n  }\n  return textData;\n}\n\n//TODO: use jPath to simplify the logic\n/**\n * \n * @param {string[]} stopNodes \n * @param {string} jPath\n * @param {string} currentTagName \n */\nfunction isItStopNode(stopNodes, jPath, currentTagName){\n  const allNodesExp = \"*.\" + currentTagName;\n  for (const stopNodePath in stopNodes) {\n    const stopNodeExp = stopNodes[stopNodePath];\n    if( allNodesExp === stopNodeExp || jPath === stopNodeExp  ) return true;\n  }\n  return false;\n}\n\n/**\n * Returns the tag Expression and where it is ending handling single-double quotes situation\n * @param {string} xmlData \n * @param {number} i starting index\n * @returns \n */\nfunction tagExpWithClosingIndex(xmlData, i, closingChar = \">\"){\n  let attrBoundary;\n  let tagExp = \"\";\n  for (let index = i; index < xmlData.length; index++) {\n    let ch = xmlData[index];\n    if (attrBoundary) {\n        if (ch === attrBoundary) attrBoundary = \"\";//reset\n    } else if (ch === '\"' || ch === \"'\") {\n        attrBoundary = ch;\n    } else if (ch === closingChar[0]) {\n      if(closingChar[1]){\n        if(xmlData[index + 1] === closingChar[1]){\n          return {\n            data: tagExp,\n            index: index\n          }\n        }\n      }else{\n        return {\n          data: tagExp,\n          index: index\n        }\n      }\n    } else if (ch === '\\t') {\n      ch = \" \"\n    }\n    tagExp += ch;\n  }\n}\n\nfunction findClosingIndex(xmlData, str, i, errMsg){\n  const closingIndex = xmlData.indexOf(str, i);\n  if(closingIndex === -1){\n    throw new Error(errMsg)\n  }else{\n    return closingIndex + str.length - 1;\n  }\n}\n\nfunction readTagExp(xmlData,i, removeNSPrefix, closingChar = \">\"){\n  const result = tagExpWithClosingIndex(xmlData, i+1, closingChar);\n  if(!result) return;\n  let tagExp = result.data;\n  const closeIndex = result.index;\n  const separatorIndex = tagExp.search(/\\s/);\n  let tagName = tagExp;\n  let attrExpPresent = true;\n  if(separatorIndex !== -1){//separate tag name and attributes expression\n    tagName = tagExp.substring(0, separatorIndex);\n    tagExp = tagExp.substring(separatorIndex + 1).trimStart();\n  }\n\n  const rawTagName = tagName;\n  if(removeNSPrefix){\n    const colonIndex = tagName.indexOf(\":\");\n    if(colonIndex !== -1){\n      tagName = tagName.substr(colonIndex+1);\n      attrExpPresent = tagName !== result.data.substr(colonIndex + 1);\n    }\n  }\n\n  return {\n    tagName: tagName,\n    tagExp: tagExp,\n    closeIndex: closeIndex,\n    attrExpPresent: attrExpPresent,\n    rawTagName: rawTagName,\n  }\n}\n/**\n * find paired tag for a stop node\n * @param {string} xmlData \n * @param {string} tagName \n * @param {number} i \n */\nfunction readStopNodeData(xmlData, tagName, i){\n  const startIndex = i;\n  // Starting at 1 since we already have an open tag\n  let openTagCount = 1;\n\n  for (; i < xmlData.length; i++) {\n    if( xmlData[i] === \"<\"){ \n      if (xmlData[i+1] === \"/\") {//close tag\n          const closeIndex = findClosingIndex(xmlData, \">\", i, `${tagName} is not closed`);\n          let closeTagName = xmlData.substring(i+2,closeIndex).trim();\n          if(closeTagName === tagName){\n            openTagCount--;\n            if (openTagCount === 0) {\n              return {\n                tagContent: xmlData.substring(startIndex, i),\n                i : closeIndex\n              }\n            }\n          }\n          i=closeIndex;\n        } else if(xmlData[i+1] === '?') { \n          const closeIndex = findClosingIndex(xmlData, \"?>\", i+1, \"StopNode is not closed.\")\n          i=closeIndex;\n        } else if(xmlData.substr(i + 1, 3) === '!--') { \n          const closeIndex = findClosingIndex(xmlData, \"-->\", i+3, \"StopNode is not closed.\")\n          i=closeIndex;\n        } else if(xmlData.substr(i + 1, 2) === '![') { \n          const closeIndex = findClosingIndex(xmlData, \"]]>\", i, \"StopNode is not closed.\") - 2;\n          i=closeIndex;\n        } else {\n          const tagData = readTagExp(xmlData, i, '>')\n\n          if (tagData) {\n            const openTagName = tagData && tagData.tagName;\n            if (openTagName === tagName && tagData.tagExp[tagData.tagExp.length-1] !== \"/\") {\n              openTagCount++;\n            }\n            i=tagData.closeIndex;\n          }\n        }\n      }\n  }//end for loop\n}\n\nfunction parseValue(val, shouldParse, options) {\n  if (shouldParse && typeof val === 'string') {\n    //console.log(options)\n    const newval = val.trim();\n    if(newval === 'true' ) return true;\n    else if(newval === 'false' ) return false;\n    else return toNumber(val, options);\n  } else {\n    if (util.isExist(val)) {\n      return val;\n    } else {\n      return '';\n    }\n  }\n}\n\n\nmodule.exports = OrderedObjParser;\n","'use strict';\n\n/**\n * \n * @param {array} node \n * @param {any} options \n * @returns \n */\nfunction prettify(node, options){\n  return compress( node, options);\n}\n\n/**\n * \n * @param {array} arr \n * @param {object} options \n * @param {string} jPath \n * @returns object\n */\nfunction compress(arr, options, jPath){\n  let text;\n  const compressedObj = {};\n  for (let i = 0; i < arr.length; i++) {\n    const tagObj = arr[i];\n    const property = propName(tagObj);\n    let newJpath = \"\";\n    if(jPath === undefined) newJpath = property;\n    else newJpath = jPath + \".\" + property;\n\n    if(property === options.textNodeName){\n      if(text === undefined) text = tagObj[property];\n      else text += \"\" + tagObj[property];\n    }else if(property === undefined){\n      continue;\n    }else if(tagObj[property]){\n      \n      let val = compress(tagObj[property], options, newJpath);\n      const isLeaf = isLeafTag(val, options);\n\n      if(tagObj[\":@\"]){\n        assignAttributes( val, tagObj[\":@\"], newJpath, options);\n      }else if(Object.keys(val).length === 1 && val[options.textNodeName] !== undefined && !options.alwaysCreateTextNode){\n        val = val[options.textNodeName];\n      }else if(Object.keys(val).length === 0){\n        if(options.alwaysCreateTextNode) val[options.textNodeName] = \"\";\n        else val = \"\";\n      }\n\n      if(compressedObj[property] !== undefined && compressedObj.hasOwnProperty(property)) {\n        if(!Array.isArray(compressedObj[property])) {\n            compressedObj[property] = [ compressedObj[property] ];\n        }\n        compressedObj[property].push(val);\n      }else{\n        //TODO: if a node is not an array, then check if it should be an array\n        //also determine if it is a leaf node\n        if (options.isArray(property, newJpath, isLeaf )) {\n          compressedObj[property] = [val];\n        }else{\n          compressedObj[property] = val;\n        }\n      }\n    }\n    \n  }\n  // if(text && text.length > 0) compressedObj[options.textNodeName] = text;\n  if(typeof text === \"string\"){\n    if(text.length > 0) compressedObj[options.textNodeName] = text;\n  }else if(text !== undefined) compressedObj[options.textNodeName] = text;\n  return compressedObj;\n}\n\nfunction propName(obj){\n  const keys = Object.keys(obj);\n  for (let i = 0; i < keys.length; i++) {\n    const key = keys[i];\n    if(key !== \":@\") return key;\n  }\n}\n\nfunction assignAttributes(obj, attrMap, jpath, options){\n  if (attrMap) {\n    const keys = Object.keys(attrMap);\n    const len = keys.length; //don't make it inline\n    for (let i = 0; i < len; i++) {\n      const atrrName = keys[i];\n      if (options.isArray(atrrName, jpath + \".\" + atrrName, true, true)) {\n        obj[atrrName] = [ attrMap[atrrName] ];\n      } else {\n        obj[atrrName] = attrMap[atrrName];\n      }\n    }\n  }\n}\n\nfunction isLeafTag(obj, options){\n  const { textNodeName } = options;\n  const propCount = Object.keys(obj).length;\n  \n  if (propCount === 0) {\n    return true;\n  }\n\n  if (\n    propCount === 1 &&\n    (obj[textNodeName] || typeof obj[textNodeName] === \"boolean\" || obj[textNodeName] === 0)\n  ) {\n    return true;\n  }\n\n  return false;\n}\nexports.prettify = prettify;\n","const { buildOptions} = require(\"./OptionsBuilder\");\nconst OrderedObjParser = require(\"./OrderedObjParser\");\nconst { prettify} = require(\"./node2json\");\nconst validator = require('../validator');\n\nclass XMLParser{\n    \n    constructor(options){\n        this.externalEntities = {};\n        this.options = buildOptions(options);\n        \n    }\n    /**\n     * Parse XML dats to JS object \n     * @param {string|Buffer} xmlData \n     * @param {boolean|Object} validationOption \n     */\n    parse(xmlData,validationOption){\n        if(typeof xmlData === \"string\"){\n        }else if( xmlData.toString){\n            xmlData = xmlData.toString();\n        }else{\n            throw new Error(\"XML data is accepted in String or Bytes[] form.\")\n        }\n        if( validationOption){\n            if(validationOption === true) validationOption = {}; //validate with default options\n            \n            const result = validator.validate(xmlData, validationOption);\n            if (result !== true) {\n              throw Error( `${result.err.msg}:${result.err.line}:${result.err.col}` )\n            }\n          }\n        const orderedObjParser = new OrderedObjParser(this.options);\n        orderedObjParser.addExternalEntities(this.externalEntities);\n        const orderedResult = orderedObjParser.parseXml(xmlData);\n        if(this.options.preserveOrder || orderedResult === undefined) return orderedResult;\n        else return prettify(orderedResult, this.options);\n    }\n\n    /**\n     * Add Entity which is not by default supported by this library\n     * @param {string} key \n     * @param {string} value \n     */\n    addEntity(key, value){\n        if(value.indexOf(\"&\") !== -1){\n            throw new Error(\"Entity value can't have '&'\")\n        }else if(key.indexOf(\"&\") !== -1 || key.indexOf(\";\") !== -1){\n            throw new Error(\"An entity must be set without '&' and ';'. Eg. use '#xD' for '&#xD;'\")\n        }else if(value === \"&\"){\n            throw new Error(\"An entity with value '&' is not permitted\");\n        }else{\n            this.externalEntities[key] = value;\n        }\n    }\n}\n\nmodule.exports = XMLParser;","const EOL = \"\\n\";\n\n/**\n * \n * @param {array} jArray \n * @param {any} options \n * @returns \n */\nfunction toXml(jArray, options) {\n    let indentation = \"\";\n    if (options.format && options.indentBy.length > 0) {\n        indentation = EOL;\n    }\n    return arrToStr(jArray, options, \"\", indentation);\n}\n\nfunction arrToStr(arr, options, jPath, indentation) {\n    let xmlStr = \"\";\n    let isPreviousElementTag = false;\n\n    for (let i = 0; i < arr.length; i++) {\n        const tagObj = arr[i];\n        const tagName = propName(tagObj);\n        if(tagName === undefined) continue;\n\n        let newJPath = \"\";\n        if (jPath.length === 0) newJPath = tagName\n        else newJPath = `${jPath}.${tagName}`;\n\n        if (tagName === options.textNodeName) {\n            let tagText = tagObj[tagName];\n            if (!isStopNode(newJPath, options)) {\n                tagText = options.tagValueProcessor(tagName, tagText);\n                tagText = replaceEntitiesValue(tagText, options);\n            }\n            if (isPreviousElementTag) {\n                xmlStr += indentation;\n            }\n            xmlStr += tagText;\n            isPreviousElementTag = false;\n            continue;\n        } else if (tagName === options.cdataPropName) {\n            if (isPreviousElementTag) {\n                xmlStr += indentation;\n            }\n            xmlStr += `<![CDATA[${tagObj[tagName][0][options.textNodeName]}]]>`;\n            isPreviousElementTag = false;\n            continue;\n        } else if (tagName === options.commentPropName) {\n            xmlStr += indentation + `<!--${tagObj[tagName][0][options.textNodeName]}-->`;\n            isPreviousElementTag = true;\n            continue;\n        } else if (tagName[0] === \"?\") {\n            const attStr = attr_to_str(tagObj[\":@\"], options);\n            const tempInd = tagName === \"?xml\" ? \"\" : indentation;\n            let piTextNodeName = tagObj[tagName][0][options.textNodeName];\n            piTextNodeName = piTextNodeName.length !== 0 ? \" \" + piTextNodeName : \"\"; //remove extra spacing\n            xmlStr += tempInd + `<${tagName}${piTextNodeName}${attStr}?>`;\n            isPreviousElementTag = true;\n            continue;\n        }\n        let newIdentation = indentation;\n        if (newIdentation !== \"\") {\n            newIdentation += options.indentBy;\n        }\n        const attStr = attr_to_str(tagObj[\":@\"], options);\n        const tagStart = indentation + `<${tagName}${attStr}`;\n        const tagValue = arrToStr(tagObj[tagName], options, newJPath, newIdentation);\n        if (options.unpairedTags.indexOf(tagName) !== -1) {\n            if (options.suppressUnpairedNode) xmlStr += tagStart + \">\";\n            else xmlStr += tagStart + \"/>\";\n        } else if ((!tagValue || tagValue.length === 0) && options.suppressEmptyNode) {\n            xmlStr += tagStart + \"/>\";\n        } else if (tagValue && tagValue.endsWith(\">\")) {\n            xmlStr += tagStart + `>${tagValue}${indentation}</${tagName}>`;\n        } else {\n            xmlStr += tagStart + \">\";\n            if (tagValue && indentation !== \"\" && (tagValue.includes(\"/>\") || tagValue.includes(\"</\"))) {\n                xmlStr += indentation + options.indentBy + tagValue + indentation;\n            } else {\n                xmlStr += tagValue;\n            }\n            xmlStr += `</${tagName}>`;\n        }\n        isPreviousElementTag = true;\n    }\n\n    return xmlStr;\n}\n\nfunction propName(obj) {\n    const keys = Object.keys(obj);\n    for (let i = 0; i < keys.length; i++) {\n        const key = keys[i];\n        if(!obj.hasOwnProperty(key)) continue;\n        if (key !== \":@\") return key;\n    }\n}\n\nfunction attr_to_str(attrMap, options) {\n    let attrStr = \"\";\n    if (attrMap && !options.ignoreAttributes) {\n        for (let attr in attrMap) {\n            if(!attrMap.hasOwnProperty(attr)) continue;\n            let attrVal = options.attributeValueProcessor(attr, attrMap[attr]);\n            attrVal = replaceEntitiesValue(attrVal, options);\n            if (attrVal === true && options.suppressBooleanAttributes) {\n                attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}`;\n            } else {\n                attrStr += ` ${attr.substr(options.attributeNamePrefix.length)}=\"${attrVal}\"`;\n            }\n        }\n    }\n    return attrStr;\n}\n\nfunction isStopNode(jPath, options) {\n    jPath = jPath.substr(0, jPath.length - options.textNodeName.length - 1);\n    let tagName = jPath.substr(jPath.lastIndexOf(\".\") + 1);\n    for (let index in options.stopNodes) {\n        if (options.stopNodes[index] === jPath || options.stopNodes[index] === \"*.\" + tagName) return true;\n    }\n    return false;\n}\n\nfunction replaceEntitiesValue(textValue, options) {\n    if (textValue && textValue.length > 0 && options.processEntities) {\n        for (let i = 0; i < options.entities.length; i++) {\n            const entity = options.entities[i];\n            textValue = textValue.replace(entity.regex, entity.val);\n        }\n    }\n    return textValue;\n}\nmodule.exports = toXml;\n","'use strict';\n//parse Empty Node as self closing node\nconst buildFromOrderedJs = require('./orderedJs2Xml');\n\nconst defaultOptions = {\n  attributeNamePrefix: '@_',\n  attributesGroupName: false,\n  textNodeName: '#text',\n  ignoreAttributes: true,\n  cdataPropName: false,\n  format: false,\n  indentBy: '  ',\n  suppressEmptyNode: false,\n  suppressUnpairedNode: true,\n  suppressBooleanAttributes: true,\n  tagValueProcessor: function(key, a) {\n    return a;\n  },\n  attributeValueProcessor: function(attrName, a) {\n    return a;\n  },\n  preserveOrder: false,\n  commentPropName: false,\n  unpairedTags: [],\n  entities: [\n    { regex: new RegExp(\"&\", \"g\"), val: \"&amp;\" },//it must be on top\n    { regex: new RegExp(\">\", \"g\"), val: \"&gt;\" },\n    { regex: new RegExp(\"<\", \"g\"), val: \"&lt;\" },\n    { regex: new RegExp(\"\\'\", \"g\"), val: \"&apos;\" },\n    { regex: new RegExp(\"\\\"\", \"g\"), val: \"&quot;\" }\n  ],\n  processEntities: true,\n  stopNodes: [],\n  // transformTagName: false,\n  // transformAttributeName: false,\n  oneListGroup: false\n};\n\nfunction Builder(options) {\n  this.options = Object.assign({}, defaultOptions, options);\n  if (this.options.ignoreAttributes || this.options.attributesGroupName) {\n    this.isAttribute = function(/*a*/) {\n      return false;\n    };\n  } else {\n    this.attrPrefixLen = this.options.attributeNamePrefix.length;\n    this.isAttribute = isAttribute;\n  }\n\n  this.processTextOrObjNode = processTextOrObjNode\n\n  if (this.options.format) {\n    this.indentate = indentate;\n    this.tagEndChar = '>\\n';\n    this.newLine = '\\n';\n  } else {\n    this.indentate = function() {\n      return '';\n    };\n    this.tagEndChar = '>';\n    this.newLine = '';\n  }\n}\n\nBuilder.prototype.build = function(jObj) {\n  if(this.options.preserveOrder){\n    return buildFromOrderedJs(jObj, this.options);\n  }else {\n    if(Array.isArray(jObj) && this.options.arrayNodeName && this.options.arrayNodeName.length > 1){\n      jObj = {\n        [this.options.arrayNodeName] : jObj\n      }\n    }\n    return this.j2x(jObj, 0).val;\n  }\n};\n\nBuilder.prototype.j2x = function(jObj, level) {\n  let attrStr = '';\n  let val = '';\n  for (let key in jObj) {\n    if(!Object.prototype.hasOwnProperty.call(jObj, key)) continue;\n    if (typeof jObj[key] === 'undefined') {\n      // supress undefined node only if it is not an attribute\n      if (this.isAttribute(key)) {\n        val += '';\n      }\n    } else if (jObj[key] === null) {\n      // null attribute should be ignored by the attribute list, but should not cause the tag closing\n      if (this.isAttribute(key)) {\n        val += '';\n      } else if (key[0] === '?') {\n        val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n      } else {\n        val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n      }\n      // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n    } else if (jObj[key] instanceof Date) {\n      val += this.buildTextValNode(jObj[key], key, '', level);\n    } else if (typeof jObj[key] !== 'object') {\n      //premitive type\n      const attr = this.isAttribute(key);\n      if (attr) {\n        attrStr += this.buildAttrPairStr(attr, '' + jObj[key]);\n      }else {\n        //tag value\n        if (key === this.options.textNodeName) {\n          let newval = this.options.tagValueProcessor(key, '' + jObj[key]);\n          val += this.replaceEntitiesValue(newval);\n        } else {\n          val += this.buildTextValNode(jObj[key], key, '', level);\n        }\n      }\n    } else if (Array.isArray(jObj[key])) {\n      //repeated nodes\n      const arrLen = jObj[key].length;\n      let listTagVal = \"\";\n      let listTagAttr = \"\";\n      for (let j = 0; j < arrLen; j++) {\n        const item = jObj[key][j];\n        if (typeof item === 'undefined') {\n          // supress undefined node\n        } else if (item === null) {\n          if(key[0] === \"?\") val += this.indentate(level) + '<' + key + '?' + this.tagEndChar;\n          else val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n          // val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n        } else if (typeof item === 'object') {\n          if(this.options.oneListGroup){\n            const result = this.j2x(item, level + 1);\n            listTagVal += result.val;\n            if (this.options.attributesGroupName && item.hasOwnProperty(this.options.attributesGroupName)) {\n              listTagAttr += result.attrStr\n            }\n          }else{\n            listTagVal += this.processTextOrObjNode(item, key, level)\n          }\n        } else {\n          if (this.options.oneListGroup) {\n            let textValue = this.options.tagValueProcessor(key, item);\n            textValue = this.replaceEntitiesValue(textValue);\n            listTagVal += textValue;\n          } else {\n            listTagVal += this.buildTextValNode(item, key, '', level);\n          }\n        }\n      }\n      if(this.options.oneListGroup){\n        listTagVal = this.buildObjectNode(listTagVal, key, listTagAttr, level);\n      }\n      val += listTagVal;\n    } else {\n      //nested node\n      if (this.options.attributesGroupName && key === this.options.attributesGroupName) {\n        const Ks = Object.keys(jObj[key]);\n        const L = Ks.length;\n        for (let j = 0; j < L; j++) {\n          attrStr += this.buildAttrPairStr(Ks[j], '' + jObj[key][Ks[j]]);\n        }\n      } else {\n        val += this.processTextOrObjNode(jObj[key], key, level)\n      }\n    }\n  }\n  return {attrStr: attrStr, val: val};\n};\n\nBuilder.prototype.buildAttrPairStr = function(attrName, val){\n  val = this.options.attributeValueProcessor(attrName, '' + val);\n  val = this.replaceEntitiesValue(val);\n  if (this.options.suppressBooleanAttributes && val === \"true\") {\n    return ' ' + attrName;\n  } else return ' ' + attrName + '=\"' + val + '\"';\n}\n\nfunction processTextOrObjNode (object, key, level) {\n  const result = this.j2x(object, level + 1);\n  if (object[this.options.textNodeName] !== undefined && Object.keys(object).length === 1) {\n    return this.buildTextValNode(object[this.options.textNodeName], key, result.attrStr, level);\n  } else {\n    return this.buildObjectNode(result.val, key, result.attrStr, level);\n  }\n}\n\nBuilder.prototype.buildObjectNode = function(val, key, attrStr, level) {\n  if(val === \"\"){\n    if(key[0] === \"?\") return  this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n    else {\n      return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n    }\n  }else{\n\n    let tagEndExp = '</' + key + this.tagEndChar;\n    let piClosingChar = \"\";\n    \n    if(key[0] === \"?\") {\n      piClosingChar = \"?\";\n      tagEndExp = \"\";\n    }\n  \n    // attrStr is an empty string in case the attribute came as undefined or null\n    if ((attrStr || attrStr === '') && val.indexOf('<') === -1) {\n      return ( this.indentate(level) + '<' +  key + attrStr + piClosingChar + '>' + val + tagEndExp );\n    } else if (this.options.commentPropName !== false && key === this.options.commentPropName && piClosingChar.length === 0) {\n      return this.indentate(level) + `<!--${val}-->` + this.newLine;\n    }else {\n      return (\n        this.indentate(level) + '<' + key + attrStr + piClosingChar + this.tagEndChar +\n        val +\n        this.indentate(level) + tagEndExp    );\n    }\n  }\n}\n\nBuilder.prototype.closeTag = function(key){\n  let closeTag = \"\";\n  if(this.options.unpairedTags.indexOf(key) !== -1){ //unpaired\n    if(!this.options.suppressUnpairedNode) closeTag = \"/\"\n  }else if(this.options.suppressEmptyNode){ //empty\n    closeTag = \"/\";\n  }else{\n    closeTag = `></${key}`\n  }\n  return closeTag;\n}\n\nfunction buildEmptyObjNode(val, key, attrStr, level) {\n  if (val !== '') {\n    return this.buildObjectNode(val, key, attrStr, level);\n  } else {\n    if(key[0] === \"?\") return  this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar;\n    else {\n      return  this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n      // return this.buildTagStr(level,key, attrStr);\n    }\n  }\n}\n\nBuilder.prototype.buildTextValNode = function(val, key, attrStr, level) {\n  if (this.options.cdataPropName !== false && key === this.options.cdataPropName) {\n    return this.indentate(level) + `<![CDATA[${val}]]>` +  this.newLine;\n  }else if (this.options.commentPropName !== false && key === this.options.commentPropName) {\n    return this.indentate(level) + `<!--${val}-->` +  this.newLine;\n  }else if(key[0] === \"?\") {//PI tag\n    return  this.indentate(level) + '<' + key + attrStr+ '?' + this.tagEndChar; \n  }else{\n    let textValue = this.options.tagValueProcessor(key, val);\n    textValue = this.replaceEntitiesValue(textValue);\n  \n    if( textValue === ''){\n      return this.indentate(level) + '<' + key + attrStr + this.closeTag(key) + this.tagEndChar;\n    }else{\n      return this.indentate(level) + '<' + key + attrStr + '>' +\n         textValue +\n        '</' + key + this.tagEndChar;\n    }\n  }\n}\n\nBuilder.prototype.replaceEntitiesValue = function(textValue){\n  if(textValue && textValue.length > 0 && this.options.processEntities){\n    for (let i=0; i<this.options.entities.length; i++) {\n      const entity = this.options.entities[i];\n      textValue = textValue.replace(entity.regex, entity.val);\n    }\n  }\n  return textValue;\n}\n\nfunction indentate(level) {\n  return this.options.indentBy.repeat(level);\n}\n\nfunction isAttribute(name /*, options*/) {\n  if (name.startsWith(this.options.attributeNamePrefix) && name !== this.options.textNodeName) {\n    return name.substr(this.attrPrefixLen);\n  } else {\n    return false;\n  }\n}\n\nmodule.exports = Builder;\n","'use strict';\n\nconst validator = require('./validator');\nconst XMLParser = require('./xmlparser/XMLParser');\nconst XMLBuilder = require('./xmlbuilder/json2xml');\n\nmodule.exports = {\n  XMLParser: XMLParser,\n  XMLValidator: validator,\n  XMLBuilder: XMLBuilder\n}","import { getValueFromTextNode } from \"@smithy/smithy-client\";\nimport { XMLParser } from \"fast-xml-parser\";\nimport { collectBodyString } from \"../common\";\nexport const parseXmlBody = (streamBody, context) => collectBodyString(streamBody, context).then((encoded) => {\n    if (encoded.length) {\n        const parser = new XMLParser({\n            attributeNamePrefix: \"\",\n            htmlEntities: true,\n            ignoreAttributes: false,\n            ignoreDeclaration: true,\n            parseTagValue: false,\n            trimValues: false,\n            tagValueProcessor: (_, val) => (val.trim() === \"\" && val.includes(\"\\n\") ? \"\" : undefined),\n        });\n        parser.addEntity(\"#xD\", \"\\r\");\n        parser.addEntity(\"#10\", \"\\n\");\n        let parsedObj;\n        try {\n            parsedObj = parser.parse(encoded, true);\n        }\n        catch (e) {\n            if (e && typeof e === \"object\") {\n                Object.defineProperty(e, \"$responseBodyText\", {\n                    value: encoded,\n                });\n            }\n            throw e;\n        }\n        const textNodeName = \"#text\";\n        const key = Object.keys(parsedObj)[0];\n        const parsedObjToReturn = parsedObj[key];\n        if (parsedObjToReturn[textNodeName]) {\n            parsedObjToReturn[key] = parsedObjToReturn[textNodeName];\n            delete parsedObjToReturn[textNodeName];\n        }\n        return getValueFromTextNode(parsedObjToReturn);\n    }\n    return {};\n});\nexport const parseXmlErrorBody = async (errorBody, context) => {\n    const value = await parseXmlBody(errorBody, context);\n    if (value.Error) {\n        value.Error.message = value.Error.message ?? value.Error.Message;\n    }\n    return value;\n};\nexport const loadRestXmlErrorCode = (output, data) => {\n    if (data?.Error?.Code !== undefined) {\n        return data.Error.Code;\n    }\n    if (data?.Code !== undefined) {\n        return data.Code;\n    }\n    if (output.statusCode == 404) {\n        return \"NotFound\";\n    }\n};\n","export * from \"./coercing-serializers\";\nexport * from \"./json/awsExpectUnion\";\nexport * from \"./json/parseJsonBody\";\nexport * from \"./xml/parseXmlBody\";\n","export * from \"./submodules/client/index\";\nexport * from \"./submodules/httpAuthSchemes/index\";\nexport * from \"./submodules/protocols/index\";\n","import { setFeature } from \"@aws-sdk/core\";\nconst ACCOUNT_ID_ENDPOINT_REGEX = /\\d{12}\\.ddb/;\nexport async function checkFeatures(context, config, args) {\n    const request = args.request;\n    if (request?.headers?.[\"smithy-protocol\"] === \"rpc-v2-cbor\") {\n        setFeature(context, \"PROTOCOL_RPC_V2_CBOR\", \"M\");\n    }\n    if (typeof config.retryStrategy === \"function\") {\n        const retryStrategy = await config.retryStrategy();\n        if (typeof retryStrategy.acquireInitialRetryToken === \"function\") {\n            if (retryStrategy.constructor?.name?.includes(\"Adaptive\")) {\n                setFeature(context, \"RETRY_MODE_ADAPTIVE\", \"F\");\n            }\n            else {\n                setFeature(context, \"RETRY_MODE_STANDARD\", \"E\");\n            }\n        }\n        else {\n            setFeature(context, \"RETRY_MODE_LEGACY\", \"D\");\n        }\n    }\n    if (typeof config.accountIdEndpointMode === \"function\") {\n        const endpointV2 = context.endpointV2;\n        if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) {\n            setFeature(context, \"ACCOUNT_ID_ENDPOINT\", \"O\");\n        }\n        switch (await config.accountIdEndpointMode?.()) {\n            case \"disabled\":\n                setFeature(context, \"ACCOUNT_ID_MODE_DISABLED\", \"Q\");\n                break;\n            case \"preferred\":\n                setFeature(context, \"ACCOUNT_ID_MODE_PREFERRED\", \"P\");\n                break;\n            case \"required\":\n                setFeature(context, \"ACCOUNT_ID_MODE_REQUIRED\", \"R\");\n                break;\n        }\n    }\n    const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity;\n    if (identity?.$source) {\n        const credentials = identity;\n        if (credentials.accountId) {\n            setFeature(context, \"RESOLVED_ACCOUNT_ID\", \"T\");\n        }\n        for (const [key, value] of Object.entries(credentials.$source ?? {})) {\n            setFeature(context, key, value);\n        }\n    }\n}\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","const BYTE_LIMIT = 1024;\nexport function encodeFeatures(features) {\n    let buffer = \"\";\n    for (const key in features) {\n        const val = features[key];\n        if (buffer.length + val.length + 1 <= BYTE_LIMIT) {\n            if (buffer.length) {\n                buffer += \",\" + val;\n            }\n            else {\n                buffer += val;\n            }\n            continue;\n        }\n        break;\n    }\n    return buffer;\n}\n","import { getUserAgentPrefix } from \"@aws-sdk/util-endpoints\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { checkFeatures } from \"./check-features\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nimport { encodeFeatures } from \"./encode-features\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n    const { request } = args;\n    if (!HttpRequest.isInstance(request)) {\n        return next(args);\n    }\n    const { headers } = request;\n    const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n    const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n    await checkFeatures(context, options, args);\n    const awsContext = context;\n    defaultUserAgent.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`);\n    const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n    const appId = await options.userAgentAppId();\n    if (appId) {\n        defaultUserAgent.push(escapeUserAgent([`app/${appId}`]));\n    }\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 * from \"./configurations\";\nexport * from \"./user-agent-middleware\";\n","export const booleanSelector = (obj, key, type) => {\n    if (!(key in obj))\n        return undefined;\n    if (obj[key] === \"true\")\n        return true;\n    if (obj[key] === \"false\")\n        return false;\n    throw new Error(`Cannot load ${type} \"${key}\". Expected \"true\" or \"false\", got ${obj[key]}.`);\n};\n","export const numberSelector = (obj, key, type) => {\n    if (!(key in obj))\n        return undefined;\n    const numberValue = parseInt(obj[key], 10);\n    if (Number.isNaN(numberValue)) {\n        throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);\n    }\n    return numberValue;\n};\n","export var SelectorType;\n(function (SelectorType) {\n    SelectorType[\"ENV\"] = \"env\";\n    SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\n","export * from \"./booleanSelector\";\nexport * from \"./numberSelector\";\nexport * from \"./types\";\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 { normalizeProvider } from \"@smithy/util-middleware\";\nexport const resolveCustomEndpointsConfig = (input) => {\n    const { endpoint, urlParser } = input;\n    return {\n        ...input,\n        tls: input.tls ?? true,\n        endpoint: normalizeProvider(typeof endpoint === \"string\" ? urlParser(endpoint) : endpoint),\n        isCustomEndpoint: true,\n        useDualstackEndpoint: normalizeProvider(input.useDualstackEndpoint ?? false),\n    };\n};\n","export const getEndpointFromRegion = async (input) => {\n    const { tls = true } = input;\n    const region = await input.region();\n    const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);\n    if (!dnsHostRegex.test(region)) {\n        throw new Error(\"Invalid region in client config\");\n    }\n    const useDualstackEndpoint = await input.useDualstackEndpoint();\n    const useFipsEndpoint = await input.useFipsEndpoint();\n    const { hostname } = (await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint })) ?? {};\n    if (!hostname) {\n        throw new Error(\"Cannot resolve hostname from client config\");\n    }\n    return input.urlParser(`${tls ? \"https:\" : \"http:\"}//${hostname}`);\n};\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { getEndpointFromRegion } from \"./utils/getEndpointFromRegion\";\nexport const resolveEndpointsConfig = (input) => {\n    const useDualstackEndpoint = normalizeProvider(input.useDualstackEndpoint ?? false);\n    const { endpoint, useFipsEndpoint, urlParser } = input;\n    return {\n        ...input,\n        tls: input.tls ?? true,\n        endpoint: endpoint\n            ? normalizeProvider(typeof endpoint === \"string\" ? urlParser(endpoint) : endpoint)\n            : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),\n        isCustomEndpoint: !!endpoint,\n        useDualstackEndpoint,\n    };\n};\n","export * from \"./NodeUseDualstackEndpointConfigOptions\";\nexport * from \"./NodeUseFipsEndpointConfigOptions\";\nexport * from \"./resolveCustomEndpointsConfig\";\nexport * from \"./resolveEndpointsConfig\";\n","export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n    configFileSelector: (profile) => profile[REGION_INI_NAME],\n    default: () => {\n        throw new Error(\"Region is missing\");\n    },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n    preferredFile: \"credentials\",\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","export * from \"./config\";\nexport * from \"./resolveRegionConfig\";\n","export {};\n","export {};\n","export const getHostnameFromVariants = (variants = [], { useFipsEndpoint, useDualstackEndpoint }) => variants.find(({ tags }) => useFipsEndpoint === tags.includes(\"fips\") && useDualstackEndpoint === tags.includes(\"dualstack\"))?.hostname;\n","export const getResolvedHostname = (resolvedRegion, { regionHostname, partitionHostname }) => regionHostname\n    ? regionHostname\n    : partitionHostname\n        ? partitionHostname.replace(\"{region}\", resolvedRegion)\n        : undefined;\n","export const getResolvedPartition = (region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? \"aws\";\n","export const getResolvedSigningRegion = (hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {\n    if (signingRegion) {\n        return signingRegion;\n    }\n    else if (useFipsEndpoint) {\n        const regionRegexJs = regionRegex.replace(\"\\\\\\\\\", \"\\\\\").replace(/^\\^/g, \"\\\\.\").replace(/\\$$/g, \"\\\\.\");\n        const regionRegexmatchArray = hostname.match(regionRegexJs);\n        if (regionRegexmatchArray) {\n            return regionRegexmatchArray[0].slice(1, -1);\n        }\n    }\n};\n","import { getHostnameFromVariants } from \"./getHostnameFromVariants\";\nimport { getResolvedHostname } from \"./getResolvedHostname\";\nimport { getResolvedPartition } from \"./getResolvedPartition\";\nimport { getResolvedSigningRegion } from \"./getResolvedSigningRegion\";\nexport const getRegionInfo = (region, { useFipsEndpoint = false, useDualstackEndpoint = false, signingService, regionHash, partitionHash, }) => {\n    const partition = getResolvedPartition(region, { partitionHash });\n    const resolvedRegion = region in regionHash ? region : partitionHash[partition]?.endpoint ?? region;\n    const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };\n    const regionHostname = getHostnameFromVariants(regionHash[resolvedRegion]?.variants, hostnameOptions);\n    const partitionHostname = getHostnameFromVariants(partitionHash[partition]?.variants, hostnameOptions);\n    const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });\n    if (hostname === undefined) {\n        throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);\n    }\n    const signingRegion = getResolvedSigningRegion(hostname, {\n        signingRegion: regionHash[resolvedRegion]?.signingRegion,\n        regionRegex: partitionHash[partition].regionRegex,\n        useFipsEndpoint,\n    });\n    return {\n        partition,\n        signingService,\n        hostname,\n        ...(signingRegion && { signingRegion }),\n        ...(regionHash[resolvedRegion]?.signingService && {\n            signingService: regionHash[resolvedRegion].signingService,\n        }),\n    };\n};\n","export * from \"./PartitionHash\";\nexport * from \"./RegionHash\";\nexport * from \"./getRegionInfo\";\n","export * from \"./endpointsConfig\";\nexport * from \"./regionConfig\";\nexport * from \"./regionInfo\";\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","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 * from \"./s3\";\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 function getSelectorName(functionString) {\n    try {\n        const constants = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));\n        constants.delete(\"CONFIG\");\n        constants.delete(\"CONFIG_PREFIX_SEPARATOR\");\n        constants.delete(\"ENV\");\n        return [...constants].join(\", \");\n    }\n    catch (e) {\n        return functionString;\n    }\n}\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getSelectorName } from \"./getSelectorName\";\nexport const fromEnv = (envVarSelector, logger) => async () => {\n    try {\n        const config = envVarSelector(process.env);\n        if (config === undefined) {\n            throw new Error();\n        }\n        return config;\n    }\n    catch (e) {\n        throw new CredentialsProviderError(e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`, { logger });\n    }\n};\n","import { homedir } from \"os\";\nimport { sep } from \"path\";\nconst homeDirCache = {};\nconst getHomeDirCacheKey = () => {\n    if (process && process.geteuid) {\n        return `${process.geteuid()}`;\n    }\n    return \"DEFAULT\";\n};\nexport const getHomeDir = () => {\n    const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${sep}` } = process.env;\n    if (HOME)\n        return HOME;\n    if (USERPROFILE)\n        return USERPROFILE;\n    if (HOMEPATH)\n        return `${HOMEDRIVE}${HOMEPATH}`;\n    const homeDirCacheKey = getHomeDirCacheKey();\n    if (!homeDirCache[homeDirCacheKey])\n        homeDirCache[homeDirCacheKey] = homedir();\n    return homeDirCache[homeDirCacheKey];\n};\n","export const ENV_PROFILE = \"AWS_PROFILE\";\nexport const DEFAULT_PROFILE = \"default\";\nexport const getProfileName = (init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE;\n","import { createHash } from \"crypto\";\nimport { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const getSSOTokenFilepath = (id) => {\n    const hasher = createHash(\"sha1\");\n    const cacheName = hasher.update(id).digest(\"hex\");\n    return join(getHomeDir(), \".aws\", \"sso\", \"cache\", `${cacheName}.json`);\n};\n","import { promises as fsPromises } from \"fs\";\nimport { getSSOTokenFilepath } from \"./getSSOTokenFilepath\";\nconst { readFile } = fsPromises;\nexport const getSSOTokenFromFile = async (id) => {\n    const ssoTokenFilepath = getSSOTokenFilepath(id);\n    const ssoTokenText = await readFile(ssoTokenFilepath, \"utf8\");\n    return JSON.parse(ssoTokenText);\n};\n","import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nexport const getConfigData = (data) => Object.entries(data)\n    .filter(([key]) => {\n    const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n    if (indexOfSeparator === -1) {\n        return false;\n    }\n    return Object.values(IniSectionType).includes(key.substring(0, indexOfSeparator));\n})\n    .reduce((acc, [key, value]) => {\n    const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n    const updatedKey = key.substring(0, indexOfSeparator) === IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;\n    acc[updatedKey] = value;\n    return acc;\n}, {\n    ...(data.default && { default: data.default }),\n});\n","import { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nexport const getConfigFilepath = () => process.env[ENV_CONFIG_PATH] || join(getHomeDir(), \".aws\", \"config\");\n","import { join } from \"path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nexport const getCredentialsFilepath = () => process.env[ENV_CREDENTIALS_PATH] || join(getHomeDir(), \".aws\", \"credentials\");\n","import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nconst prefixKeyRegex = /^([\\w-]+)\\s([\"'])?([\\w-@\\+\\.%:/]+)\\2$/;\nconst profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nexport const parseIni = (iniData) => {\n    const map = {};\n    let currentSection;\n    let currentSubSection;\n    for (const iniLine of iniData.split(/\\r?\\n/)) {\n        const trimmedLine = iniLine.split(/(^|\\s)[;#]/)[0].trim();\n        const isSection = trimmedLine[0] === \"[\" && trimmedLine[trimmedLine.length - 1] === \"]\";\n        if (isSection) {\n            currentSection = undefined;\n            currentSubSection = undefined;\n            const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);\n            const matches = prefixKeyRegex.exec(sectionName);\n            if (matches) {\n                const [, prefix, , name] = matches;\n                if (Object.values(IniSectionType).includes(prefix)) {\n                    currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);\n                }\n            }\n            else {\n                currentSection = sectionName;\n            }\n            if (profileNameBlockList.includes(sectionName)) {\n                throw new Error(`Found invalid profile name \"${sectionName}\"`);\n            }\n        }\n        else if (currentSection) {\n            const indexOfEqualsSign = trimmedLine.indexOf(\"=\");\n            if (![0, -1].includes(indexOfEqualsSign)) {\n                const [name, value] = [\n                    trimmedLine.substring(0, indexOfEqualsSign).trim(),\n                    trimmedLine.substring(indexOfEqualsSign + 1).trim(),\n                ];\n                if (value === \"\") {\n                    currentSubSection = name;\n                }\n                else {\n                    if (currentSubSection && iniLine.trimStart() === iniLine) {\n                        currentSubSection = undefined;\n                    }\n                    map[currentSection] = map[currentSection] || {};\n                    const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;\n                    map[currentSection][key] = value;\n                }\n            }\n        }\n    }\n    return map;\n};\n","import { promises as fsPromises } from \"fs\";\nconst { readFile } = fsPromises;\nconst filePromisesHash = {};\nexport const slurpFile = (path, options) => {\n    if (!filePromisesHash[path] || options?.ignoreCache) {\n        filePromisesHash[path] = readFile(path, \"utf8\");\n    }\n    return filePromisesHash[path];\n};\n","import { join } from \"path\";\nimport { getConfigData } from \"./getConfigData\";\nimport { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getCredentialsFilepath } from \"./getCredentialsFilepath\";\nimport { getHomeDir } from \"./getHomeDir\";\nimport { parseIni } from \"./parseIni\";\nimport { slurpFile } from \"./slurpFile\";\nconst swallowError = () => ({});\nexport const CONFIG_PREFIX_SEPARATOR = \".\";\nexport const loadSharedConfigFiles = async (init = {}) => {\n    const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;\n    const homeDir = getHomeDir();\n    const relativeHomeDirPrefix = \"~/\";\n    let resolvedFilepath = filepath;\n    if (filepath.startsWith(relativeHomeDirPrefix)) {\n        resolvedFilepath = join(homeDir, filepath.slice(2));\n    }\n    let resolvedConfigFilepath = configFilepath;\n    if (configFilepath.startsWith(relativeHomeDirPrefix)) {\n        resolvedConfigFilepath = join(homeDir, configFilepath.slice(2));\n    }\n    const parsedFiles = await Promise.all([\n        slurpFile(resolvedConfigFilepath, {\n            ignoreCache: init.ignoreCache,\n        })\n            .then(parseIni)\n            .then(getConfigData)\n            .catch(swallowError),\n        slurpFile(resolvedFilepath, {\n            ignoreCache: init.ignoreCache,\n        })\n            .then(parseIni)\n            .catch(swallowError),\n    ]);\n    return {\n        configFile: parsedFiles[0],\n        credentialsFile: parsedFiles[1],\n    };\n};\n","import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nexport const getSsoSessionData = (data) => Object.entries(data)\n    .filter(([key]) => key.startsWith(IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR))\n    .reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {});\n","import { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getSsoSessionData } from \"./getSsoSessionData\";\nimport { parseIni } from \"./parseIni\";\nimport { slurpFile } from \"./slurpFile\";\nconst swallowError = () => ({});\nexport const loadSsoSessionData = async (init = {}) => slurpFile(init.configFilepath ?? getConfigFilepath())\n    .then(parseIni)\n    .then(getSsoSessionData)\n    .catch(swallowError);\n","export const mergeConfigFiles = (...files) => {\n    const merged = {};\n    for (const file of files) {\n        for (const [key, values] of Object.entries(file)) {\n            if (merged[key] !== undefined) {\n                Object.assign(merged[key], values);\n            }\n            else {\n                merged[key] = values;\n            }\n        }\n    }\n    return merged;\n};\n","import { loadSharedConfigFiles } from \"./loadSharedConfigFiles\";\nimport { mergeConfigFiles } from \"./mergeConfigFiles\";\nexport const parseKnownFiles = async (init) => {\n    const parsedFiles = await loadSharedConfigFiles(init);\n    return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);\n};\n","export {};\n","export * from \"./getHomeDir\";\nexport * from \"./getProfileName\";\nexport * from \"./getSSOTokenFilepath\";\nexport * from \"./getSSOTokenFromFile\";\nexport * from \"./loadSharedConfigFiles\";\nexport * from \"./loadSsoSessionData\";\nexport * from \"./parseKnownFiles\";\nexport * from \"./types\";\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, loadSharedConfigFiles } from \"@smithy/shared-ini-file-loader\";\nimport { getSelectorName } from \"./getSelectorName\";\nexport const fromSharedConfigFiles = (configSelector, { preferredFile = \"config\", ...init } = {}) => async () => {\n    const profile = getProfileName(init);\n    const { configFile, credentialsFile } = await loadSharedConfigFiles(init);\n    const profileFromCredentials = credentialsFile[profile] || {};\n    const profileFromConfig = configFile[profile] || {};\n    const mergedProfile = preferredFile === \"config\"\n        ? { ...profileFromCredentials, ...profileFromConfig }\n        : { ...profileFromConfig, ...profileFromCredentials };\n    try {\n        const cfgFile = preferredFile === \"config\" ? configFile : credentialsFile;\n        const configValue = configSelector(mergedProfile, cfgFile);\n        if (configValue === undefined) {\n            throw new Error();\n        }\n        return configValue;\n    }\n    catch (e) {\n        throw new CredentialsProviderError(e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`, { logger: init.logger });\n    }\n};\n","import { fromStatic as convertToProvider } from \"@smithy/property-provider\";\nconst isFunction = (func) => typeof func === \"function\";\nexport const fromStatic = (defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : convertToProvider(defaultValue);\n","import { chain, memoize } from \"@smithy/property-provider\";\nimport { fromEnv } from \"./fromEnv\";\nimport { fromSharedConfigFiles } from \"./fromSharedConfigFiles\";\nimport { fromStatic } from \"./fromStatic\";\nexport const loadConfig = ({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => memoize(chain(fromEnv(environmentVariableSelector), fromSharedConfigFiles(configFileSelector, configuration), fromStatic(defaultValue)));\n","export * from \"./configLoader\";\n","import { CONFIG_PREFIX_SEPARATOR } from \"@smithy/shared-ini-file-loader\";\nconst ENV_ENDPOINT_URL = \"AWS_ENDPOINT_URL\";\nconst CONFIG_ENDPOINT_URL = \"endpoint_url\";\nexport const getEndpointUrlConfig = (serviceId) => ({\n    environmentVariableSelector: (env) => {\n        const serviceSuffixParts = serviceId.split(\" \").map((w) => w.toUpperCase());\n        const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join(\"_\")];\n        if (serviceEndpointUrl)\n            return serviceEndpointUrl;\n        const endpointUrl = env[ENV_ENDPOINT_URL];\n        if (endpointUrl)\n            return endpointUrl;\n        return undefined;\n    },\n    configFileSelector: (profile, config) => {\n        if (config && profile.services) {\n            const servicesSection = config[[\"services\", profile.services].join(CONFIG_PREFIX_SEPARATOR)];\n            if (servicesSection) {\n                const servicePrefixParts = serviceId.split(\" \").map((w) => w.toLowerCase());\n                const endpointUrl = servicesSection[[servicePrefixParts.join(\"_\"), CONFIG_ENDPOINT_URL].join(CONFIG_PREFIX_SEPARATOR)];\n                if (endpointUrl)\n                    return endpointUrl;\n            }\n        }\n        const endpointUrl = profile[CONFIG_ENDPOINT_URL];\n        if (endpointUrl)\n            return endpointUrl;\n        return undefined;\n    },\n    default: undefined,\n});\n","import { loadConfig } from \"@smithy/node-config-provider\";\nimport { getEndpointUrlConfig } from \"./getEndpointUrlConfig\";\nexport const getEndpointFromConfig = async (serviceId) => loadConfig(getEndpointUrlConfig(serviceId ?? \"\"))();\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        let endpointFromConfig;\n        if (clientConfig.serviceConfiguredEndpoint) {\n            endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();\n        }\n        else {\n            endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId);\n        }\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","export * from \"./getEndpointFromInstructions\";\nexport * from \"./toEndpointV1\";\n","import { setFeature } from \"@smithy/core\";\nimport { getSmithyContext } from \"@smithy/util-middleware\";\nimport { getEndpointFromInstructions } from \"./adaptors/getEndpointFromInstructions\";\nexport const endpointMiddleware = ({ config, instructions, }) => {\n    return (next, context) => async (args) => {\n        if (config.endpoint) {\n            setFeature(context, \"ENDPOINT_OVERRIDE\", \"N\");\n        }\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","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 { getEndpointFromConfig } from \"./adaptors/getEndpointFromConfig\";\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    const resolvedConfig = {\n        ...input,\n        endpoint: customEndpointProvider,\n        tls,\n        isCustomEndpoint,\n        useDualstackEndpoint: normalizeProvider(input.useDualstackEndpoint ?? false),\n        useFipsEndpoint: normalizeProvider(input.useFipsEndpoint ?? false),\n    };\n    let configuredEndpointPromise = undefined;\n    resolvedConfig.serviceConfiguredEndpoint = async () => {\n        if (input.serviceId && !configuredEndpointPromise) {\n            configuredEndpointPromise = getEndpointFromConfig(input.serviceId);\n        }\n        return configuredEndpointPromise;\n    };\n    return resolvedConfig;\n};\n","export {};\n","export * from \"./adaptors\";\nexport * from \"./endpointMiddleware\";\nexport * from \"./getEndpointPlugin\";\nexport * from \"./resolveEndpointConfig\";\nexport * from \"./types\";\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) => DefaultRateLimiter.setTimeoutFn(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}\nDefaultRateLimiter.setTimeoutFn = setTimeout;\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","import { DEFAULT_RETRY_DELAY_BASE } from \"./constants\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class ConfiguredRetryStrategy extends StandardRetryStrategy {\n    constructor(maxAttempts, computeNextBackoffDelay = DEFAULT_RETRY_DELAY_BASE) {\n        super(typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts);\n        if (typeof computeNextBackoffDelay === \"number\") {\n            this.computeNextBackoffDelay = () => computeNextBackoffDelay;\n        }\n        else {\n            this.computeNextBackoffDelay = computeNextBackoffDelay;\n        }\n    }\n    async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n        const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n        token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());\n        return token;\n    }\n}\n","export {};\n","export * from \"./AdaptiveRetryStrategy\";\nexport * from \"./ConfiguredRetryStrategy\";\nexport * from \"./DefaultRateLimiter\";\nexport * from \"./StandardRetryStrategy\";\nexport * from \"./config\";\nexport * from \"./constants\";\nexport * from \"./types\";\n","import crypto from 'crypto';\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\n\nlet poolPtr = rnds8Pool.length;\nexport default function rng() {\n  if (poolPtr > rnds8Pool.length - 16) {\n    crypto.randomFillSync(rnds8Pool);\n    poolPtr = 0;\n  }\n\n  return rnds8Pool.slice(poolPtr, poolPtr += 16);\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;","import crypto from 'crypto';\nexport default {\n  randomUUID: crypto.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 { default as v1 } from './v1.js';\nexport { default as v3 } from './v3.js';\nexport { default as v4 } from './v4.js';\nexport { default as v5 } from './v5.js';\nexport { default as NIL } from './nil.js';\nexport { default as version } from './version.js';\nexport { default as validate } from './validate.js';\nexport { default as stringify } from './stringify.js';\nexport { default as parse } from './parse.js';","import { NO_RETRY_INCREMENT, RETRY_COST, TIMEOUT_RETRY_COST } from \"@smithy/util-retry\";\nexport const getDefaultRetryQuota = (initialRetryTokens, options) => {\n    const MAX_CAPACITY = initialRetryTokens;\n    const noRetryIncrement = options?.noRetryIncrement ?? NO_RETRY_INCREMENT;\n    const retryCost = options?.retryCost ?? RETRY_COST;\n    const timeoutRetryCost = options?.timeoutRetryCost ?? TIMEOUT_RETRY_COST;\n    let availableCapacity = initialRetryTokens;\n    const getCapacityAmount = (error) => (error.name === \"TimeoutError\" ? timeoutRetryCost : retryCost);\n    const hasRetryTokens = (error) => getCapacityAmount(error) <= availableCapacity;\n    const retrieveRetryTokens = (error) => {\n        if (!hasRetryTokens(error)) {\n            throw new Error(\"No retry token available\");\n        }\n        const capacityAmount = getCapacityAmount(error);\n        availableCapacity -= capacityAmount;\n        return capacityAmount;\n    };\n    const releaseRetryTokens = (capacityReleaseAmount) => {\n        availableCapacity += capacityReleaseAmount ?? noRetryIncrement;\n        availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);\n    };\n    return Object.freeze({\n        hasRetryTokens,\n        retrieveRetryTokens,\n        releaseRetryTokens,\n    });\n};\n","import { MAXIMUM_RETRY_DELAY } from \"@smithy/util-retry\";\nexport const defaultDelayDecider = (delayBase, attempts) => Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n","import { isClockSkewError, isRetryableByTrait, isThrottlingError, isTransientError, } from \"@smithy/service-error-classification\";\nexport const defaultRetryDecider = (error) => {\n    if (!error) {\n        return false;\n    }\n    return isRetryableByTrait(error) || isClockSkewError(error) || isThrottlingError(error) || isTransientError(error);\n};\n","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 { HttpRequest, HttpResponse } from \"@smithy/protocol-http\";\nimport { isThrottlingError } from \"@smithy/service-error-classification\";\nimport { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, INVOCATION_ID_HEADER, REQUEST_HEADER, RETRY_MODES, THROTTLING_RETRY_DELAY_BASE, } from \"@smithy/util-retry\";\nimport { v4 } from \"uuid\";\nimport { getDefaultRetryQuota } from \"./defaultRetryQuota\";\nimport { defaultDelayDecider } from \"./delayDecider\";\nimport { defaultRetryDecider } from \"./retryDecider\";\nimport { asSdkError } from \"./util\";\nexport class StandardRetryStrategy {\n    constructor(maxAttemptsProvider, options) {\n        this.maxAttemptsProvider = maxAttemptsProvider;\n        this.mode = RETRY_MODES.STANDARD;\n        this.retryDecider = options?.retryDecider ?? defaultRetryDecider;\n        this.delayDecider = options?.delayDecider ?? defaultDelayDecider;\n        this.retryQuota = options?.retryQuota ?? getDefaultRetryQuota(INITIAL_RETRY_TOKENS);\n    }\n    shouldRetry(error, attempts, maxAttempts) {\n        return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);\n    }\n    async getMaxAttempts() {\n        let maxAttempts;\n        try {\n            maxAttempts = await this.maxAttemptsProvider();\n        }\n        catch (error) {\n            maxAttempts = DEFAULT_MAX_ATTEMPTS;\n        }\n        return maxAttempts;\n    }\n    async retry(next, args, options) {\n        let retryTokenAmount;\n        let attempts = 0;\n        let totalDelay = 0;\n        const maxAttempts = await this.getMaxAttempts();\n        const { request } = args;\n        if (HttpRequest.isInstance(request)) {\n            request.headers[INVOCATION_ID_HEADER] = v4();\n        }\n        while (true) {\n            try {\n                if (HttpRequest.isInstance(request)) {\n                    request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n                }\n                if (options?.beforeRequest) {\n                    await options.beforeRequest();\n                }\n                const { response, output } = await next(args);\n                if (options?.afterRequest) {\n                    options.afterRequest(response);\n                }\n                this.retryQuota.releaseRetryTokens(retryTokenAmount);\n                output.$metadata.attempts = attempts + 1;\n                output.$metadata.totalRetryDelay = totalDelay;\n                return { response, output };\n            }\n            catch (e) {\n                const err = asSdkError(e);\n                attempts++;\n                if (this.shouldRetry(err, attempts, maxAttempts)) {\n                    retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);\n                    const delayFromDecider = this.delayDecider(isThrottlingError(err) ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE, attempts);\n                    const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);\n                    const delay = Math.max(delayFromResponse || 0, delayFromDecider);\n                    totalDelay += delay;\n                    await new Promise((resolve) => setTimeout(resolve, delay));\n                    continue;\n                }\n                if (!err.$metadata) {\n                    err.$metadata = {};\n                }\n                err.$metadata.attempts = attempts;\n                err.$metadata.totalRetryDelay = totalDelay;\n                throw err;\n            }\n        }\n    }\n}\nconst getDelayFromRetryAfterHeader = (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 retryAfterSeconds * 1000;\n    const retryAfterDate = new Date(retryAfter);\n    return retryAfterDate.getTime() - Date.now();\n};\n","import { DefaultRateLimiter, RETRY_MODES } from \"@smithy/util-retry\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy extends StandardRetryStrategy {\n    constructor(maxAttemptsProvider, options) {\n        const { rateLimiter, ...superOptions } = options ?? {};\n        super(maxAttemptsProvider, superOptions);\n        this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n        this.mode = RETRY_MODES.ADAPTIVE;\n    }\n    async retry(next, args) {\n        return super.retry(next, args, {\n            beforeRequest: async () => {\n                return this.rateLimiter.getSendToken();\n            },\n            afterRequest: (response) => {\n                this.rateLimiter.updateClientSendingRate(response);\n            },\n        });\n    }\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","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"@smithy/util-retry\";\nexport const omitRetryHeadersMiddleware = () => (next) => async (args) => {\n    const { request } = args;\n    if (HttpRequest.isInstance(request)) {\n        delete request.headers[INVOCATION_ID_HEADER];\n        delete request.headers[REQUEST_HEADER];\n    }\n    return next(args);\n};\nexport const omitRetryHeadersMiddlewareOptions = {\n    name: \"omitRetryHeadersMiddleware\",\n    tags: [\"RETRY\", \"HEADERS\", \"OMIT_RETRY_HEADERS\"],\n    relation: \"before\",\n    toMiddleware: \"awsAuthMiddleware\",\n    override: true,\n};\nexport const getOmitRetryHeadersPlugin = (options) => ({\n    applyToStack: (clientStack) => {\n        clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);\n    },\n});\n","import { Readable } from \"stream\";\nexport const isStreamingPayload = (request) => request?.body instanceof Readable ||\n    (typeof ReadableStream !== \"undefined\" && 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","export * from \"./AdaptiveRetryStrategy\";\nexport * from \"./StandardRetryStrategy\";\nexport * from \"./configurations\";\nexport * from \"./delayDecider\";\nexport * from \"./omitRetryHeadersMiddleware\";\nexport * from \"./retryDecider\";\nexport * from \"./retryMiddleware\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nexport const ENV_KEY = \"AWS_ACCESS_KEY_ID\";\nexport const ENV_SECRET = \"AWS_SECRET_ACCESS_KEY\";\nexport const ENV_SESSION = \"AWS_SESSION_TOKEN\";\nexport const ENV_EXPIRATION = \"AWS_CREDENTIAL_EXPIRATION\";\nexport const ENV_CREDENTIAL_SCOPE = \"AWS_CREDENTIAL_SCOPE\";\nexport const ENV_ACCOUNT_ID = \"AWS_ACCOUNT_ID\";\nexport const fromEnv = (init) => async () => {\n    init?.logger?.debug(\"@aws-sdk/credential-provider-env - fromEnv\");\n    const accessKeyId = process.env[ENV_KEY];\n    const secretAccessKey = process.env[ENV_SECRET];\n    const sessionToken = process.env[ENV_SESSION];\n    const expiry = process.env[ENV_EXPIRATION];\n    const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];\n    const accountId = process.env[ENV_ACCOUNT_ID];\n    if (accessKeyId && secretAccessKey) {\n        const credentials = {\n            accessKeyId,\n            secretAccessKey,\n            ...(sessionToken && { sessionToken }),\n            ...(expiry && { expiration: new Date(expiry) }),\n            ...(credentialScope && { credentialScope }),\n            ...(accountId && { accountId }),\n        };\n        setCredentialFeature(credentials, \"CREDENTIALS_ENV_VARS\", \"g\");\n        return credentials;\n    }\n    throw new CredentialsProviderError(\"Unable to find environment variable credentials.\", { logger: init?.logger });\n};\n","export * from \"./fromEnv\";\n","import { ProviderError } from \"@smithy/property-provider\";\nimport { Buffer } from \"buffer\";\nimport { request } from \"http\";\nexport function httpRequest(options) {\n    return new Promise((resolve, reject) => {\n        const req = request({\n            method: \"GET\",\n            ...options,\n            hostname: options.hostname?.replace(/^\\[(.+)\\]$/, \"$1\"),\n        });\n        req.on(\"error\", (err) => {\n            reject(Object.assign(new ProviderError(\"Unable to connect to instance metadata service\"), err));\n            req.destroy();\n        });\n        req.on(\"timeout\", () => {\n            reject(new ProviderError(\"TimeoutError from instance metadata service\"));\n            req.destroy();\n        });\n        req.on(\"response\", (res) => {\n            const { statusCode = 400 } = res;\n            if (statusCode < 200 || 300 <= statusCode) {\n                reject(Object.assign(new ProviderError(\"Error response received from instance metadata service\"), { statusCode }));\n                req.destroy();\n            }\n            const chunks = [];\n            res.on(\"data\", (chunk) => {\n                chunks.push(chunk);\n            });\n            res.on(\"end\", () => {\n                resolve(Buffer.concat(chunks));\n                req.destroy();\n            });\n        });\n        req.end();\n    });\n}\n","export const isImdsCredentials = (arg) => Boolean(arg) &&\n    typeof arg === \"object\" &&\n    typeof arg.AccessKeyId === \"string\" &&\n    typeof arg.SecretAccessKey === \"string\" &&\n    typeof arg.Token === \"string\" &&\n    typeof arg.Expiration === \"string\";\nexport const fromImdsCredentials = (creds) => ({\n    accessKeyId: creds.AccessKeyId,\n    secretAccessKey: creds.SecretAccessKey,\n    sessionToken: creds.Token,\n    expiration: new Date(creds.Expiration),\n    ...(creds.AccountId && { accountId: creds.AccountId }),\n});\n","export const DEFAULT_TIMEOUT = 1000;\nexport const DEFAULT_MAX_RETRIES = 0;\nexport const providerConfigFromInit = ({ maxRetries = DEFAULT_MAX_RETRIES, timeout = DEFAULT_TIMEOUT, }) => ({ maxRetries, timeout });\n","export const retry = (toRetry, maxRetries) => {\n    let promise = toRetry();\n    for (let i = 0; i < maxRetries; i++) {\n        promise = promise.catch(toRetry);\n    }\n    return promise;\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { parse } from \"url\";\nimport { httpRequest } from \"./remoteProvider/httpRequest\";\nimport { fromImdsCredentials, isImdsCredentials } from \"./remoteProvider/ImdsCredentials\";\nimport { providerConfigFromInit } from \"./remoteProvider/RemoteProviderInit\";\nimport { retry } from \"./remoteProvider/retry\";\nexport const ENV_CMDS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nexport const ENV_CMDS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nexport const ENV_CMDS_AUTH_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nexport const fromContainerMetadata = (init = {}) => {\n    const { timeout, maxRetries } = providerConfigFromInit(init);\n    return () => retry(async () => {\n        const requestOptions = await getCmdsUri({ logger: init.logger });\n        const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));\n        if (!isImdsCredentials(credsResponse)) {\n            throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\", {\n                logger: init.logger,\n            });\n        }\n        return fromImdsCredentials(credsResponse);\n    }, maxRetries);\n};\nconst requestFromEcsImds = async (timeout, options) => {\n    if (process.env[ENV_CMDS_AUTH_TOKEN]) {\n        options.headers = {\n            ...options.headers,\n            Authorization: process.env[ENV_CMDS_AUTH_TOKEN],\n        };\n    }\n    const buffer = await httpRequest({\n        ...options,\n        timeout,\n    });\n    return buffer.toString();\n};\nconst CMDS_IP = \"169.254.170.2\";\nconst GREENGRASS_HOSTS = {\n    localhost: true,\n    \"127.0.0.1\": true,\n};\nconst GREENGRASS_PROTOCOLS = {\n    \"http:\": true,\n    \"https:\": true,\n};\nconst getCmdsUri = async ({ logger }) => {\n    if (process.env[ENV_CMDS_RELATIVE_URI]) {\n        return {\n            hostname: CMDS_IP,\n            path: process.env[ENV_CMDS_RELATIVE_URI],\n        };\n    }\n    if (process.env[ENV_CMDS_FULL_URI]) {\n        const parsed = parse(process.env[ENV_CMDS_FULL_URI]);\n        if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {\n            throw new CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {\n                tryNextLink: false,\n                logger,\n            });\n        }\n        if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {\n            throw new CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {\n                tryNextLink: false,\n                logger,\n            });\n        }\n        return {\n            ...parsed,\n            port: parsed.port ? parseInt(parsed.port, 10) : undefined,\n        };\n    }\n    throw new CredentialsProviderError(\"The container metadata credential provider cannot be used unless\" +\n        ` the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment` +\n        \" variable is set\", {\n        tryNextLink: false,\n        logger,\n    });\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport class InstanceMetadataV1FallbackError extends CredentialsProviderError {\n    constructor(message, tryNextLink = true) {\n        super(message, tryNextLink);\n        this.tryNextLink = tryNextLink;\n        this.name = \"InstanceMetadataV1FallbackError\";\n        Object.setPrototypeOf(this, InstanceMetadataV1FallbackError.prototype);\n    }\n}\n","export var Endpoint;\n(function (Endpoint) {\n    Endpoint[\"IPv4\"] = \"http://169.254.169.254\";\n    Endpoint[\"IPv6\"] = \"http://[fd00:ec2::254]\";\n})(Endpoint || (Endpoint = {}));\n","export const ENV_ENDPOINT_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT\";\nexport const CONFIG_ENDPOINT_NAME = \"ec2_metadata_service_endpoint\";\nexport const ENDPOINT_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => env[ENV_ENDPOINT_NAME],\n    configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],\n    default: undefined,\n};\n","export var EndpointMode;\n(function (EndpointMode) {\n    EndpointMode[\"IPv4\"] = \"IPv4\";\n    EndpointMode[\"IPv6\"] = \"IPv6\";\n})(EndpointMode || (EndpointMode = {}));\n","import { EndpointMode } from \"./EndpointMode\";\nexport const ENV_ENDPOINT_MODE_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE\";\nexport const CONFIG_ENDPOINT_MODE_NAME = \"ec2_metadata_service_endpoint_mode\";\nexport const ENDPOINT_MODE_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => env[ENV_ENDPOINT_MODE_NAME],\n    configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],\n    default: EndpointMode.IPv4,\n};\n","import { loadConfig } from \"@smithy/node-config-provider\";\nimport { parseUrl } from \"@smithy/url-parser\";\nimport { Endpoint as InstanceMetadataEndpoint } from \"../config/Endpoint\";\nimport { ENDPOINT_CONFIG_OPTIONS } from \"../config/EndpointConfigOptions\";\nimport { EndpointMode } from \"../config/EndpointMode\";\nimport { ENDPOINT_MODE_CONFIG_OPTIONS, } from \"../config/EndpointModeConfigOptions\";\nexport const getInstanceMetadataEndpoint = async () => parseUrl((await getFromEndpointConfig()) || (await getFromEndpointModeConfig()));\nconst getFromEndpointConfig = async () => loadConfig(ENDPOINT_CONFIG_OPTIONS)();\nconst getFromEndpointModeConfig = async () => {\n    const endpointMode = await loadConfig(ENDPOINT_MODE_CONFIG_OPTIONS)();\n    switch (endpointMode) {\n        case EndpointMode.IPv4:\n            return InstanceMetadataEndpoint.IPv4;\n        case EndpointMode.IPv6:\n            return InstanceMetadataEndpoint.IPv6;\n        default:\n            throw new Error(`Unsupported endpoint mode: ${endpointMode}.` + ` Select from ${Object.values(EndpointMode)}`);\n    }\n};\n","const STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;\nconst STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;\nconst STATIC_STABILITY_DOC_URL = \"https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html\";\nexport const getExtendedInstanceMetadataCredentials = (credentials, logger) => {\n    const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS +\n        Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);\n    const newExpiration = new Date(Date.now() + refreshInterval * 1000);\n    logger.warn(\"Attempting credential expiration extension due to a credential service availability issue. A refresh of these \" +\n        `credentials will be attempted after ${new Date(newExpiration)}.\\nFor more information, please visit: ` +\n        STATIC_STABILITY_DOC_URL);\n    const originalExpiration = credentials.originalExpiration ?? credentials.expiration;\n    return {\n        ...credentials,\n        ...(originalExpiration ? { originalExpiration } : {}),\n        expiration: newExpiration,\n    };\n};\n","import { getExtendedInstanceMetadataCredentials } from \"./getExtendedInstanceMetadataCredentials\";\nexport const staticStabilityProvider = (provider, options = {}) => {\n    const logger = options?.logger || console;\n    let pastCredentials;\n    return async () => {\n        let credentials;\n        try {\n            credentials = await provider();\n            if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {\n                credentials = getExtendedInstanceMetadataCredentials(credentials, logger);\n            }\n        }\n        catch (e) {\n            if (pastCredentials) {\n                logger.warn(\"Credential renew failed: \", e);\n                credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);\n            }\n            else {\n                throw e;\n            }\n        }\n        pastCredentials = credentials;\n        return credentials;\n    };\n};\n","import { loadConfig } from \"@smithy/node-config-provider\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { InstanceMetadataV1FallbackError } from \"./error/InstanceMetadataV1FallbackError\";\nimport { httpRequest } from \"./remoteProvider/httpRequest\";\nimport { fromImdsCredentials, isImdsCredentials } from \"./remoteProvider/ImdsCredentials\";\nimport { providerConfigFromInit } from \"./remoteProvider/RemoteProviderInit\";\nimport { retry } from \"./remoteProvider/retry\";\nimport { getInstanceMetadataEndpoint } from \"./utils/getInstanceMetadataEndpoint\";\nimport { staticStabilityProvider } from \"./utils/staticStabilityProvider\";\nconst IMDS_PATH = \"/latest/meta-data/iam/security-credentials/\";\nconst IMDS_TOKEN_PATH = \"/latest/api/token\";\nconst AWS_EC2_METADATA_V1_DISABLED = \"AWS_EC2_METADATA_V1_DISABLED\";\nconst PROFILE_AWS_EC2_METADATA_V1_DISABLED = \"ec2_metadata_v1_disabled\";\nconst X_AWS_EC2_METADATA_TOKEN = \"x-aws-ec2-metadata-token\";\nexport const fromInstanceMetadata = (init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger });\nconst getInstanceMetadataProvider = (init = {}) => {\n    let disableFetchToken = false;\n    const { logger, profile } = init;\n    const { timeout, maxRetries } = providerConfigFromInit(init);\n    const getCredentials = async (maxRetries, options) => {\n        const isImdsV1Fallback = disableFetchToken || options.headers?.[X_AWS_EC2_METADATA_TOKEN] == null;\n        if (isImdsV1Fallback) {\n            let fallbackBlockedFromProfile = false;\n            let fallbackBlockedFromProcessEnv = false;\n            const configValue = await loadConfig({\n                environmentVariableSelector: (env) => {\n                    const envValue = env[AWS_EC2_METADATA_V1_DISABLED];\n                    fallbackBlockedFromProcessEnv = !!envValue && envValue !== \"false\";\n                    if (envValue === undefined) {\n                        throw new CredentialsProviderError(`${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`, { logger: init.logger });\n                    }\n                    return fallbackBlockedFromProcessEnv;\n                },\n                configFileSelector: (profile) => {\n                    const profileValue = profile[PROFILE_AWS_EC2_METADATA_V1_DISABLED];\n                    fallbackBlockedFromProfile = !!profileValue && profileValue !== \"false\";\n                    return fallbackBlockedFromProfile;\n                },\n                default: false,\n            }, {\n                profile,\n            })();\n            if (init.ec2MetadataV1Disabled || configValue) {\n                const causes = [];\n                if (init.ec2MetadataV1Disabled)\n                    causes.push(\"credential provider initialization (runtime option ec2MetadataV1Disabled)\");\n                if (fallbackBlockedFromProfile)\n                    causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);\n                if (fallbackBlockedFromProcessEnv)\n                    causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);\n                throw new InstanceMetadataV1FallbackError(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(\", \")}].`);\n            }\n        }\n        const imdsProfile = (await retry(async () => {\n            let profile;\n            try {\n                profile = await getProfile(options);\n            }\n            catch (err) {\n                if (err.statusCode === 401) {\n                    disableFetchToken = false;\n                }\n                throw err;\n            }\n            return profile;\n        }, maxRetries)).trim();\n        return retry(async () => {\n            let creds;\n            try {\n                creds = await getCredentialsFromProfile(imdsProfile, options, init);\n            }\n            catch (err) {\n                if (err.statusCode === 401) {\n                    disableFetchToken = false;\n                }\n                throw err;\n            }\n            return creds;\n        }, maxRetries);\n    };\n    return async () => {\n        const endpoint = await getInstanceMetadataEndpoint();\n        if (disableFetchToken) {\n            logger?.debug(\"AWS SDK Instance Metadata\", \"using v1 fallback (no token fetch)\");\n            return getCredentials(maxRetries, { ...endpoint, timeout });\n        }\n        else {\n            let token;\n            try {\n                token = (await getMetadataToken({ ...endpoint, timeout })).toString();\n            }\n            catch (error) {\n                if (error?.statusCode === 400) {\n                    throw Object.assign(error, {\n                        message: \"EC2 Metadata token request returned error\",\n                    });\n                }\n                else if (error.message === \"TimeoutError\" || [403, 404, 405].includes(error.statusCode)) {\n                    disableFetchToken = true;\n                }\n                logger?.debug(\"AWS SDK Instance Metadata\", \"using v1 fallback (initial)\");\n                return getCredentials(maxRetries, { ...endpoint, timeout });\n            }\n            return getCredentials(maxRetries, {\n                ...endpoint,\n                headers: {\n                    [X_AWS_EC2_METADATA_TOKEN]: token,\n                },\n                timeout,\n            });\n        }\n    };\n};\nconst getMetadataToken = async (options) => httpRequest({\n    ...options,\n    path: IMDS_TOKEN_PATH,\n    method: \"PUT\",\n    headers: {\n        \"x-aws-ec2-metadata-token-ttl-seconds\": \"21600\",\n    },\n});\nconst getProfile = async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString();\nconst getCredentialsFromProfile = async (profile, options, init) => {\n    const credentialsResponse = JSON.parse((await httpRequest({\n        ...options,\n        path: IMDS_PATH + profile,\n    })).toString());\n    if (!isImdsCredentials(credentialsResponse)) {\n        throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\", {\n            logger: init.logger,\n        });\n    }\n    return fromImdsCredentials(credentialsResponse);\n};\n","export {};\n","export * from \"./fromContainerMetadata\";\nexport * from \"./fromInstanceMetadata\";\nexport * from \"./remoteProvider/RemoteProviderInit\";\nexport * from \"./types\";\nexport { httpRequest } from \"./remoteProvider/httpRequest\";\nexport { getInstanceMetadataEndpoint } from \"./utils/getInstanceMetadataEndpoint\";\nexport { Endpoint } from \"./config/Endpoint\";\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nconst LOOPBACK_CIDR_IPv4 = \"127.0.0.0/8\";\nconst LOOPBACK_CIDR_IPv6 = \"::1/128\";\nconst ECS_CONTAINER_HOST = \"169.254.170.2\";\nconst EKS_CONTAINER_HOST_IPv4 = \"169.254.170.23\";\nconst EKS_CONTAINER_HOST_IPv6 = \"[fd00:ec2::23]\";\nexport const checkUrl = (url, logger) => {\n    if (url.protocol === \"https:\") {\n        return;\n    }\n    if (url.hostname === ECS_CONTAINER_HOST ||\n        url.hostname === EKS_CONTAINER_HOST_IPv4 ||\n        url.hostname === EKS_CONTAINER_HOST_IPv6) {\n        return;\n    }\n    if (url.hostname.includes(\"[\")) {\n        if (url.hostname === \"[::1]\" || url.hostname === \"[0000:0000:0000:0000:0000:0000:0000:0001]\") {\n            return;\n        }\n    }\n    else {\n        if (url.hostname === \"localhost\") {\n            return;\n        }\n        const ipComponents = url.hostname.split(\".\");\n        const inRange = (component) => {\n            const num = parseInt(component, 10);\n            return 0 <= num && num <= 255;\n        };\n        if (ipComponents[0] === \"127\" &&\n            inRange(ipComponents[1]) &&\n            inRange(ipComponents[2]) &&\n            inRange(ipComponents[3]) &&\n            ipComponents.length === 4) {\n            return;\n        }\n    }\n    throw new CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:\n  - loopback CIDR 127.0.0.0/8 or [::1/128]\n  - ECS container host 169.254.170.2\n  - EKS container host 169.254.170.23 or [fd00:ec2::23]`, { logger });\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { HttpRequest } from \"@smithy/protocol-http\";\nimport { parseRfc3339DateTime } from \"@smithy/smithy-client\";\nimport { sdkStreamMixin } from \"@smithy/util-stream\";\nexport function createGetRequest(url) {\n    return new HttpRequest({\n        protocol: url.protocol,\n        hostname: url.hostname,\n        port: Number(url.port),\n        path: url.pathname,\n        query: Array.from(url.searchParams.entries()).reduce((acc, [k, v]) => {\n            acc[k] = v;\n            return acc;\n        }, {}),\n        fragment: url.hash,\n    });\n}\nexport async function getCredentials(response, logger) {\n    const stream = sdkStreamMixin(response.body);\n    const str = await stream.transformToString();\n    if (response.statusCode === 200) {\n        const parsed = JSON.parse(str);\n        if (typeof parsed.AccessKeyId !== \"string\" ||\n            typeof parsed.SecretAccessKey !== \"string\" ||\n            typeof parsed.Token !== \"string\" ||\n            typeof parsed.Expiration !== \"string\") {\n            throw new CredentialsProviderError(\"HTTP credential provider response not of the required format, an object matching: \" +\n                \"{ AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }\", { logger });\n        }\n        return {\n            accessKeyId: parsed.AccessKeyId,\n            secretAccessKey: parsed.SecretAccessKey,\n            sessionToken: parsed.Token,\n            expiration: parseRfc3339DateTime(parsed.Expiration),\n        };\n    }\n    if (response.statusCode >= 400 && response.statusCode < 500) {\n        let parsedBody = {};\n        try {\n            parsedBody = JSON.parse(str);\n        }\n        catch (e) { }\n        throw Object.assign(new CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger }), {\n            Code: parsedBody.Code,\n            Message: parsedBody.Message,\n        });\n    }\n    throw new CredentialsProviderError(`Server responded with status: ${response.statusCode}`, { logger });\n}\n","export const retryWrapper = (toRetry, maxRetries, delayMs) => {\n    return async () => {\n        for (let i = 0; i < maxRetries; ++i) {\n            try {\n                return await toRetry();\n            }\n            catch (e) {\n                await new Promise((resolve) => setTimeout(resolve, delayMs));\n            }\n        }\n        return await toRetry();\n    };\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { NodeHttpHandler } from \"@smithy/node-http-handler\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport fs from \"fs/promises\";\nimport { checkUrl } from \"./checkUrl\";\nimport { createGetRequest, getCredentials } from \"./requestHelpers\";\nimport { retryWrapper } from \"./retry-wrapper\";\nconst AWS_CONTAINER_CREDENTIALS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nconst DEFAULT_LINK_LOCAL_HOST = \"http://169.254.170.2\";\nconst AWS_CONTAINER_CREDENTIALS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nconst AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE = \"AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE\";\nconst AWS_CONTAINER_AUTHORIZATION_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nexport const fromHttp = (options = {}) => {\n    options.logger?.debug(\"@aws-sdk/credential-provider-http - fromHttp\");\n    let host;\n    const relative = options.awsContainerCredentialsRelativeUri ?? process.env[AWS_CONTAINER_CREDENTIALS_RELATIVE_URI];\n    const full = options.awsContainerCredentialsFullUri ?? process.env[AWS_CONTAINER_CREDENTIALS_FULL_URI];\n    const token = options.awsContainerAuthorizationToken ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN];\n    const tokenFile = options.awsContainerAuthorizationTokenFile ?? process.env[AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE];\n    const warn = options.logger?.constructor?.name === \"NoOpLogger\" || !options.logger ? console.warn : options.logger.warn;\n    if (relative && full) {\n        warn(\"@aws-sdk/credential-provider-http: \" +\n            \"you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri.\");\n        warn(\"awsContainerCredentialsFullUri will take precedence.\");\n    }\n    if (token && tokenFile) {\n        warn(\"@aws-sdk/credential-provider-http: \" +\n            \"you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile.\");\n        warn(\"awsContainerAuthorizationToken will take precedence.\");\n    }\n    if (full) {\n        host = full;\n    }\n    else if (relative) {\n        host = `${DEFAULT_LINK_LOCAL_HOST}${relative}`;\n    }\n    else {\n        throw new CredentialsProviderError(`No HTTP credential provider host provided.\nSet AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`, { logger: options.logger });\n    }\n    const url = new URL(host);\n    checkUrl(url, options.logger);\n    const requestHandler = new NodeHttpHandler({\n        requestTimeout: options.timeout ?? 1000,\n        connectionTimeout: options.timeout ?? 1000,\n    });\n    return retryWrapper(async () => {\n        const request = createGetRequest(url);\n        if (token) {\n            request.headers.Authorization = token;\n        }\n        else if (tokenFile) {\n            request.headers.Authorization = (await fs.readFile(tokenFile)).toString();\n        }\n        try {\n            const result = await requestHandler.handle(request);\n            return getCredentials(result.response).then((creds) => setCredentialFeature(creds, \"CREDENTIALS_HTTP\", \"z\"));\n        }\n        catch (e) {\n            throw new CredentialsProviderError(String(e), { logger: options.logger });\n        }\n    }, options.maxRetries ?? 3, options.timeout ?? 1000);\n};\n","export { fromHttp } from \"./fromHttp/fromHttp\";\n","import { chain, CredentialsProviderError } from \"@smithy/property-provider\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const remoteProvider = async (init) => {\n    const { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata } = await import(\"@smithy/credential-provider-imds\");\n    if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {\n        init.logger?.debug(\"@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata\");\n        const { fromHttp } = await import(\"@aws-sdk/credential-provider-http\");\n        return chain(fromHttp(init), fromContainerMetadata(init));\n    }\n    if (process.env[ENV_IMDS_DISABLED]) {\n        return async () => {\n            throw new CredentialsProviderError(\"EC2 Instance Metadata Service access disabled\", { logger: init.logger });\n        };\n    }\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata\");\n    return fromInstanceMetadata(init);\n};\n","export const isSsoProfile = (arg) => arg &&\n    (typeof arg.sso_start_url === \"string\" ||\n        typeof arg.sso_account_id === \"string\" ||\n        typeof arg.sso_session === \"string\" ||\n        typeof arg.sso_region === \"string\" ||\n        typeof arg.sso_role_name === \"string\");\n","export const EXPIRE_WINDOW_MS = 5 * 60 * 1000;\nexport const REFRESH_MESSAGE = `To refresh this SSO session run 'aws sso login' with the corresponding profile.`;\n","import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultSSOOIDCHttpAuthSchemeParametersProvider = 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: \"sso-oauth\",\n            region: authParameters.region,\n        },\n        propertiesExtractor: (config, context) => ({\n            signingProperties: {\n                config,\n                context,\n            },\n        }),\n    };\n}\nfunction createSmithyApiNoAuthHttpAuthOption(authParameters) {\n    return {\n        schemeId: \"smithy.api#noAuth\",\n    };\n}\nexport const defaultSSOOIDCHttpAuthSchemeProvider = (authParameters) => {\n    const options = [];\n    switch (authParameters.operation) {\n        case \"CreateToken\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        case \"RegisterClient\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        case \"StartDeviceAuthorization\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\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: \"sso-oauth\",\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","{\n  \"name\": \"@aws-sdk/client-sso-oidc\",\n  \"description\": \"AWS SDK for JavaScript Sso Oidc Client for Node.js, Browser and React Native\",\n  \"version\": \"3.699.0\",\n  \"scripts\": {\n    \"build\": \"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'\",\n    \"build:cjs\": \"node ../../scripts/compilation/inline client-sso-oidc\",\n    \"build:es\": \"tsc -p tsconfig.es.json\",\n    \"build:include:deps\": \"lerna run --scope $npm_package_name --include-dependencies build\",\n    \"build:types\": \"tsc -p tsconfig.types.json\",\n    \"build:types:downlevel\": \"downlevel-dts dist-types dist-types/ts3.4\",\n    \"clean\": \"rimraf ./dist-* && rimraf *.tsbuildinfo\",\n    \"extract:docs\": \"api-extractor run --local\",\n    \"generate:client\": \"node ../../scripts/generate-clients/single-service --solo sso-oidc\"\n  },\n  \"main\": \"./dist-cjs/index.js\",\n  \"types\": \"./dist-types/index.d.ts\",\n  \"module\": \"./dist-es/index.js\",\n  \"sideEffects\": false,\n  \"dependencies\": {\n    \"@aws-crypto/sha256-browser\": \"5.2.0\",\n    \"@aws-crypto/sha256-js\": \"5.2.0\",\n    \"@aws-sdk/core\": \"3.696.0\",\n    \"@aws-sdk/credential-provider-node\": \"3.699.0\",\n    \"@aws-sdk/middleware-host-header\": \"3.696.0\",\n    \"@aws-sdk/middleware-logger\": \"3.696.0\",\n    \"@aws-sdk/middleware-recursion-detection\": \"3.696.0\",\n    \"@aws-sdk/middleware-user-agent\": \"3.696.0\",\n    \"@aws-sdk/region-config-resolver\": \"3.696.0\",\n    \"@aws-sdk/types\": \"3.696.0\",\n    \"@aws-sdk/util-endpoints\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-browser\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-node\": \"3.696.0\",\n    \"@smithy/config-resolver\": \"^3.0.12\",\n    \"@smithy/core\": \"^2.5.3\",\n    \"@smithy/fetch-http-handler\": \"^4.1.1\",\n    \"@smithy/hash-node\": \"^3.0.10\",\n    \"@smithy/invalid-dependency\": \"^3.0.10\",\n    \"@smithy/middleware-content-length\": \"^3.0.12\",\n    \"@smithy/middleware-endpoint\": \"^3.2.3\",\n    \"@smithy/middleware-retry\": \"^3.0.27\",\n    \"@smithy/middleware-serde\": \"^3.0.10\",\n    \"@smithy/middleware-stack\": \"^3.0.10\",\n    \"@smithy/node-config-provider\": \"^3.1.11\",\n    \"@smithy/node-http-handler\": \"^3.3.1\",\n    \"@smithy/protocol-http\": \"^4.1.7\",\n    \"@smithy/smithy-client\": \"^3.4.4\",\n    \"@smithy/types\": \"^3.7.1\",\n    \"@smithy/url-parser\": \"^3.0.10\",\n    \"@smithy/util-base64\": \"^3.0.0\",\n    \"@smithy/util-body-length-browser\": \"^3.0.0\",\n    \"@smithy/util-body-length-node\": \"^3.0.0\",\n    \"@smithy/util-defaults-mode-browser\": \"^3.0.27\",\n    \"@smithy/util-defaults-mode-node\": \"^3.0.27\",\n    \"@smithy/util-endpoints\": \"^2.1.6\",\n    \"@smithy/util-middleware\": \"^3.0.10\",\n    \"@smithy/util-retry\": \"^3.0.10\",\n    \"@smithy/util-utf8\": \"^3.0.0\",\n    \"tslib\": \"^2.6.2\"\n  },\n  \"devDependencies\": {\n    \"@tsconfig/node16\": \"16.1.3\",\n    \"@types/node\": \"^16.18.96\",\n    \"concurrently\": \"7.0.0\",\n    \"downlevel-dts\": \"0.10.1\",\n    \"rimraf\": \"3.0.2\",\n    \"typescript\": \"~4.9.5\"\n  },\n  \"engines\": {\n    \"node\": \">=16.0.0\"\n  },\n  \"typesVersions\": {\n    \"<4.0\": {\n      \"dist-types/*\": [\n        \"dist-types/ts3.4/*\"\n      ]\n    }\n  },\n  \"files\": [\n    \"dist-*/**\"\n  ],\n  \"author\": {\n    \"name\": \"AWS SDK for JavaScript Team\",\n    \"url\": \"https://aws.amazon.com/javascript/\"\n  },\n  \"license\": \"Apache-2.0\",\n  \"peerDependencies\": {\n    \"@aws-sdk/client-sts\": \"^3.699.0\"\n  },\n  \"browser\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.browser\"\n  },\n  \"react-native\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.native\"\n  },\n  \"homepage\": \"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso-oidc\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/aws/aws-sdk-js-v3.git\",\n    \"directory\": \"clients/client-sso-oidc\"\n  }\n}\n","export const crtAvailability = {\n    isCrtAvailable: false,\n};\n","import { crtAvailability } from \"./crt-availability\";\nexport const isCrtAvailable = () => {\n    if (crtAvailability.isCrtAvailable) {\n        return [\"md/crt-avail\"];\n    }\n    return null;\n};\n","import { platform, release } from \"os\";\nimport { env, versions } from \"process\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport { crtAvailability } from \"./crt-availability\";\nexport const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => {\n    return async (config) => {\n        const sections = [\n            [\"aws-sdk-js\", clientVersion],\n            [\"ua\", \"2.1\"],\n            [`os/${platform()}`, release()],\n            [\"lang/js\"],\n            [\"md/nodejs\", `${versions.node}`],\n        ];\n        const crtAvailable = isCrtAvailable();\n        if (crtAvailable) {\n            sections.push(crtAvailable);\n        }\n        if (serviceId) {\n            sections.push([`api/${serviceId}`, clientVersion]);\n        }\n        if (env.AWS_EXECUTION_ENV) {\n            sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);\n        }\n        const appId = await config?.userAgentAppId?.();\n        const resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];\n        return resolvedUserAgent;\n    };\n};\nexport const defaultUserAgent = createDefaultUserAgentProvider;\n","import { DEFAULT_UA_APP_ID } from \"@aws-sdk/middleware-user-agent\";\nexport const UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport const UA_APP_ID_INI_NAME = \"sdk-ua-app-id\";\nexport const NODE_APP_ID_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],\n    configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME],\n    default: DEFAULT_UA_APP_ID,\n};\n","export * from \"./defaultUserAgent\";\nexport * from \"./nodeAppIdConfigOptions\";\n","import { fromArrayBuffer, fromString } from \"@smithy/util-buffer-from\";\nimport { toUint8Array } from \"@smithy/util-utf8\";\nimport { Buffer } from \"buffer\";\nimport { createHash, createHmac } from \"crypto\";\nexport class Hash {\n    constructor(algorithmIdentifier, secret) {\n        this.algorithmIdentifier = algorithmIdentifier;\n        this.secret = secret;\n        this.reset();\n    }\n    update(toHash, encoding) {\n        this.hash.update(toUint8Array(castSourceData(toHash, encoding)));\n    }\n    digest() {\n        return Promise.resolve(this.hash.digest());\n    }\n    reset() {\n        this.hash = this.secret\n            ? createHmac(this.algorithmIdentifier, castSourceData(this.secret))\n            : createHash(this.algorithmIdentifier);\n    }\n}\nfunction castSourceData(toCast, encoding) {\n    if (Buffer.isBuffer(toCast)) {\n        return toCast;\n    }\n    if (typeof toCast === \"string\") {\n        return fromString(toCast, encoding);\n    }\n    if (ArrayBuffer.isView(toCast)) {\n        return fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);\n    }\n    return fromArrayBuffer(toCast);\n}\n","import { fstatSync, lstatSync } from \"fs\";\nexport const calculateBodyLength = (body) => {\n    if (!body) {\n        return 0;\n    }\n    if (typeof body === \"string\") {\n        return Buffer.byteLength(body);\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    else if (typeof body.start === \"number\" && typeof body.end === \"number\") {\n        return body.end + 1 - body.start;\n    }\n    else if (typeof body.path === \"string\" || Buffer.isBuffer(body.path)) {\n        return lstatSync(body.path).size;\n    }\n    else if (typeof body.fd === \"number\") {\n        return fstatSync(body.fd).size;\n    }\n    throw new Error(`Body Length computation failed for ${body}`);\n};\n","export * from \"./calculateBodyLength\";\n","const u = \"required\", v = \"fn\", w = \"argv\", x = \"ref\";\nconst a = true, b = \"isSet\", c = \"booleanEquals\", d = \"error\", e = \"endpoint\", f = \"tree\", g = \"PartitionResult\", h = \"getAttr\", i = { [u]: false, \"type\": \"String\" }, j = { [u]: true, \"default\": false, \"type\": \"Boolean\" }, k = { [x]: \"Endpoint\" }, l = { [v]: c, [w]: [{ [x]: \"UseFIPS\" }, true] }, m = { [v]: c, [w]: [{ [x]: \"UseDualStack\" }, true] }, n = {}, o = { [v]: h, [w]: [{ [x]: g }, \"supportsFIPS\"] }, p = { [x]: g }, q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, \"supportsDualStack\"] }] }, r = [l], s = [m], t = [{ [x]: \"Region\" }];\nconst _data = { version: \"1.0\", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", type: d }, { conditions: s, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: \"aws.partition\", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: \"https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: \"stringEquals\", [w]: [{ [v]: h, [w]: [p, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://oidc.{Region}.amazonaws.com\", properties: n, headers: n }, type: e }, { endpoint: { url: \"https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS is enabled but this partition does not support FIPS\", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: \"https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"DualStack is enabled but this partition does not support DualStack\", type: d }], type: f }, { endpoint: { url: \"https://oidc.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, 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, EndpointCache, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nconst cache = new EndpointCache({\n    size: 50,\n    params: [\"Endpoint\", \"Region\", \"UseDualStack\", \"UseFIPS\"],\n});\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n    return cache.get(endpointParams, () => resolveEndpoint(ruleSet, {\n        endpointParams: endpointParams,\n        logger: context.logger,\n    }));\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoAuthSigner } from \"@smithy/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 { defaultSSOOIDCHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n    return {\n        apiVersion: \"2019-06-10\",\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 ?? defaultSSOOIDCHttpAuthSchemeProvider,\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                schemeId: \"smithy.api#noAuth\",\n                identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n                signer: new NoAuthSigner(),\n            },\n        ],\n        logger: config?.logger ?? new NoOpLogger(),\n        serviceId: config?.serviceId ?? \"SSO OIDC\",\n        urlParser: config?.urlParser ?? parseUrl,\n        utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n        utf8Encoder: config?.utf8Encoder ?? toUtf8,\n    };\n};\n","export const AWS_EXECUTION_ENV = \"AWS_EXECUTION_ENV\";\nexport const AWS_REGION_ENV = \"AWS_REGION\";\nexport const AWS_DEFAULT_REGION_ENV = \"AWS_DEFAULT_REGION\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const DEFAULTS_MODE_OPTIONS = [\"in-region\", \"cross-region\", \"mobile\", \"standard\", \"legacy\"];\nexport const IMDS_REGION_PATH = \"/latest/meta-data/placement/region\";\n","const AWS_DEFAULTS_MODE_ENV = \"AWS_DEFAULTS_MODE\";\nconst AWS_DEFAULTS_MODE_CONFIG = \"defaults_mode\";\nexport const NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => {\n        return env[AWS_DEFAULTS_MODE_ENV];\n    },\n    configFileSelector: (profile) => {\n        return profile[AWS_DEFAULTS_MODE_CONFIG];\n    },\n    default: \"legacy\",\n};\n","import { NODE_REGION_CONFIG_OPTIONS } from \"@smithy/config-resolver\";\nimport { loadConfig } from \"@smithy/node-config-provider\";\nimport { memoize } from \"@smithy/property-provider\";\nimport { AWS_DEFAULT_REGION_ENV, AWS_EXECUTION_ENV, AWS_REGION_ENV, DEFAULTS_MODE_OPTIONS, ENV_IMDS_DISABLED, IMDS_REGION_PATH, } from \"./constants\";\nimport { NODE_DEFAULTS_MODE_CONFIG_OPTIONS } from \"./defaultsModeConfig\";\nexport const resolveDefaultsModeConfig = ({ region = loadConfig(NODE_REGION_CONFIG_OPTIONS), defaultsMode = loadConfig(NODE_DEFAULTS_MODE_CONFIG_OPTIONS), } = {}) => memoize(async () => {\n    const mode = typeof defaultsMode === \"function\" ? await defaultsMode() : defaultsMode;\n    switch (mode?.toLowerCase()) {\n        case \"auto\":\n            return resolveNodeDefaultsModeAuto(region);\n        case \"in-region\":\n        case \"cross-region\":\n        case \"mobile\":\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 resolveNodeDefaultsModeAuto = async (clientRegion) => {\n    if (clientRegion) {\n        const resolvedRegion = typeof clientRegion === \"function\" ? await clientRegion() : clientRegion;\n        const inferredRegion = await inferPhysicalRegion();\n        if (!inferredRegion) {\n            return \"standard\";\n        }\n        if (resolvedRegion === inferredRegion) {\n            return \"in-region\";\n        }\n        else {\n            return \"cross-region\";\n        }\n    }\n    return \"standard\";\n};\nconst inferPhysicalRegion = async () => {\n    if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {\n        return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];\n    }\n    if (!process.env[ENV_IMDS_DISABLED]) {\n        try {\n            const { getInstanceMetadataEndpoint, httpRequest } = await import(\"@smithy/credential-provider-imds\");\n            const endpoint = await getInstanceMetadataEndpoint();\n            return (await httpRequest({ ...endpoint, path: IMDS_REGION_PATH })).toString();\n        }\n        catch (e) {\n        }\n    }\n};\n","export * from \"./resolveDefaultsModeConfig\";\n","import packageInfo from \"../package.json\";\nimport { emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { NODE_APP_ID_CONFIG_OPTIONS, createDefaultUserAgentProvider } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { 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-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n    emitWarningIfUnsupportedVersion(process.version);\n    const defaultsMode = resolveDefaultsModeConfig(config);\n    const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n    const clientSharedValues = getSharedRuntimeConfig(config);\n    awsCheckVersion(process.version);\n    return {\n        ...clientSharedValues,\n        ...config,\n        runtime: \"node\",\n        defaultsMode,\n        bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n        credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,\n        defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n            createDefaultUserAgentProvider({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n        maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n        region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n        requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n        retryMode: config?.retryMode ??\n            loadNodeConfig({\n                ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n                default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n            }),\n        sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n        streamCollector: config?.streamCollector ?? streamCollector,\n        useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n        useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n        userAgentAppId: config?.userAgentAppId ?? loadNodeConfig(NODE_APP_ID_CONFIG_OPTIONS),\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 REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n    configFileSelector: (profile) => profile[REGION_INI_NAME],\n    default: () => {\n        throw new Error(\"Region is missing\");\n    },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n    preferredFile: \"credentials\",\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","export * from \"./config\";\nexport * from \"./resolveRegionConfig\";\n","export * from \"./extensions\";\nexport * from \"./regionConfig\";\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 { defaultSSOOIDCHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class SSOOIDCClient 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: defaultSSOOIDCHttpAuthSchemeParametersProvider,\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 SSOOIDCServiceException extends __ServiceException {\n    constructor(options) {\n        super(options);\n        Object.setPrototypeOf(this, SSOOIDCServiceException.prototype);\n    }\n}\n","import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { SSOOIDCServiceException as __BaseException } from \"./SSOOIDCServiceException\";\nexport class AccessDeniedException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"AccessDeniedException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"AccessDeniedException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, AccessDeniedException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class AuthorizationPendingException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"AuthorizationPendingException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"AuthorizationPendingException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, AuthorizationPendingException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class ExpiredTokenException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ExpiredTokenException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ExpiredTokenException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ExpiredTokenException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\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.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class InvalidClientException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidClientException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidClientException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidClientException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class InvalidGrantException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidGrantException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidGrantException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidGrantException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\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.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class InvalidScopeException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidScopeException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidScopeException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidScopeException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class SlowDownException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"SlowDownException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"SlowDownException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, SlowDownException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class UnauthorizedClientException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"UnauthorizedClientException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"UnauthorizedClientException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, UnauthorizedClientException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class UnsupportedGrantTypeException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"UnsupportedGrantTypeException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"UnsupportedGrantTypeException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, UnsupportedGrantTypeException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class InvalidRequestRegionException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidRequestRegionException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidRequestRegionException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidRequestRegionException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n        this.endpoint = opts.endpoint;\n        this.region = opts.region;\n    }\n}\nexport class InvalidClientMetadataException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidClientMetadataException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidClientMetadataException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidClientMetadataException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport class InvalidRedirectUriException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidRedirectUriException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidRedirectUriException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidRedirectUriException.prototype);\n        this.error = opts.error;\n        this.error_description = opts.error_description;\n    }\n}\nexport const CreateTokenRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.clientSecret && { clientSecret: SENSITIVE_STRING }),\n    ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n    ...(obj.codeVerifier && { codeVerifier: SENSITIVE_STRING }),\n});\nexport const CreateTokenResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n    ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n    ...(obj.idToken && { idToken: SENSITIVE_STRING }),\n});\nexport const CreateTokenWithIAMRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n    ...(obj.assertion && { assertion: SENSITIVE_STRING }),\n    ...(obj.subjectToken && { subjectToken: SENSITIVE_STRING }),\n    ...(obj.codeVerifier && { codeVerifier: SENSITIVE_STRING }),\n});\nexport const CreateTokenWithIAMResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n    ...(obj.refreshToken && { refreshToken: SENSITIVE_STRING }),\n    ...(obj.idToken && { idToken: SENSITIVE_STRING }),\n});\nexport const RegisterClientResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.clientSecret && { clientSecret: SENSITIVE_STRING }),\n});\nexport const StartDeviceAuthorizationRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.clientSecret && { clientSecret: SENSITIVE_STRING }),\n});\n","import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { requestBuilder as rb } from \"@smithy/core\";\nimport { _json, collectBody, decorateServiceException as __decorateServiceException, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, map, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { AccessDeniedException, AuthorizationPendingException, ExpiredTokenException, InternalServerException, InvalidClientException, InvalidClientMetadataException, InvalidGrantException, InvalidRedirectUriException, InvalidRequestException, InvalidRequestRegionException, InvalidScopeException, SlowDownException, UnauthorizedClientException, UnsupportedGrantTypeException, } from \"../models/models_0\";\nimport { SSOOIDCServiceException as __BaseException } from \"../models/SSOOIDCServiceException\";\nexport const se_CreateTokenCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = {\n        \"content-type\": \"application/json\",\n    };\n    b.bp(\"/token\");\n    let body;\n    body = JSON.stringify(take(input, {\n        clientId: [],\n        clientSecret: [],\n        code: [],\n        codeVerifier: [],\n        deviceCode: [],\n        grantType: [],\n        redirectUri: [],\n        refreshToken: [],\n        scope: (_) => _json(_),\n    }));\n    b.m(\"POST\").h(headers).b(body);\n    return b.build();\n};\nexport const se_CreateTokenWithIAMCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = {\n        \"content-type\": \"application/json\",\n    };\n    b.bp(\"/token\");\n    const query = map({\n        [_ai]: [, \"t\"],\n    });\n    let body;\n    body = JSON.stringify(take(input, {\n        assertion: [],\n        clientId: [],\n        code: [],\n        codeVerifier: [],\n        grantType: [],\n        redirectUri: [],\n        refreshToken: [],\n        requestedTokenType: [],\n        scope: (_) => _json(_),\n        subjectToken: [],\n        subjectTokenType: [],\n    }));\n    b.m(\"POST\").h(headers).q(query).b(body);\n    return b.build();\n};\nexport const se_RegisterClientCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = {\n        \"content-type\": \"application/json\",\n    };\n    b.bp(\"/client/register\");\n    let body;\n    body = JSON.stringify(take(input, {\n        clientName: [],\n        clientType: [],\n        entitledApplicationArn: [],\n        grantTypes: (_) => _json(_),\n        issuerUrl: [],\n        redirectUris: (_) => _json(_),\n        scopes: (_) => _json(_),\n    }));\n    b.m(\"POST\").h(headers).b(body);\n    return b.build();\n};\nexport const se_StartDeviceAuthorizationCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = {\n        \"content-type\": \"application/json\",\n    };\n    b.bp(\"/device_authorization\");\n    let body;\n    body = JSON.stringify(take(input, {\n        clientId: [],\n        clientSecret: [],\n        startUrl: [],\n    }));\n    b.m(\"POST\").h(headers).b(body);\n    return b.build();\n};\nexport const de_CreateTokenCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        accessToken: __expectString,\n        expiresIn: __expectInt32,\n        idToken: __expectString,\n        refreshToken: __expectString,\n        tokenType: __expectString,\n    });\n    Object.assign(contents, doc);\n    return contents;\n};\nexport const de_CreateTokenWithIAMCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        accessToken: __expectString,\n        expiresIn: __expectInt32,\n        idToken: __expectString,\n        issuedTokenType: __expectString,\n        refreshToken: __expectString,\n        scope: _json,\n        tokenType: __expectString,\n    });\n    Object.assign(contents, doc);\n    return contents;\n};\nexport const de_RegisterClientCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        authorizationEndpoint: __expectString,\n        clientId: __expectString,\n        clientIdIssuedAt: __expectLong,\n        clientSecret: __expectString,\n        clientSecretExpiresAt: __expectLong,\n        tokenEndpoint: __expectString,\n    });\n    Object.assign(contents, doc);\n    return contents;\n};\nexport const de_StartDeviceAuthorizationCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        deviceCode: __expectString,\n        expiresIn: __expectInt32,\n        interval: __expectInt32,\n        userCode: __expectString,\n        verificationUri: __expectString,\n        verificationUriComplete: __expectString,\n    });\n    Object.assign(contents, doc);\n    return contents;\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 \"AccessDeniedException\":\n        case \"com.amazonaws.ssooidc#AccessDeniedException\":\n            throw await de_AccessDeniedExceptionRes(parsedOutput, context);\n        case \"AuthorizationPendingException\":\n        case \"com.amazonaws.ssooidc#AuthorizationPendingException\":\n            throw await de_AuthorizationPendingExceptionRes(parsedOutput, context);\n        case \"ExpiredTokenException\":\n        case \"com.amazonaws.ssooidc#ExpiredTokenException\":\n            throw await de_ExpiredTokenExceptionRes(parsedOutput, context);\n        case \"InternalServerException\":\n        case \"com.amazonaws.ssooidc#InternalServerException\":\n            throw await de_InternalServerExceptionRes(parsedOutput, context);\n        case \"InvalidClientException\":\n        case \"com.amazonaws.ssooidc#InvalidClientException\":\n            throw await de_InvalidClientExceptionRes(parsedOutput, context);\n        case \"InvalidGrantException\":\n        case \"com.amazonaws.ssooidc#InvalidGrantException\":\n            throw await de_InvalidGrantExceptionRes(parsedOutput, context);\n        case \"InvalidRequestException\":\n        case \"com.amazonaws.ssooidc#InvalidRequestException\":\n            throw await de_InvalidRequestExceptionRes(parsedOutput, context);\n        case \"InvalidScopeException\":\n        case \"com.amazonaws.ssooidc#InvalidScopeException\":\n            throw await de_InvalidScopeExceptionRes(parsedOutput, context);\n        case \"SlowDownException\":\n        case \"com.amazonaws.ssooidc#SlowDownException\":\n            throw await de_SlowDownExceptionRes(parsedOutput, context);\n        case \"UnauthorizedClientException\":\n        case \"com.amazonaws.ssooidc#UnauthorizedClientException\":\n            throw await de_UnauthorizedClientExceptionRes(parsedOutput, context);\n        case \"UnsupportedGrantTypeException\":\n        case \"com.amazonaws.ssooidc#UnsupportedGrantTypeException\":\n            throw await de_UnsupportedGrantTypeExceptionRes(parsedOutput, context);\n        case \"InvalidRequestRegionException\":\n        case \"com.amazonaws.ssooidc#InvalidRequestRegionException\":\n            throw await de_InvalidRequestRegionExceptionRes(parsedOutput, context);\n        case \"InvalidClientMetadataException\":\n        case \"com.amazonaws.ssooidc#InvalidClientMetadataException\":\n            throw await de_InvalidClientMetadataExceptionRes(parsedOutput, context);\n        case \"InvalidRedirectUriException\":\n        case \"com.amazonaws.ssooidc#InvalidRedirectUriException\":\n            throw await de_InvalidRedirectUriExceptionRes(parsedOutput, context);\n        default:\n            const parsedBody = parsedOutput.body;\n            return throwDefaultError({\n                output,\n                parsedBody,\n                errorCode,\n            });\n    }\n};\nconst throwDefaultError = withBaseException(__BaseException);\nconst de_AccessDeniedExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new AccessDeniedException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_AuthorizationPendingExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new AuthorizationPendingException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_ExpiredTokenExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new ExpiredTokenException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InternalServerExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InternalServerException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidClientExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidClientException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidClientMetadataExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidClientMetadataException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidGrantExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidGrantException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidRedirectUriExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidRedirectUriException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidRequestExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidRequestException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidRequestRegionExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        endpoint: __expectString,\n        error: __expectString,\n        error_description: __expectString,\n        region: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidRequestRegionException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_InvalidScopeExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidScopeException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_SlowDownExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new SlowDownException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_UnauthorizedClientExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new UnauthorizedClientException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_UnsupportedGrantTypeExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        error: __expectString,\n        error_description: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new UnsupportedGrantTypeException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\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 _ai = \"aws_iam\";\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 { CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_CreateTokenCommand, se_CreateTokenCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class CreateTokenCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSSOOIDCService\", \"CreateToken\", {})\n    .n(\"SSOOIDCClient\", \"CreateTokenCommand\")\n    .f(CreateTokenRequestFilterSensitiveLog, CreateTokenResponseFilterSensitiveLog)\n    .ser(se_CreateTokenCommand)\n    .de(de_CreateTokenCommand)\n    .build() {\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 { CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_CreateTokenWithIAMCommand, se_CreateTokenWithIAMCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class CreateTokenWithIAMCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSSOOIDCService\", \"CreateTokenWithIAM\", {})\n    .n(\"SSOOIDCClient\", \"CreateTokenWithIAMCommand\")\n    .f(CreateTokenWithIAMRequestFilterSensitiveLog, CreateTokenWithIAMResponseFilterSensitiveLog)\n    .ser(se_CreateTokenWithIAMCommand)\n    .de(de_CreateTokenWithIAMCommand)\n    .build() {\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 { RegisterClientResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_RegisterClientCommand, se_RegisterClientCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class RegisterClientCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSSOOIDCService\", \"RegisterClient\", {})\n    .n(\"SSOOIDCClient\", \"RegisterClientCommand\")\n    .f(void 0, RegisterClientResponseFilterSensitiveLog)\n    .ser(se_RegisterClientCommand)\n    .de(de_RegisterClientCommand)\n    .build() {\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 { StartDeviceAuthorizationRequestFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_StartDeviceAuthorizationCommand, se_StartDeviceAuthorizationCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class StartDeviceAuthorizationCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSSOOIDCService\", \"StartDeviceAuthorization\", {})\n    .n(\"SSOOIDCClient\", \"StartDeviceAuthorizationCommand\")\n    .f(StartDeviceAuthorizationRequestFilterSensitiveLog, void 0)\n    .ser(se_StartDeviceAuthorizationCommand)\n    .de(de_StartDeviceAuthorizationCommand)\n    .build() {\n}\n","import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { CreateTokenCommand } from \"./commands/CreateTokenCommand\";\nimport { CreateTokenWithIAMCommand, } from \"./commands/CreateTokenWithIAMCommand\";\nimport { RegisterClientCommand, } from \"./commands/RegisterClientCommand\";\nimport { StartDeviceAuthorizationCommand, } from \"./commands/StartDeviceAuthorizationCommand\";\nimport { SSOOIDCClient } from \"./SSOOIDCClient\";\nconst commands = {\n    CreateTokenCommand,\n    CreateTokenWithIAMCommand,\n    RegisterClientCommand,\n    StartDeviceAuthorizationCommand,\n};\nexport class SSOOIDC extends SSOOIDCClient {\n}\ncreateAggregatedClient(commands, SSOOIDC);\n","export * from \"./CreateTokenCommand\";\nexport * from \"./CreateTokenWithIAMCommand\";\nexport * from \"./RegisterClientCommand\";\nexport * from \"./StartDeviceAuthorizationCommand\";\n","export * from \"./models_0\";\n","export * from \"./SSOOIDCClient\";\nexport * from \"./SSOOIDC\";\nexport * from \"./commands\";\nexport * from \"./models\";\nexport { SSOOIDCServiceException } from \"./models/SSOOIDCServiceException\";\n","export const getSsoOidcClient = async (ssoRegion, init = {}) => {\n    const { SSOOIDCClient } = await import(\"@aws-sdk/client-sso-oidc\");\n    const ssoOidcClient = new SSOOIDCClient(Object.assign({}, init.clientConfig ?? {}, {\n        region: ssoRegion ?? init.clientConfig?.region,\n        logger: init.clientConfig?.logger ?? init.parentClientConfig?.logger,\n    }));\n    return ssoOidcClient;\n};\n","import { getSsoOidcClient } from \"./getSsoOidcClient\";\nexport const getNewSsoOidcToken = async (ssoToken, ssoRegion, init = {}) => {\n    const { CreateTokenCommand } = await import(\"@aws-sdk/client-sso-oidc\");\n    const ssoOidcClient = await getSsoOidcClient(ssoRegion, init);\n    return ssoOidcClient.send(new CreateTokenCommand({\n        clientId: ssoToken.clientId,\n        clientSecret: ssoToken.clientSecret,\n        refreshToken: ssoToken.refreshToken,\n        grantType: \"refresh_token\",\n    }));\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenExpiry = (token) => {\n    if (token.expiration && token.expiration.getTime() < Date.now()) {\n        throw new TokenProviderError(`Token is expired. ${REFRESH_MESSAGE}`, false);\n    }\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nimport { REFRESH_MESSAGE } from \"./constants\";\nexport const validateTokenKey = (key, value, forRefresh = false) => {\n    if (typeof value === \"undefined\") {\n        throw new TokenProviderError(`Value not present for '${key}' in SSO Token${forRefresh ? \". Cannot refresh\" : \"\"}. ${REFRESH_MESSAGE}`, false);\n    }\n};\n","import { getSSOTokenFilepath } from \"@smithy/shared-ini-file-loader\";\nimport { promises as fsPromises } from \"fs\";\nconst { writeFile } = fsPromises;\nexport const writeSSOTokenToFile = (id, ssoToken) => {\n    const tokenFilepath = getSSOTokenFilepath(id);\n    const tokenString = JSON.stringify(ssoToken, null, 2);\n    return writeFile(tokenFilepath, tokenString);\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, getSSOTokenFromFile, loadSsoSessionData, parseKnownFiles, } from \"@smithy/shared-ini-file-loader\";\nimport { EXPIRE_WINDOW_MS, REFRESH_MESSAGE } from \"./constants\";\nimport { getNewSsoOidcToken } from \"./getNewSsoOidcToken\";\nimport { validateTokenExpiry } from \"./validateTokenExpiry\";\nimport { validateTokenKey } from \"./validateTokenKey\";\nimport { writeSSOTokenToFile } from \"./writeSSOTokenToFile\";\nconst lastRefreshAttemptTime = new Date(0);\nexport const fromSso = (init = {}) => async () => {\n    init.logger?.debug(\"@aws-sdk/token-providers - fromSso\");\n    const profiles = await parseKnownFiles(init);\n    const profileName = getProfileName(init);\n    const profile = profiles[profileName];\n    if (!profile) {\n        throw new TokenProviderError(`Profile '${profileName}' could not be found in shared credentials file.`, false);\n    }\n    else if (!profile[\"sso_session\"]) {\n        throw new TokenProviderError(`Profile '${profileName}' is missing required property 'sso_session'.`);\n    }\n    const ssoSessionName = profile[\"sso_session\"];\n    const ssoSessions = await loadSsoSessionData(init);\n    const ssoSession = ssoSessions[ssoSessionName];\n    if (!ssoSession) {\n        throw new TokenProviderError(`Sso session '${ssoSessionName}' could not be found in shared credentials file.`, false);\n    }\n    for (const ssoSessionRequiredKey of [\"sso_start_url\", \"sso_region\"]) {\n        if (!ssoSession[ssoSessionRequiredKey]) {\n            throw new TokenProviderError(`Sso session '${ssoSessionName}' is missing required property '${ssoSessionRequiredKey}'.`, false);\n        }\n    }\n    const ssoStartUrl = ssoSession[\"sso_start_url\"];\n    const ssoRegion = ssoSession[\"sso_region\"];\n    let ssoToken;\n    try {\n        ssoToken = await getSSOTokenFromFile(ssoSessionName);\n    }\n    catch (e) {\n        throw new TokenProviderError(`The SSO session token associated with profile=${profileName} was not found or is invalid. ${REFRESH_MESSAGE}`, false);\n    }\n    validateTokenKey(\"accessToken\", ssoToken.accessToken);\n    validateTokenKey(\"expiresAt\", ssoToken.expiresAt);\n    const { accessToken, expiresAt } = ssoToken;\n    const existingToken = { token: accessToken, expiration: new Date(expiresAt) };\n    if (existingToken.expiration.getTime() - Date.now() > EXPIRE_WINDOW_MS) {\n        return existingToken;\n    }\n    if (Date.now() - lastRefreshAttemptTime.getTime() < 30 * 1000) {\n        validateTokenExpiry(existingToken);\n        return existingToken;\n    }\n    validateTokenKey(\"clientId\", ssoToken.clientId, true);\n    validateTokenKey(\"clientSecret\", ssoToken.clientSecret, true);\n    validateTokenKey(\"refreshToken\", ssoToken.refreshToken, true);\n    try {\n        lastRefreshAttemptTime.setTime(Date.now());\n        const newSsoOidcToken = await getNewSsoOidcToken(ssoToken, ssoRegion, init);\n        validateTokenKey(\"accessToken\", newSsoOidcToken.accessToken);\n        validateTokenKey(\"expiresIn\", newSsoOidcToken.expiresIn);\n        const newTokenExpiration = new Date(Date.now() + newSsoOidcToken.expiresIn * 1000);\n        try {\n            await writeSSOTokenToFile(ssoSessionName, {\n                ...ssoToken,\n                accessToken: newSsoOidcToken.accessToken,\n                expiresAt: newTokenExpiration.toISOString(),\n                refreshToken: newSsoOidcToken.refreshToken,\n            });\n        }\n        catch (error) {\n        }\n        return {\n            token: newSsoOidcToken.accessToken,\n            expiration: newTokenExpiration,\n        };\n    }\n    catch (error) {\n        validateTokenExpiry(existingToken);\n        return existingToken;\n    }\n};\n","import { TokenProviderError } from \"@smithy/property-provider\";\nexport const fromStatic = ({ token, logger }) => async () => {\n    logger?.debug(\"@aws-sdk/token-providers - fromStatic\");\n    if (!token || !token.token) {\n        throw new TokenProviderError(`Please pass a valid token to fromStatic`, false);\n    }\n    return token;\n};\n","import { chain, memoize, TokenProviderError } from \"@smithy/property-provider\";\nimport { fromSso } from \"./fromSso\";\nexport const nodeProvider = (init = {}) => memoize(chain(fromSso(init), async () => {\n    throw new TokenProviderError(\"Could not load token from any providers\", false);\n}), (token) => token.expiration !== undefined && token.expiration.getTime() - Date.now() < 300000, (token) => token.expiration !== undefined);\n","export * from \"./fromSso\";\nexport * from \"./fromStatic\";\nexport * from \"./nodeProvider\";\n","import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultSSOHttpAuthSchemeParametersProvider = 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: \"awsssoportal\",\n            region: authParameters.region,\n        },\n        propertiesExtractor: (config, context) => ({\n            signingProperties: {\n                config,\n                context,\n            },\n        }),\n    };\n}\nfunction createSmithyApiNoAuthHttpAuthOption(authParameters) {\n    return {\n        schemeId: \"smithy.api#noAuth\",\n    };\n}\nexport const defaultSSOHttpAuthSchemeProvider = (authParameters) => {\n    const options = [];\n    switch (authParameters.operation) {\n        case \"GetRoleCredentials\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        case \"ListAccountRoles\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        case \"ListAccounts\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        case \"Logout\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\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: \"awsssoportal\",\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","{\n  \"name\": \"@aws-sdk/client-sso\",\n  \"description\": \"AWS SDK for JavaScript Sso Client for Node.js, Browser and React Native\",\n  \"version\": \"3.696.0\",\n  \"scripts\": {\n    \"build\": \"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'\",\n    \"build:cjs\": \"node ../../scripts/compilation/inline client-sso\",\n    \"build:es\": \"tsc -p tsconfig.es.json\",\n    \"build:include:deps\": \"lerna run --scope $npm_package_name --include-dependencies build\",\n    \"build:types\": \"tsc -p tsconfig.types.json\",\n    \"build:types:downlevel\": \"downlevel-dts dist-types dist-types/ts3.4\",\n    \"clean\": \"rimraf ./dist-* && rimraf *.tsbuildinfo\",\n    \"extract:docs\": \"api-extractor run --local\",\n    \"generate:client\": \"node ../../scripts/generate-clients/single-service --solo sso\"\n  },\n  \"main\": \"./dist-cjs/index.js\",\n  \"types\": \"./dist-types/index.d.ts\",\n  \"module\": \"./dist-es/index.js\",\n  \"sideEffects\": false,\n  \"dependencies\": {\n    \"@aws-crypto/sha256-browser\": \"5.2.0\",\n    \"@aws-crypto/sha256-js\": \"5.2.0\",\n    \"@aws-sdk/core\": \"3.696.0\",\n    \"@aws-sdk/middleware-host-header\": \"3.696.0\",\n    \"@aws-sdk/middleware-logger\": \"3.696.0\",\n    \"@aws-sdk/middleware-recursion-detection\": \"3.696.0\",\n    \"@aws-sdk/middleware-user-agent\": \"3.696.0\",\n    \"@aws-sdk/region-config-resolver\": \"3.696.0\",\n    \"@aws-sdk/types\": \"3.696.0\",\n    \"@aws-sdk/util-endpoints\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-browser\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-node\": \"3.696.0\",\n    \"@smithy/config-resolver\": \"^3.0.12\",\n    \"@smithy/core\": \"^2.5.3\",\n    \"@smithy/fetch-http-handler\": \"^4.1.1\",\n    \"@smithy/hash-node\": \"^3.0.10\",\n    \"@smithy/invalid-dependency\": \"^3.0.10\",\n    \"@smithy/middleware-content-length\": \"^3.0.12\",\n    \"@smithy/middleware-endpoint\": \"^3.2.3\",\n    \"@smithy/middleware-retry\": \"^3.0.27\",\n    \"@smithy/middleware-serde\": \"^3.0.10\",\n    \"@smithy/middleware-stack\": \"^3.0.10\",\n    \"@smithy/node-config-provider\": \"^3.1.11\",\n    \"@smithy/node-http-handler\": \"^3.3.1\",\n    \"@smithy/protocol-http\": \"^4.1.7\",\n    \"@smithy/smithy-client\": \"^3.4.4\",\n    \"@smithy/types\": \"^3.7.1\",\n    \"@smithy/url-parser\": \"^3.0.10\",\n    \"@smithy/util-base64\": \"^3.0.0\",\n    \"@smithy/util-body-length-browser\": \"^3.0.0\",\n    \"@smithy/util-body-length-node\": \"^3.0.0\",\n    \"@smithy/util-defaults-mode-browser\": \"^3.0.27\",\n    \"@smithy/util-defaults-mode-node\": \"^3.0.27\",\n    \"@smithy/util-endpoints\": \"^2.1.6\",\n    \"@smithy/util-middleware\": \"^3.0.10\",\n    \"@smithy/util-retry\": \"^3.0.10\",\n    \"@smithy/util-utf8\": \"^3.0.0\",\n    \"tslib\": \"^2.6.2\"\n  },\n  \"devDependencies\": {\n    \"@tsconfig/node16\": \"16.1.3\",\n    \"@types/node\": \"^16.18.96\",\n    \"concurrently\": \"7.0.0\",\n    \"downlevel-dts\": \"0.10.1\",\n    \"rimraf\": \"3.0.2\",\n    \"typescript\": \"~4.9.5\"\n  },\n  \"engines\": {\n    \"node\": \">=16.0.0\"\n  },\n  \"typesVersions\": {\n    \"<4.0\": {\n      \"dist-types/*\": [\n        \"dist-types/ts3.4/*\"\n      ]\n    }\n  },\n  \"files\": [\n    \"dist-*/**\"\n  ],\n  \"author\": {\n    \"name\": \"AWS SDK for JavaScript Team\",\n    \"url\": \"https://aws.amazon.com/javascript/\"\n  },\n  \"license\": \"Apache-2.0\",\n  \"browser\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.browser\"\n  },\n  \"react-native\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.native\"\n  },\n  \"homepage\": \"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sso\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/aws/aws-sdk-js-v3.git\",\n    \"directory\": \"clients/client-sso\"\n  }\n}\n","const u = \"required\", v = \"fn\", w = \"argv\", x = \"ref\";\nconst a = true, b = \"isSet\", c = \"booleanEquals\", d = \"error\", e = \"endpoint\", f = \"tree\", g = \"PartitionResult\", h = \"getAttr\", i = { [u]: false, \"type\": \"String\" }, j = { [u]: true, \"default\": false, \"type\": \"Boolean\" }, k = { [x]: \"Endpoint\" }, l = { [v]: c, [w]: [{ [x]: \"UseFIPS\" }, true] }, m = { [v]: c, [w]: [{ [x]: \"UseDualStack\" }, true] }, n = {}, o = { [v]: h, [w]: [{ [x]: g }, \"supportsFIPS\"] }, p = { [x]: g }, q = { [v]: c, [w]: [true, { [v]: h, [w]: [p, \"supportsDualStack\"] }] }, r = [l], s = [m], t = [{ [x]: \"Region\" }];\nconst _data = { version: \"1.0\", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i }, rules: [{ conditions: [{ [v]: b, [w]: [k] }], rules: [{ conditions: r, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", type: d }, { conditions: s, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", type: d }, { endpoint: { url: k, properties: n, headers: n }, type: e }], type: f }, { conditions: [{ [v]: b, [w]: t }], rules: [{ conditions: [{ [v]: \"aws.partition\", [w]: t, assign: g }], rules: [{ conditions: [l, m], rules: [{ conditions: [{ [v]: c, [w]: [a, o] }, q], rules: [{ endpoint: { url: \"https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", type: d }], type: f }, { conditions: r, rules: [{ conditions: [{ [v]: c, [w]: [o, a] }], rules: [{ conditions: [{ [v]: \"stringEquals\", [w]: [{ [v]: h, [w]: [p, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://portal.sso.{Region}.amazonaws.com\", properties: n, headers: n }, type: e }, { endpoint: { url: \"https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"FIPS is enabled but this partition does not support FIPS\", type: d }], type: f }, { conditions: s, rules: [{ conditions: [q], rules: [{ endpoint: { url: \"https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: n, headers: n }, type: e }], type: f }, { error: \"DualStack is enabled but this partition does not support DualStack\", type: d }], type: f }, { endpoint: { url: \"https://portal.sso.{Region}.{PartitionResult#dnsSuffix}\", properties: n, headers: n }, 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, EndpointCache, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nconst cache = new EndpointCache({\n    size: 50,\n    params: [\"Endpoint\", \"Region\", \"UseDualStack\", \"UseFIPS\"],\n});\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n    return cache.get(endpointParams, () => resolveEndpoint(ruleSet, {\n        endpointParams: endpointParams,\n        logger: context.logger,\n    }));\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoAuthSigner } from \"@smithy/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 { defaultSSOHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n    return {\n        apiVersion: \"2019-06-10\",\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 ?? defaultSSOHttpAuthSchemeProvider,\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                schemeId: \"smithy.api#noAuth\",\n                identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n                signer: new NoAuthSigner(),\n            },\n        ],\n        logger: config?.logger ?? new NoOpLogger(),\n        serviceId: config?.serviceId ?? \"SSO\",\n        urlParser: config?.urlParser ?? parseUrl,\n        utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n        utf8Encoder: config?.utf8Encoder ?? toUtf8,\n    };\n};\n","import packageInfo from \"../package.json\";\nimport { emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { NODE_APP_ID_CONFIG_OPTIONS, createDefaultUserAgentProvider } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { 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-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n    emitWarningIfUnsupportedVersion(process.version);\n    const defaultsMode = resolveDefaultsModeConfig(config);\n    const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n    const clientSharedValues = getSharedRuntimeConfig(config);\n    awsCheckVersion(process.version);\n    return {\n        ...clientSharedValues,\n        ...config,\n        runtime: \"node\",\n        defaultsMode,\n        bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n        defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n            createDefaultUserAgentProvider({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n        maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n        region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n        requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n        retryMode: config?.retryMode ??\n            loadNodeConfig({\n                ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n                default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n            }),\n        sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n        streamCollector: config?.streamCollector ?? streamCollector,\n        useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n        useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n        userAgentAppId: config?.userAgentAppId ?? loadNodeConfig(NODE_APP_ID_CONFIG_OPTIONS),\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 { defaultSSOHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class SSOClient 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: defaultSSOHttpAuthSchemeParametersProvider,\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 SSOServiceException extends __ServiceException {\n    constructor(options) {\n        super(options);\n        Object.setPrototypeOf(this, SSOServiceException.prototype);\n    }\n}\n","import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { SSOServiceException as __BaseException } from \"./SSOServiceException\";\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    }\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    }\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    }\n}\nexport class UnauthorizedException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"UnauthorizedException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"UnauthorizedException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, UnauthorizedException.prototype);\n    }\n}\nexport const GetRoleCredentialsRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\nexport const RoleCredentialsFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.secretAccessKey && { secretAccessKey: SENSITIVE_STRING }),\n    ...(obj.sessionToken && { sessionToken: SENSITIVE_STRING }),\n});\nexport const GetRoleCredentialsResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.roleCredentials && { roleCredentials: RoleCredentialsFilterSensitiveLog(obj.roleCredentials) }),\n});\nexport const ListAccountRolesRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\nexport const ListAccountsRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\nexport const LogoutRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.accessToken && { accessToken: SENSITIVE_STRING }),\n});\n","import { loadRestJsonErrorCode, parseJsonBody as parseBody, parseJsonErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { requestBuilder as rb } from \"@smithy/core\";\nimport { _json, collectBody, decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, isSerializableHeaderValue, map, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { InvalidRequestException, ResourceNotFoundException, TooManyRequestsException, UnauthorizedException, } from \"../models/models_0\";\nimport { SSOServiceException as __BaseException } from \"../models/SSOServiceException\";\nexport const se_GetRoleCredentialsCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = map({}, isSerializableHeaderValue, {\n        [_xasbt]: input[_aT],\n    });\n    b.bp(\"/federation/credentials\");\n    const query = map({\n        [_rn]: [, __expectNonNull(input[_rN], `roleName`)],\n        [_ai]: [, __expectNonNull(input[_aI], `accountId`)],\n    });\n    let body;\n    b.m(\"GET\").h(headers).q(query).b(body);\n    return b.build();\n};\nexport const se_ListAccountRolesCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = map({}, isSerializableHeaderValue, {\n        [_xasbt]: input[_aT],\n    });\n    b.bp(\"/assignment/roles\");\n    const query = map({\n        [_nt]: [, input[_nT]],\n        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],\n        [_ai]: [, __expectNonNull(input[_aI], `accountId`)],\n    });\n    let body;\n    b.m(\"GET\").h(headers).q(query).b(body);\n    return b.build();\n};\nexport const se_ListAccountsCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = map({}, isSerializableHeaderValue, {\n        [_xasbt]: input[_aT],\n    });\n    b.bp(\"/assignment/accounts\");\n    const query = map({\n        [_nt]: [, input[_nT]],\n        [_mr]: [() => input.maxResults !== void 0, () => input[_mR].toString()],\n    });\n    let body;\n    b.m(\"GET\").h(headers).q(query).b(body);\n    return b.build();\n};\nexport const se_LogoutCommand = async (input, context) => {\n    const b = rb(input, context);\n    const headers = map({}, isSerializableHeaderValue, {\n        [_xasbt]: input[_aT],\n    });\n    b.bp(\"/logout\");\n    let body;\n    b.m(\"POST\").h(headers).b(body);\n    return b.build();\n};\nexport const de_GetRoleCredentialsCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        roleCredentials: _json,\n    });\n    Object.assign(contents, doc);\n    return contents;\n};\nexport const de_ListAccountRolesCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        nextToken: __expectString,\n        roleList: _json,\n    });\n    Object.assign(contents, doc);\n    return contents;\n};\nexport const de_ListAccountsCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), \"body\");\n    const doc = take(data, {\n        accountList: _json,\n        nextToken: __expectString,\n    });\n    Object.assign(contents, doc);\n    return contents;\n};\nexport const de_LogoutCommand = async (output, context) => {\n    if (output.statusCode !== 200 && output.statusCode >= 300) {\n        return de_CommandError(output, context);\n    }\n    const contents = map({\n        $metadata: deserializeMetadata(output),\n    });\n    await collectBody(output.body, context);\n    return contents;\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 \"InvalidRequestException\":\n        case \"com.amazonaws.sso#InvalidRequestException\":\n            throw await de_InvalidRequestExceptionRes(parsedOutput, context);\n        case \"ResourceNotFoundException\":\n        case \"com.amazonaws.sso#ResourceNotFoundException\":\n            throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);\n        case \"TooManyRequestsException\":\n        case \"com.amazonaws.sso#TooManyRequestsException\":\n            throw await de_TooManyRequestsExceptionRes(parsedOutput, context);\n        case \"UnauthorizedException\":\n        case \"com.amazonaws.sso#UnauthorizedException\":\n            throw await de_UnauthorizedExceptionRes(parsedOutput, context);\n        default:\n            const parsedBody = parsedOutput.body;\n            return throwDefaultError({\n                output,\n                parsedBody,\n                errorCode,\n            });\n    }\n};\nconst throwDefaultError = withBaseException(__BaseException);\nconst de_InvalidRequestExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        message: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new InvalidRequestException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_ResourceNotFoundExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        message: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new ResourceNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_TooManyRequestsExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        message: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new TooManyRequestsException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\n};\nconst de_UnauthorizedExceptionRes = async (parsedOutput, context) => {\n    const contents = map({});\n    const data = parsedOutput.body;\n    const doc = take(data, {\n        message: __expectString,\n    });\n    Object.assign(contents, doc);\n    const exception = new UnauthorizedException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...contents,\n    });\n    return __decorateServiceException(exception, parsedOutput.body);\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 _aI = \"accountId\";\nconst _aT = \"accessToken\";\nconst _ai = \"account_id\";\nconst _mR = \"maxResults\";\nconst _mr = \"max_result\";\nconst _nT = \"nextToken\";\nconst _nt = \"next_token\";\nconst _rN = \"roleName\";\nconst _rn = \"role_name\";\nconst _xasbt = \"x-amz-sso_bearer_token\";\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 { GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_GetRoleCredentialsCommand, se_GetRoleCredentialsCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class GetRoleCredentialsCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"SWBPortalService\", \"GetRoleCredentials\", {})\n    .n(\"SSOClient\", \"GetRoleCredentialsCommand\")\n    .f(GetRoleCredentialsRequestFilterSensitiveLog, GetRoleCredentialsResponseFilterSensitiveLog)\n    .ser(se_GetRoleCredentialsCommand)\n    .de(de_GetRoleCredentialsCommand)\n    .build() {\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 { ListAccountRolesRequestFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_ListAccountRolesCommand, se_ListAccountRolesCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class ListAccountRolesCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"SWBPortalService\", \"ListAccountRoles\", {})\n    .n(\"SSOClient\", \"ListAccountRolesCommand\")\n    .f(ListAccountRolesRequestFilterSensitiveLog, void 0)\n    .ser(se_ListAccountRolesCommand)\n    .de(de_ListAccountRolesCommand)\n    .build() {\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 { ListAccountsRequestFilterSensitiveLog } from \"../models/models_0\";\nimport { de_ListAccountsCommand, se_ListAccountsCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class ListAccountsCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"SWBPortalService\", \"ListAccounts\", {})\n    .n(\"SSOClient\", \"ListAccountsCommand\")\n    .f(ListAccountsRequestFilterSensitiveLog, void 0)\n    .ser(se_ListAccountsCommand)\n    .de(de_ListAccountsCommand)\n    .build() {\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 { LogoutRequestFilterSensitiveLog } from \"../models/models_0\";\nimport { de_LogoutCommand, se_LogoutCommand } from \"../protocols/Aws_restJson1\";\nexport { $Command };\nexport class LogoutCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"SWBPortalService\", \"Logout\", {})\n    .n(\"SSOClient\", \"LogoutCommand\")\n    .f(LogoutRequestFilterSensitiveLog, void 0)\n    .ser(se_LogoutCommand)\n    .de(de_LogoutCommand)\n    .build() {\n}\n","import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { GetRoleCredentialsCommand, } from \"./commands/GetRoleCredentialsCommand\";\nimport { ListAccountRolesCommand, } from \"./commands/ListAccountRolesCommand\";\nimport { ListAccountsCommand, } from \"./commands/ListAccountsCommand\";\nimport { LogoutCommand } from \"./commands/LogoutCommand\";\nimport { SSOClient } from \"./SSOClient\";\nconst commands = {\n    GetRoleCredentialsCommand,\n    ListAccountRolesCommand,\n    ListAccountsCommand,\n    LogoutCommand,\n};\nexport class SSO extends SSOClient {\n}\ncreateAggregatedClient(commands, SSO);\n","export * from \"./GetRoleCredentialsCommand\";\nexport * from \"./ListAccountRolesCommand\";\nexport * from \"./ListAccountsCommand\";\nexport * from \"./LogoutCommand\";\n","export {};\n","import { createPaginator } from \"@smithy/core\";\nimport { ListAccountRolesCommand, } from \"../commands/ListAccountRolesCommand\";\nimport { SSOClient } from \"../SSOClient\";\nexport const paginateListAccountRoles = createPaginator(SSOClient, ListAccountRolesCommand, \"nextToken\", \"nextToken\", \"maxResults\");\n","import { createPaginator } from \"@smithy/core\";\nimport { ListAccountsCommand, } from \"../commands/ListAccountsCommand\";\nimport { SSOClient } from \"../SSOClient\";\nexport const paginateListAccounts = createPaginator(SSOClient, ListAccountsCommand, \"nextToken\", \"nextToken\", \"maxResults\");\n","export * from \"./Interfaces\";\nexport * from \"./ListAccountRolesPaginator\";\nexport * from \"./ListAccountsPaginator\";\n","export * from \"./models_0\";\n","export * from \"./SSOClient\";\nexport * from \"./SSO\";\nexport * from \"./commands\";\nexport * from \"./pagination\";\nexport * from \"./models\";\nexport { SSOServiceException } from \"./models/SSOServiceException\";\n","import { GetRoleCredentialsCommand, SSOClient } from \"@aws-sdk/client-sso\";\nexport { GetRoleCredentialsCommand, SSOClient };\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { fromSso as getSsoTokenProvider } from \"@aws-sdk/token-providers\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getSSOTokenFromFile } from \"@smithy/shared-ini-file-loader\";\nconst SHOULD_FAIL_CREDENTIAL_CHAIN = false;\nexport const resolveSSOCredentials = async ({ ssoStartUrl, ssoSession, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, clientConfig, parentClientConfig, profile, logger, }) => {\n    let token;\n    const refreshMessage = `To refresh this SSO session run aws sso login with the corresponding profile.`;\n    if (ssoSession) {\n        try {\n            const _token = await getSsoTokenProvider({ profile })();\n            token = {\n                accessToken: _token.token,\n                expiresAt: new Date(_token.expiration).toISOString(),\n            };\n        }\n        catch (e) {\n            throw new CredentialsProviderError(e.message, {\n                tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n                logger,\n            });\n        }\n    }\n    else {\n        try {\n            token = await getSSOTokenFromFile(ssoStartUrl);\n        }\n        catch (e) {\n            throw new CredentialsProviderError(`The SSO session associated with this profile is invalid. ${refreshMessage}`, {\n                tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n                logger,\n            });\n        }\n    }\n    if (new Date(token.expiresAt).getTime() - Date.now() <= 0) {\n        throw new CredentialsProviderError(`The SSO session associated with this profile has expired. ${refreshMessage}`, {\n            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n            logger,\n        });\n    }\n    const { accessToken } = token;\n    const { SSOClient, GetRoleCredentialsCommand } = await import(\"./loadSso\");\n    const sso = ssoClient ||\n        new SSOClient(Object.assign({}, clientConfig ?? {}, {\n            logger: clientConfig?.logger ?? parentClientConfig?.logger,\n            region: clientConfig?.region ?? ssoRegion,\n        }));\n    let ssoResp;\n    try {\n        ssoResp = await sso.send(new GetRoleCredentialsCommand({\n            accountId: ssoAccountId,\n            roleName: ssoRoleName,\n            accessToken,\n        }));\n    }\n    catch (e) {\n        throw new CredentialsProviderError(e, {\n            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n            logger,\n        });\n    }\n    const { roleCredentials: { accessKeyId, secretAccessKey, sessionToken, expiration, credentialScope, accountId } = {}, } = ssoResp;\n    if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {\n        throw new CredentialsProviderError(\"SSO returns an invalid temporary credential.\", {\n            tryNextLink: SHOULD_FAIL_CREDENTIAL_CHAIN,\n            logger,\n        });\n    }\n    const credentials = {\n        accessKeyId,\n        secretAccessKey,\n        sessionToken,\n        expiration: new Date(expiration),\n        ...(credentialScope && { credentialScope }),\n        ...(accountId && { accountId }),\n    };\n    if (ssoSession) {\n        setCredentialFeature(credentials, \"CREDENTIALS_SSO\", \"s\");\n    }\n    else {\n        setCredentialFeature(credentials, \"CREDENTIALS_SSO_LEGACY\", \"u\");\n    }\n    return credentials;\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nexport const validateSsoProfile = (profile, logger) => {\n    const { sso_start_url, sso_account_id, sso_region, sso_role_name } = profile;\n    if (!sso_start_url || !sso_account_id || !sso_region || !sso_role_name) {\n        throw new CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters \"sso_account_id\", ` +\n            `\"sso_region\", \"sso_role_name\", \"sso_start_url\". Got ${Object.keys(profile).join(\", \")}\\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`, { tryNextLink: false, logger });\n    }\n    return profile;\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName, loadSsoSessionData, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { isSsoProfile } from \"./isSsoProfile\";\nimport { resolveSSOCredentials } from \"./resolveSSOCredentials\";\nimport { validateSsoProfile } from \"./validateSsoProfile\";\nexport const fromSSO = (init = {}) => async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-sso - fromSSO\");\n    const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;\n    const { ssoClient } = init;\n    const profileName = getProfileName(init);\n    if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {\n        const profiles = await parseKnownFiles(init);\n        const profile = profiles[profileName];\n        if (!profile) {\n            throw new CredentialsProviderError(`Profile ${profileName} was not found.`, { logger: init.logger });\n        }\n        if (!isSsoProfile(profile)) {\n            throw new CredentialsProviderError(`Profile ${profileName} is not configured with SSO credentials.`, {\n                logger: init.logger,\n            });\n        }\n        if (profile?.sso_session) {\n            const ssoSessions = await loadSsoSessionData(init);\n            const session = ssoSessions[profile.sso_session];\n            const conflictMsg = ` configurations in profile ${profileName} and sso-session ${profile.sso_session}`;\n            if (ssoRegion && ssoRegion !== session.sso_region) {\n                throw new CredentialsProviderError(`Conflicting SSO region` + conflictMsg, {\n                    tryNextLink: false,\n                    logger: init.logger,\n                });\n            }\n            if (ssoStartUrl && ssoStartUrl !== session.sso_start_url) {\n                throw new CredentialsProviderError(`Conflicting SSO start_url` + conflictMsg, {\n                    tryNextLink: false,\n                    logger: init.logger,\n                });\n            }\n            profile.sso_region = session.sso_region;\n            profile.sso_start_url = session.sso_start_url;\n        }\n        const { sso_start_url, sso_account_id, sso_region, sso_role_name, sso_session } = validateSsoProfile(profile, init.logger);\n        return resolveSSOCredentials({\n            ssoStartUrl: sso_start_url,\n            ssoSession: sso_session,\n            ssoAccountId: sso_account_id,\n            ssoRegion: sso_region,\n            ssoRoleName: sso_role_name,\n            ssoClient: ssoClient,\n            clientConfig: init.clientConfig,\n            parentClientConfig: init.parentClientConfig,\n            profile: profileName,\n        });\n    }\n    else if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {\n        throw new CredentialsProviderError(\"Incomplete configuration. The fromSSO() argument hash must include \" +\n            '\"ssoStartUrl\", \"ssoAccountId\", \"ssoRegion\", \"ssoRoleName\"', { tryNextLink: false, logger: init.logger });\n    }\n    else {\n        return resolveSSOCredentials({\n            ssoStartUrl,\n            ssoSession,\n            ssoAccountId,\n            ssoRegion,\n            ssoRoleName,\n            ssoClient,\n            clientConfig: init.clientConfig,\n            parentClientConfig: init.parentClientConfig,\n            profile: profileName,\n        });\n    }\n};\n","export {};\n","export * from \"./fromSSO\";\nexport * from \"./isSsoProfile\";\nexport * from \"./types\";\nexport * from \"./validateSsoProfile\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { chain, CredentialsProviderError } from \"@smithy/property-provider\";\nexport const resolveCredentialSource = (credentialSource, profileName, logger) => {\n    const sourceProvidersMap = {\n        EcsContainer: async (options) => {\n            const { fromHttp } = await import(\"@aws-sdk/credential-provider-http\");\n            const { fromContainerMetadata } = await import(\"@smithy/credential-provider-imds\");\n            logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is EcsContainer\");\n            return async () => chain(fromHttp(options ?? {}), fromContainerMetadata(options))().then(setNamedProvider);\n        },\n        Ec2InstanceMetadata: async (options) => {\n            logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata\");\n            const { fromInstanceMetadata } = await import(\"@smithy/credential-provider-imds\");\n            return async () => fromInstanceMetadata(options)().then(setNamedProvider);\n        },\n        Environment: async (options) => {\n            logger?.debug(\"@aws-sdk/credential-provider-ini - credential_source is Environment\");\n            const { fromEnv } = await import(\"@aws-sdk/credential-provider-env\");\n            return async () => fromEnv(options)().then(setNamedProvider);\n        },\n    };\n    if (credentialSource in sourceProvidersMap) {\n        return sourceProvidersMap[credentialSource];\n    }\n    else {\n        throw new CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, ` +\n            `expected EcsContainer or Ec2InstanceMetadata or Environment.`, { logger });\n    }\n};\nconst setNamedProvider = (creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_NAMED_PROVIDER\", \"p\");\n","import { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nimport { STSClient } from \"../STSClient\";\nexport const defaultSTSHttpAuthSchemeParametersProvider = 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: \"sts\",\n            region: authParameters.region,\n        },\n        propertiesExtractor: (config, context) => ({\n            signingProperties: {\n                config,\n                context,\n            },\n        }),\n    };\n}\nfunction createSmithyApiNoAuthHttpAuthOption(authParameters) {\n    return {\n        schemeId: \"smithy.api#noAuth\",\n    };\n}\nexport const defaultSTSHttpAuthSchemeProvider = (authParameters) => {\n    const options = [];\n    switch (authParameters.operation) {\n        case \"AssumeRoleWithSAML\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        case \"AssumeRoleWithWebIdentity\": {\n            options.push(createSmithyApiNoAuthHttpAuthOption(authParameters));\n            break;\n        }\n        default: {\n            options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n        }\n    }\n    return options;\n};\nexport const resolveStsAuthConfig = (input) => ({\n    ...input,\n    stsClientCtor: STSClient,\n});\nexport const resolveHttpAuthSchemeConfig = (config) => {\n    const config_0 = resolveStsAuthConfig(config);\n    const config_1 = resolveAwsSdkSigV4Config(config_0);\n    return {\n        ...config_1,\n    };\n};\n","export const resolveClientEndpointParameters = (options) => {\n    return {\n        ...options,\n        useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n        useFipsEndpoint: options.useFipsEndpoint ?? false,\n        useGlobalEndpoint: options.useGlobalEndpoint ?? false,\n        defaultSigningName: \"sts\",\n    };\n};\nexport const commonParams = {\n    UseGlobalEndpoint: { type: \"builtInParams\", name: \"useGlobalEndpoint\" },\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","{\n  \"name\": \"@aws-sdk/client-sts\",\n  \"description\": \"AWS SDK for JavaScript Sts Client for Node.js, Browser and React Native\",\n  \"version\": \"3.699.0\",\n  \"scripts\": {\n    \"build\": \"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'\",\n    \"build:cjs\": \"node ../../scripts/compilation/inline client-sts\",\n    \"build:es\": \"tsc -p tsconfig.es.json\",\n    \"build:include:deps\": \"lerna run --scope $npm_package_name --include-dependencies build\",\n    \"build:types\": \"rimraf ./dist-types tsconfig.types.tsbuildinfo && tsc -p tsconfig.types.json\",\n    \"build:types:downlevel\": \"downlevel-dts dist-types dist-types/ts3.4\",\n    \"clean\": \"rimraf ./dist-* && rimraf *.tsbuildinfo\",\n    \"extract:docs\": \"api-extractor run --local\",\n    \"generate:client\": \"node ../../scripts/generate-clients/single-service --solo sts\",\n    \"test\": \"yarn g:vitest run\",\n    \"test:watch\": \"yarn g:vitest watch\"\n  },\n  \"main\": \"./dist-cjs/index.js\",\n  \"types\": \"./dist-types/index.d.ts\",\n  \"module\": \"./dist-es/index.js\",\n  \"sideEffects\": false,\n  \"dependencies\": {\n    \"@aws-crypto/sha256-browser\": \"5.2.0\",\n    \"@aws-crypto/sha256-js\": \"5.2.0\",\n    \"@aws-sdk/client-sso-oidc\": \"3.699.0\",\n    \"@aws-sdk/core\": \"3.696.0\",\n    \"@aws-sdk/credential-provider-node\": \"3.699.0\",\n    \"@aws-sdk/middleware-host-header\": \"3.696.0\",\n    \"@aws-sdk/middleware-logger\": \"3.696.0\",\n    \"@aws-sdk/middleware-recursion-detection\": \"3.696.0\",\n    \"@aws-sdk/middleware-user-agent\": \"3.696.0\",\n    \"@aws-sdk/region-config-resolver\": \"3.696.0\",\n    \"@aws-sdk/types\": \"3.696.0\",\n    \"@aws-sdk/util-endpoints\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-browser\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-node\": \"3.696.0\",\n    \"@smithy/config-resolver\": \"^3.0.12\",\n    \"@smithy/core\": \"^2.5.3\",\n    \"@smithy/fetch-http-handler\": \"^4.1.1\",\n    \"@smithy/hash-node\": \"^3.0.10\",\n    \"@smithy/invalid-dependency\": \"^3.0.10\",\n    \"@smithy/middleware-content-length\": \"^3.0.12\",\n    \"@smithy/middleware-endpoint\": \"^3.2.3\",\n    \"@smithy/middleware-retry\": \"^3.0.27\",\n    \"@smithy/middleware-serde\": \"^3.0.10\",\n    \"@smithy/middleware-stack\": \"^3.0.10\",\n    \"@smithy/node-config-provider\": \"^3.1.11\",\n    \"@smithy/node-http-handler\": \"^3.3.1\",\n    \"@smithy/protocol-http\": \"^4.1.7\",\n    \"@smithy/smithy-client\": \"^3.4.4\",\n    \"@smithy/types\": \"^3.7.1\",\n    \"@smithy/url-parser\": \"^3.0.10\",\n    \"@smithy/util-base64\": \"^3.0.0\",\n    \"@smithy/util-body-length-browser\": \"^3.0.0\",\n    \"@smithy/util-body-length-node\": \"^3.0.0\",\n    \"@smithy/util-defaults-mode-browser\": \"^3.0.27\",\n    \"@smithy/util-defaults-mode-node\": \"^3.0.27\",\n    \"@smithy/util-endpoints\": \"^2.1.6\",\n    \"@smithy/util-middleware\": \"^3.0.10\",\n    \"@smithy/util-retry\": \"^3.0.10\",\n    \"@smithy/util-utf8\": \"^3.0.0\",\n    \"tslib\": \"^2.6.2\"\n  },\n  \"devDependencies\": {\n    \"@tsconfig/node16\": \"16.1.3\",\n    \"@types/node\": \"^16.18.96\",\n    \"concurrently\": \"7.0.0\",\n    \"downlevel-dts\": \"0.10.1\",\n    \"rimraf\": \"3.0.2\",\n    \"typescript\": \"~4.9.5\"\n  },\n  \"engines\": {\n    \"node\": \">=16.0.0\"\n  },\n  \"typesVersions\": {\n    \"<4.0\": {\n      \"dist-types/*\": [\n        \"dist-types/ts3.4/*\"\n      ]\n    }\n  },\n  \"files\": [\n    \"dist-*/**\"\n  ],\n  \"author\": {\n    \"name\": \"AWS SDK for JavaScript Team\",\n    \"url\": \"https://aws.amazon.com/javascript/\"\n  },\n  \"license\": \"Apache-2.0\",\n  \"browser\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.browser\"\n  },\n  \"react-native\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.native\"\n  },\n  \"homepage\": \"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-sts\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/aws/aws-sdk-js-v3.git\",\n    \"directory\": \"clients/client-sts\"\n  }\n}\n","const F = \"required\", G = \"type\", H = \"fn\", I = \"argv\", J = \"ref\";\nconst a = false, b = true, c = \"booleanEquals\", d = \"stringEquals\", e = \"sigv4\", f = \"sts\", g = \"us-east-1\", h = \"endpoint\", i = \"https://sts.{Region}.{PartitionResult#dnsSuffix}\", j = \"tree\", k = \"error\", l = \"getAttr\", m = { [F]: false, [G]: \"String\" }, n = { [F]: true, \"default\": false, [G]: \"Boolean\" }, o = { [J]: \"Endpoint\" }, p = { [H]: \"isSet\", [I]: [{ [J]: \"Region\" }] }, q = { [J]: \"Region\" }, r = { [H]: \"aws.partition\", [I]: [q], \"assign\": \"PartitionResult\" }, s = { [J]: \"UseFIPS\" }, t = { [J]: \"UseDualStack\" }, u = { \"url\": \"https://sts.amazonaws.com\", \"properties\": { \"authSchemes\": [{ \"name\": e, \"signingName\": f, \"signingRegion\": g }] }, \"headers\": {} }, v = {}, w = { \"conditions\": [{ [H]: d, [I]: [q, \"aws-global\"] }], [h]: u, [G]: h }, x = { [H]: c, [I]: [s, true] }, y = { [H]: c, [I]: [t, true] }, z = { [H]: l, [I]: [{ [J]: \"PartitionResult\" }, \"supportsFIPS\"] }, A = { [J]: \"PartitionResult\" }, B = { [H]: c, [I]: [true, { [H]: l, [I]: [A, \"supportsDualStack\"] }] }, C = [{ [H]: \"isSet\", [I]: [o] }], D = [x], E = [y];\nconst _data = { version: \"1.0\", parameters: { Region: m, UseDualStack: n, UseFIPS: n, Endpoint: m, UseGlobalEndpoint: n }, rules: [{ conditions: [{ [H]: c, [I]: [{ [J]: \"UseGlobalEndpoint\" }, b] }, { [H]: \"not\", [I]: C }, p, r, { [H]: c, [I]: [s, a] }, { [H]: c, [I]: [t, a] }], rules: [{ conditions: [{ [H]: d, [I]: [q, \"ap-northeast-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"ap-south-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"ap-southeast-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"ap-southeast-2\"] }], endpoint: u, [G]: h }, w, { conditions: [{ [H]: d, [I]: [q, \"ca-central-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-central-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-north-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-west-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-west-2\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"eu-west-3\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"sa-east-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, g] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"us-east-2\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"us-west-1\"] }], endpoint: u, [G]: h }, { conditions: [{ [H]: d, [I]: [q, \"us-west-2\"] }], endpoint: u, [G]: h }, { endpoint: { url: i, properties: { authSchemes: [{ name: e, signingName: f, signingRegion: \"{Region}\" }] }, headers: v }, [G]: h }], [G]: j }, { conditions: C, rules: [{ conditions: D, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", [G]: k }, { conditions: E, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", [G]: k }, { endpoint: { url: o, properties: v, headers: v }, [G]: h }], [G]: j }, { conditions: [p], rules: [{ conditions: [r], rules: [{ conditions: [x, y], rules: [{ conditions: [{ [H]: c, [I]: [b, z] }, B], rules: [{ endpoint: { url: \"https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: v, headers: v }, [G]: h }], [G]: j }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", [G]: k }], [G]: j }, { conditions: D, rules: [{ conditions: [{ [H]: c, [I]: [z, b] }], rules: [{ conditions: [{ [H]: d, [I]: [{ [H]: l, [I]: [A, \"name\"] }, \"aws-us-gov\"] }], endpoint: { url: \"https://sts.{Region}.amazonaws.com\", properties: v, headers: v }, [G]: h }, { endpoint: { url: \"https://sts-fips.{Region}.{PartitionResult#dnsSuffix}\", properties: v, headers: v }, [G]: h }], [G]: j }, { error: \"FIPS is enabled but this partition does not support FIPS\", [G]: k }], [G]: j }, { conditions: E, rules: [{ conditions: [B], rules: [{ endpoint: { url: \"https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}\", properties: v, headers: v }, [G]: h }], [G]: j }, { error: \"DualStack is enabled but this partition does not support DualStack\", [G]: k }], [G]: j }, w, { endpoint: { url: i, properties: v, headers: v }, [G]: h }], [G]: j }], [G]: j }, { error: \"Invalid Configuration: Missing Region\", [G]: k }] };\nexport const ruleSet = _data;\n","import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, EndpointCache, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nconst cache = new EndpointCache({\n    size: 50,\n    params: [\"Endpoint\", \"Region\", \"UseDualStack\", \"UseFIPS\", \"UseGlobalEndpoint\"],\n});\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n    return cache.get(endpointParams, () => resolveEndpoint(ruleSet, {\n        endpointParams: endpointParams,\n        logger: context.logger,\n    }));\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","import { AwsSdkSigV4Signer } from \"@aws-sdk/core\";\nimport { NoAuthSigner } from \"@smithy/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 { defaultSTSHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n    return {\n        apiVersion: \"2011-06-15\",\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 ?? defaultSTSHttpAuthSchemeProvider,\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                schemeId: \"smithy.api#noAuth\",\n                identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n                signer: new NoAuthSigner(),\n            },\n        ],\n        logger: config?.logger ?? new NoOpLogger(),\n        serviceId: config?.serviceId ?? \"STS\",\n        urlParser: config?.urlParser ?? parseUrl,\n        utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n        utf8Encoder: config?.utf8Encoder ?? toUtf8,\n    };\n};\n","import packageInfo from \"../package.json\";\nimport { AwsSdkSigV4Signer, emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { NODE_APP_ID_CONFIG_OPTIONS, createDefaultUserAgentProvider } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { NoAuthSigner } from \"@smithy/core\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { 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-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n    emitWarningIfUnsupportedVersion(process.version);\n    const defaultsMode = resolveDefaultsModeConfig(config);\n    const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n    const clientSharedValues = getSharedRuntimeConfig(config);\n    awsCheckVersion(process.version);\n    return {\n        ...clientSharedValues,\n        ...config,\n        runtime: \"node\",\n        defaultsMode,\n        bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n        credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,\n        defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n            createDefaultUserAgentProvider({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n        httpAuthSchemes: config?.httpAuthSchemes ?? [\n            {\n                schemeId: \"aws.auth#sigv4\",\n                identityProvider: (ipc) => ipc.getIdentityProvider(\"aws.auth#sigv4\") ||\n                    (async (idProps) => await credentialDefaultProvider(idProps?.__config || {})()),\n                signer: new AwsSdkSigV4Signer(),\n            },\n            {\n                schemeId: \"smithy.api#noAuth\",\n                identityProvider: (ipc) => ipc.getIdentityProvider(\"smithy.api#noAuth\") || (async () => ({})),\n                signer: new NoAuthSigner(),\n            },\n        ],\n        maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n        region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n        requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n        retryMode: config?.retryMode ??\n            loadNodeConfig({\n                ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n                default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n            }),\n        sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n        streamCollector: config?.streamCollector ?? streamCollector,\n        useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n        useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n        userAgentAppId: config?.userAgentAppId ?? loadNodeConfig(NODE_APP_ID_CONFIG_OPTIONS),\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 { defaultSTSHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class STSClient 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: defaultSTSHttpAuthSchemeParametersProvider,\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 STSServiceException extends __ServiceException {\n    constructor(options) {\n        super(options);\n        Object.setPrototypeOf(this, STSServiceException.prototype);\n    }\n}\n","import { SENSITIVE_STRING } from \"@smithy/smithy-client\";\nimport { STSServiceException as __BaseException } from \"./STSServiceException\";\nexport class ExpiredTokenException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ExpiredTokenException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ExpiredTokenException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ExpiredTokenException.prototype);\n    }\n}\nexport class MalformedPolicyDocumentException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"MalformedPolicyDocumentException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"MalformedPolicyDocumentException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, MalformedPolicyDocumentException.prototype);\n    }\n}\nexport class PackedPolicyTooLargeException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"PackedPolicyTooLargeException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"PackedPolicyTooLargeException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, PackedPolicyTooLargeException.prototype);\n    }\n}\nexport class RegionDisabledException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"RegionDisabledException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"RegionDisabledException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, RegionDisabledException.prototype);\n    }\n}\nexport class IDPRejectedClaimException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"IDPRejectedClaimException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"IDPRejectedClaimException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, IDPRejectedClaimException.prototype);\n    }\n}\nexport class InvalidIdentityTokenException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidIdentityTokenException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidIdentityTokenException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidIdentityTokenException.prototype);\n    }\n}\nexport class IDPCommunicationErrorException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"IDPCommunicationErrorException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"IDPCommunicationErrorException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, IDPCommunicationErrorException.prototype);\n    }\n}\nexport class InvalidAuthorizationMessageException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidAuthorizationMessageException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidAuthorizationMessageException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidAuthorizationMessageException.prototype);\n    }\n}\nexport const CredentialsFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.SecretAccessKey && { SecretAccessKey: SENSITIVE_STRING }),\n});\nexport const AssumeRoleResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const AssumeRoleWithSAMLRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.SAMLAssertion && { SAMLAssertion: SENSITIVE_STRING }),\n});\nexport const AssumeRoleWithSAMLResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const AssumeRoleWithWebIdentityRequestFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.WebIdentityToken && { WebIdentityToken: SENSITIVE_STRING }),\n});\nexport const AssumeRoleWithWebIdentityResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const AssumeRootResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const GetFederationTokenResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\nexport const GetSessionTokenResponseFilterSensitiveLog = (obj) => ({\n    ...obj,\n    ...(obj.Credentials && { Credentials: CredentialsFilterSensitiveLog(obj.Credentials) }),\n});\n","import { parseXmlBody as parseBody, parseXmlErrorBody as parseErrorBody } from \"@aws-sdk/core\";\nimport { HttpRequest as __HttpRequest } from \"@smithy/protocol-http\";\nimport { collectBody, decorateServiceException as __decorateServiceException, expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, parseRfc3339DateTimeWithOffset as __parseRfc3339DateTimeWithOffset, strictParseInt32 as __strictParseInt32, withBaseException, } from \"@smithy/smithy-client\";\nimport { ExpiredTokenException, IDPCommunicationErrorException, IDPRejectedClaimException, InvalidAuthorizationMessageException, InvalidIdentityTokenException, MalformedPolicyDocumentException, PackedPolicyTooLargeException, RegionDisabledException, } from \"../models/models_0\";\nimport { STSServiceException as __BaseException } from \"../models/STSServiceException\";\nexport const se_AssumeRoleCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_AssumeRoleRequest(input, context),\n        [_A]: _AR,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_AssumeRoleWithSAMLCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_AssumeRoleWithSAMLRequest(input, context),\n        [_A]: _ARWSAML,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_AssumeRoleWithWebIdentityCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_AssumeRoleWithWebIdentityRequest(input, context),\n        [_A]: _ARWWI,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_AssumeRootCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_AssumeRootRequest(input, context),\n        [_A]: _ARs,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DecodeAuthorizationMessageCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_DecodeAuthorizationMessageRequest(input, context),\n        [_A]: _DAM,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetAccessKeyInfoCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_GetAccessKeyInfoRequest(input, context),\n        [_A]: _GAKI,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetCallerIdentityCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_GetCallerIdentityRequest(input, context),\n        [_A]: _GCI,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetFederationTokenCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_GetFederationTokenRequest(input, context),\n        [_A]: _GFT,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetSessionTokenCommand = async (input, context) => {\n    const headers = SHARED_HEADERS;\n    let body;\n    body = buildFormUrlencodedString({\n        ...se_GetSessionTokenRequest(input, context),\n        [_A]: _GST,\n        [_V]: _,\n    });\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const de_AssumeRoleCommand = 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_AssumeRoleResponse(data.AssumeRoleResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_AssumeRoleWithSAMLCommand = 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_AssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_AssumeRoleWithWebIdentityCommand = 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_AssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_AssumeRootCommand = 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_AssumeRootResponse(data.AssumeRootResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DecodeAuthorizationMessageCommand = 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_DecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_GetAccessKeyInfoCommand = 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_GetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_GetCallerIdentityCommand = 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_GetCallerIdentityResponse(data.GetCallerIdentityResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_GetFederationTokenCommand = 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_GetFederationTokenResponse(data.GetFederationTokenResult, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_GetSessionTokenCommand = 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_GetSessionTokenResponse(data.GetSessionTokenResult, 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 = loadQueryErrorCode(output, parsedOutput.body);\n    switch (errorCode) {\n        case \"ExpiredTokenException\":\n        case \"com.amazonaws.sts#ExpiredTokenException\":\n            throw await de_ExpiredTokenExceptionRes(parsedOutput, context);\n        case \"MalformedPolicyDocument\":\n        case \"com.amazonaws.sts#MalformedPolicyDocumentException\":\n            throw await de_MalformedPolicyDocumentExceptionRes(parsedOutput, context);\n        case \"PackedPolicyTooLarge\":\n        case \"com.amazonaws.sts#PackedPolicyTooLargeException\":\n            throw await de_PackedPolicyTooLargeExceptionRes(parsedOutput, context);\n        case \"RegionDisabledException\":\n        case \"com.amazonaws.sts#RegionDisabledException\":\n            throw await de_RegionDisabledExceptionRes(parsedOutput, context);\n        case \"IDPRejectedClaim\":\n        case \"com.amazonaws.sts#IDPRejectedClaimException\":\n            throw await de_IDPRejectedClaimExceptionRes(parsedOutput, context);\n        case \"InvalidIdentityToken\":\n        case \"com.amazonaws.sts#InvalidIdentityTokenException\":\n            throw await de_InvalidIdentityTokenExceptionRes(parsedOutput, context);\n        case \"IDPCommunicationError\":\n        case \"com.amazonaws.sts#IDPCommunicationErrorException\":\n            throw await de_IDPCommunicationErrorExceptionRes(parsedOutput, context);\n        case \"InvalidAuthorizationMessageException\":\n        case \"com.amazonaws.sts#InvalidAuthorizationMessageException\":\n            throw await de_InvalidAuthorizationMessageExceptionRes(parsedOutput, context);\n        default:\n            const parsedBody = parsedOutput.body;\n            return throwDefaultError({\n                output,\n                parsedBody: parsedBody.Error,\n                errorCode,\n            });\n    }\n};\nconst de_ExpiredTokenExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_ExpiredTokenException(body.Error, context);\n    const exception = new ExpiredTokenException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_IDPCommunicationErrorExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_IDPCommunicationErrorException(body.Error, context);\n    const exception = new IDPCommunicationErrorException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_IDPRejectedClaimExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_IDPRejectedClaimException(body.Error, context);\n    const exception = new IDPRejectedClaimException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_InvalidAuthorizationMessageExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_InvalidAuthorizationMessageException(body.Error, context);\n    const exception = new InvalidAuthorizationMessageException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_InvalidIdentityTokenExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_InvalidIdentityTokenException(body.Error, context);\n    const exception = new InvalidIdentityTokenException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_MalformedPolicyDocumentExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_MalformedPolicyDocumentException(body.Error, context);\n    const exception = new MalformedPolicyDocumentException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_PackedPolicyTooLargeExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_PackedPolicyTooLargeException(body.Error, context);\n    const exception = new PackedPolicyTooLargeException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_RegionDisabledExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_RegionDisabledException(body.Error, context);\n    const exception = new RegionDisabledException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst se_AssumeRoleRequest = (input, context) => {\n    const entries = {};\n    if (input[_RA] != null) {\n        entries[_RA] = input[_RA];\n    }\n    if (input[_RSN] != null) {\n        entries[_RSN] = input[_RSN];\n    }\n    if (input[_PA] != null) {\n        const memberEntries = se_policyDescriptorListType(input[_PA], context);\n        if (input[_PA]?.length === 0) {\n            entries.PolicyArns = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `PolicyArns.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_P] != null) {\n        entries[_P] = input[_P];\n    }\n    if (input[_DS] != null) {\n        entries[_DS] = input[_DS];\n    }\n    if (input[_T] != null) {\n        const memberEntries = se_tagListType(input[_T], context);\n        if (input[_T]?.length === 0) {\n            entries.Tags = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `Tags.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_TTK] != null) {\n        const memberEntries = se_tagKeyListType(input[_TTK], context);\n        if (input[_TTK]?.length === 0) {\n            entries.TransitiveTagKeys = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `TransitiveTagKeys.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_EI] != null) {\n        entries[_EI] = input[_EI];\n    }\n    if (input[_SN] != null) {\n        entries[_SN] = input[_SN];\n    }\n    if (input[_TC] != null) {\n        entries[_TC] = input[_TC];\n    }\n    if (input[_SI] != null) {\n        entries[_SI] = input[_SI];\n    }\n    if (input[_PC] != null) {\n        const memberEntries = se_ProvidedContextsListType(input[_PC], context);\n        if (input[_PC]?.length === 0) {\n            entries.ProvidedContexts = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `ProvidedContexts.${key}`;\n            entries[loc] = value;\n        });\n    }\n    return entries;\n};\nconst se_AssumeRoleWithSAMLRequest = (input, context) => {\n    const entries = {};\n    if (input[_RA] != null) {\n        entries[_RA] = input[_RA];\n    }\n    if (input[_PAr] != null) {\n        entries[_PAr] = input[_PAr];\n    }\n    if (input[_SAMLA] != null) {\n        entries[_SAMLA] = input[_SAMLA];\n    }\n    if (input[_PA] != null) {\n        const memberEntries = se_policyDescriptorListType(input[_PA], context);\n        if (input[_PA]?.length === 0) {\n            entries.PolicyArns = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `PolicyArns.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_P] != null) {\n        entries[_P] = input[_P];\n    }\n    if (input[_DS] != null) {\n        entries[_DS] = input[_DS];\n    }\n    return entries;\n};\nconst se_AssumeRoleWithWebIdentityRequest = (input, context) => {\n    const entries = {};\n    if (input[_RA] != null) {\n        entries[_RA] = input[_RA];\n    }\n    if (input[_RSN] != null) {\n        entries[_RSN] = input[_RSN];\n    }\n    if (input[_WIT] != null) {\n        entries[_WIT] = input[_WIT];\n    }\n    if (input[_PI] != null) {\n        entries[_PI] = input[_PI];\n    }\n    if (input[_PA] != null) {\n        const memberEntries = se_policyDescriptorListType(input[_PA], context);\n        if (input[_PA]?.length === 0) {\n            entries.PolicyArns = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `PolicyArns.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_P] != null) {\n        entries[_P] = input[_P];\n    }\n    if (input[_DS] != null) {\n        entries[_DS] = input[_DS];\n    }\n    return entries;\n};\nconst se_AssumeRootRequest = (input, context) => {\n    const entries = {};\n    if (input[_TP] != null) {\n        entries[_TP] = input[_TP];\n    }\n    if (input[_TPA] != null) {\n        const memberEntries = se_PolicyDescriptorType(input[_TPA], context);\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `TaskPolicyArn.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_DS] != null) {\n        entries[_DS] = input[_DS];\n    }\n    return entries;\n};\nconst se_DecodeAuthorizationMessageRequest = (input, context) => {\n    const entries = {};\n    if (input[_EM] != null) {\n        entries[_EM] = input[_EM];\n    }\n    return entries;\n};\nconst se_GetAccessKeyInfoRequest = (input, context) => {\n    const entries = {};\n    if (input[_AKI] != null) {\n        entries[_AKI] = input[_AKI];\n    }\n    return entries;\n};\nconst se_GetCallerIdentityRequest = (input, context) => {\n    const entries = {};\n    return entries;\n};\nconst se_GetFederationTokenRequest = (input, context) => {\n    const entries = {};\n    if (input[_N] != null) {\n        entries[_N] = input[_N];\n    }\n    if (input[_P] != null) {\n        entries[_P] = input[_P];\n    }\n    if (input[_PA] != null) {\n        const memberEntries = se_policyDescriptorListType(input[_PA], context);\n        if (input[_PA]?.length === 0) {\n            entries.PolicyArns = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `PolicyArns.${key}`;\n            entries[loc] = value;\n        });\n    }\n    if (input[_DS] != null) {\n        entries[_DS] = input[_DS];\n    }\n    if (input[_T] != null) {\n        const memberEntries = se_tagListType(input[_T], context);\n        if (input[_T]?.length === 0) {\n            entries.Tags = [];\n        }\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            const loc = `Tags.${key}`;\n            entries[loc] = value;\n        });\n    }\n    return entries;\n};\nconst se_GetSessionTokenRequest = (input, context) => {\n    const entries = {};\n    if (input[_DS] != null) {\n        entries[_DS] = input[_DS];\n    }\n    if (input[_SN] != null) {\n        entries[_SN] = input[_SN];\n    }\n    if (input[_TC] != null) {\n        entries[_TC] = input[_TC];\n    }\n    return entries;\n};\nconst se_policyDescriptorListType = (input, context) => {\n    const entries = {};\n    let counter = 1;\n    for (const entry of input) {\n        if (entry === null) {\n            continue;\n        }\n        const memberEntries = se_PolicyDescriptorType(entry, context);\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            entries[`member.${counter}.${key}`] = value;\n        });\n        counter++;\n    }\n    return entries;\n};\nconst se_PolicyDescriptorType = (input, context) => {\n    const entries = {};\n    if (input[_a] != null) {\n        entries[_a] = input[_a];\n    }\n    return entries;\n};\nconst se_ProvidedContext = (input, context) => {\n    const entries = {};\n    if (input[_PAro] != null) {\n        entries[_PAro] = input[_PAro];\n    }\n    if (input[_CA] != null) {\n        entries[_CA] = input[_CA];\n    }\n    return entries;\n};\nconst se_ProvidedContextsListType = (input, context) => {\n    const entries = {};\n    let counter = 1;\n    for (const entry of input) {\n        if (entry === null) {\n            continue;\n        }\n        const memberEntries = se_ProvidedContext(entry, context);\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            entries[`member.${counter}.${key}`] = value;\n        });\n        counter++;\n    }\n    return entries;\n};\nconst se_Tag = (input, context) => {\n    const entries = {};\n    if (input[_K] != null) {\n        entries[_K] = input[_K];\n    }\n    if (input[_Va] != null) {\n        entries[_Va] = input[_Va];\n    }\n    return entries;\n};\nconst se_tagKeyListType = (input, context) => {\n    const entries = {};\n    let counter = 1;\n    for (const entry of input) {\n        if (entry === null) {\n            continue;\n        }\n        entries[`member.${counter}`] = entry;\n        counter++;\n    }\n    return entries;\n};\nconst se_tagListType = (input, context) => {\n    const entries = {};\n    let counter = 1;\n    for (const entry of input) {\n        if (entry === null) {\n            continue;\n        }\n        const memberEntries = se_Tag(entry, context);\n        Object.entries(memberEntries).forEach(([key, value]) => {\n            entries[`member.${counter}.${key}`] = value;\n        });\n        counter++;\n    }\n    return entries;\n};\nconst de_AssumedRoleUser = (output, context) => {\n    const contents = {};\n    if (output[_ARI] != null) {\n        contents[_ARI] = __expectString(output[_ARI]);\n    }\n    if (output[_Ar] != null) {\n        contents[_Ar] = __expectString(output[_Ar]);\n    }\n    return contents;\n};\nconst de_AssumeRoleResponse = (output, context) => {\n    const contents = {};\n    if (output[_C] != null) {\n        contents[_C] = de_Credentials(output[_C], context);\n    }\n    if (output[_ARU] != null) {\n        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);\n    }\n    if (output[_PPS] != null) {\n        contents[_PPS] = __strictParseInt32(output[_PPS]);\n    }\n    if (output[_SI] != null) {\n        contents[_SI] = __expectString(output[_SI]);\n    }\n    return contents;\n};\nconst de_AssumeRoleWithSAMLResponse = (output, context) => {\n    const contents = {};\n    if (output[_C] != null) {\n        contents[_C] = de_Credentials(output[_C], context);\n    }\n    if (output[_ARU] != null) {\n        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);\n    }\n    if (output[_PPS] != null) {\n        contents[_PPS] = __strictParseInt32(output[_PPS]);\n    }\n    if (output[_S] != null) {\n        contents[_S] = __expectString(output[_S]);\n    }\n    if (output[_ST] != null) {\n        contents[_ST] = __expectString(output[_ST]);\n    }\n    if (output[_I] != null) {\n        contents[_I] = __expectString(output[_I]);\n    }\n    if (output[_Au] != null) {\n        contents[_Au] = __expectString(output[_Au]);\n    }\n    if (output[_NQ] != null) {\n        contents[_NQ] = __expectString(output[_NQ]);\n    }\n    if (output[_SI] != null) {\n        contents[_SI] = __expectString(output[_SI]);\n    }\n    return contents;\n};\nconst de_AssumeRoleWithWebIdentityResponse = (output, context) => {\n    const contents = {};\n    if (output[_C] != null) {\n        contents[_C] = de_Credentials(output[_C], context);\n    }\n    if (output[_SFWIT] != null) {\n        contents[_SFWIT] = __expectString(output[_SFWIT]);\n    }\n    if (output[_ARU] != null) {\n        contents[_ARU] = de_AssumedRoleUser(output[_ARU], context);\n    }\n    if (output[_PPS] != null) {\n        contents[_PPS] = __strictParseInt32(output[_PPS]);\n    }\n    if (output[_Pr] != null) {\n        contents[_Pr] = __expectString(output[_Pr]);\n    }\n    if (output[_Au] != null) {\n        contents[_Au] = __expectString(output[_Au]);\n    }\n    if (output[_SI] != null) {\n        contents[_SI] = __expectString(output[_SI]);\n    }\n    return contents;\n};\nconst de_AssumeRootResponse = (output, context) => {\n    const contents = {};\n    if (output[_C] != null) {\n        contents[_C] = de_Credentials(output[_C], context);\n    }\n    if (output[_SI] != null) {\n        contents[_SI] = __expectString(output[_SI]);\n    }\n    return contents;\n};\nconst de_Credentials = (output, context) => {\n    const contents = {};\n    if (output[_AKI] != null) {\n        contents[_AKI] = __expectString(output[_AKI]);\n    }\n    if (output[_SAK] != null) {\n        contents[_SAK] = __expectString(output[_SAK]);\n    }\n    if (output[_STe] != null) {\n        contents[_STe] = __expectString(output[_STe]);\n    }\n    if (output[_E] != null) {\n        contents[_E] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_E]));\n    }\n    return contents;\n};\nconst de_DecodeAuthorizationMessageResponse = (output, context) => {\n    const contents = {};\n    if (output[_DM] != null) {\n        contents[_DM] = __expectString(output[_DM]);\n    }\n    return contents;\n};\nconst de_ExpiredTokenException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_FederatedUser = (output, context) => {\n    const contents = {};\n    if (output[_FUI] != null) {\n        contents[_FUI] = __expectString(output[_FUI]);\n    }\n    if (output[_Ar] != null) {\n        contents[_Ar] = __expectString(output[_Ar]);\n    }\n    return contents;\n};\nconst de_GetAccessKeyInfoResponse = (output, context) => {\n    const contents = {};\n    if (output[_Ac] != null) {\n        contents[_Ac] = __expectString(output[_Ac]);\n    }\n    return contents;\n};\nconst de_GetCallerIdentityResponse = (output, context) => {\n    const contents = {};\n    if (output[_UI] != null) {\n        contents[_UI] = __expectString(output[_UI]);\n    }\n    if (output[_Ac] != null) {\n        contents[_Ac] = __expectString(output[_Ac]);\n    }\n    if (output[_Ar] != null) {\n        contents[_Ar] = __expectString(output[_Ar]);\n    }\n    return contents;\n};\nconst de_GetFederationTokenResponse = (output, context) => {\n    const contents = {};\n    if (output[_C] != null) {\n        contents[_C] = de_Credentials(output[_C], context);\n    }\n    if (output[_FU] != null) {\n        contents[_FU] = de_FederatedUser(output[_FU], context);\n    }\n    if (output[_PPS] != null) {\n        contents[_PPS] = __strictParseInt32(output[_PPS]);\n    }\n    return contents;\n};\nconst de_GetSessionTokenResponse = (output, context) => {\n    const contents = {};\n    if (output[_C] != null) {\n        contents[_C] = de_Credentials(output[_C], context);\n    }\n    return contents;\n};\nconst de_IDPCommunicationErrorException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_IDPRejectedClaimException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_InvalidAuthorizationMessageException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_InvalidIdentityTokenException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_MalformedPolicyDocumentException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_PackedPolicyTooLargeException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\n};\nconst de_RegionDisabledException = (output, context) => {\n    const contents = {};\n    if (output[_m] != null) {\n        contents[_m] = __expectString(output[_m]);\n    }\n    return contents;\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};\nconst SHARED_HEADERS = {\n    \"content-type\": \"application/x-www-form-urlencoded\",\n};\nconst _ = \"2011-06-15\";\nconst _A = \"Action\";\nconst _AKI = \"AccessKeyId\";\nconst _AR = \"AssumeRole\";\nconst _ARI = \"AssumedRoleId\";\nconst _ARU = \"AssumedRoleUser\";\nconst _ARWSAML = \"AssumeRoleWithSAML\";\nconst _ARWWI = \"AssumeRoleWithWebIdentity\";\nconst _ARs = \"AssumeRoot\";\nconst _Ac = \"Account\";\nconst _Ar = \"Arn\";\nconst _Au = \"Audience\";\nconst _C = \"Credentials\";\nconst _CA = \"ContextAssertion\";\nconst _DAM = \"DecodeAuthorizationMessage\";\nconst _DM = \"DecodedMessage\";\nconst _DS = \"DurationSeconds\";\nconst _E = \"Expiration\";\nconst _EI = \"ExternalId\";\nconst _EM = \"EncodedMessage\";\nconst _FU = \"FederatedUser\";\nconst _FUI = \"FederatedUserId\";\nconst _GAKI = \"GetAccessKeyInfo\";\nconst _GCI = \"GetCallerIdentity\";\nconst _GFT = \"GetFederationToken\";\nconst _GST = \"GetSessionToken\";\nconst _I = \"Issuer\";\nconst _K = \"Key\";\nconst _N = \"Name\";\nconst _NQ = \"NameQualifier\";\nconst _P = \"Policy\";\nconst _PA = \"PolicyArns\";\nconst _PAr = \"PrincipalArn\";\nconst _PAro = \"ProviderArn\";\nconst _PC = \"ProvidedContexts\";\nconst _PI = \"ProviderId\";\nconst _PPS = \"PackedPolicySize\";\nconst _Pr = \"Provider\";\nconst _RA = \"RoleArn\";\nconst _RSN = \"RoleSessionName\";\nconst _S = \"Subject\";\nconst _SAK = \"SecretAccessKey\";\nconst _SAMLA = \"SAMLAssertion\";\nconst _SFWIT = \"SubjectFromWebIdentityToken\";\nconst _SI = \"SourceIdentity\";\nconst _SN = \"SerialNumber\";\nconst _ST = \"SubjectType\";\nconst _STe = \"SessionToken\";\nconst _T = \"Tags\";\nconst _TC = \"TokenCode\";\nconst _TP = \"TargetPrincipal\";\nconst _TPA = \"TaskPolicyArn\";\nconst _TTK = \"TransitiveTagKeys\";\nconst _UI = \"UserId\";\nconst _V = \"Version\";\nconst _Va = \"Value\";\nconst _WIT = \"WebIdentityToken\";\nconst _a = \"arn\";\nconst _m = \"message\";\nconst buildFormUrlencodedString = (formEntries) => Object.entries(formEntries)\n    .map(([key, value]) => __extendedEncodeURIComponent(key) + \"=\" + __extendedEncodeURIComponent(value))\n    .join(\"&\");\nconst loadQueryErrorCode = (output, data) => {\n    if (data.Error?.Code !== undefined) {\n        return data.Error.Code;\n    }\n    if (output.statusCode == 404) {\n        return \"NotFound\";\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 { AssumeRoleResponseFilterSensitiveLog } from \"../models/models_0\";\nimport { de_AssumeRoleCommand, se_AssumeRoleCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRoleCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"AssumeRole\", {})\n    .n(\"STSClient\", \"AssumeRoleCommand\")\n    .f(void 0, AssumeRoleResponseFilterSensitiveLog)\n    .ser(se_AssumeRoleCommand)\n    .de(de_AssumeRoleCommand)\n    .build() {\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 { AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_AssumeRoleWithSAMLCommand, se_AssumeRoleWithSAMLCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRoleWithSAMLCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"AssumeRoleWithSAML\", {})\n    .n(\"STSClient\", \"AssumeRoleWithSAMLCommand\")\n    .f(AssumeRoleWithSAMLRequestFilterSensitiveLog, AssumeRoleWithSAMLResponseFilterSensitiveLog)\n    .ser(se_AssumeRoleWithSAMLCommand)\n    .de(de_AssumeRoleWithSAMLCommand)\n    .build() {\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 { AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_AssumeRoleWithWebIdentityCommand, se_AssumeRoleWithWebIdentityCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRoleWithWebIdentityCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"AssumeRoleWithWebIdentity\", {})\n    .n(\"STSClient\", \"AssumeRoleWithWebIdentityCommand\")\n    .f(AssumeRoleWithWebIdentityRequestFilterSensitiveLog, AssumeRoleWithWebIdentityResponseFilterSensitiveLog)\n    .ser(se_AssumeRoleWithWebIdentityCommand)\n    .de(de_AssumeRoleWithWebIdentityCommand)\n    .build() {\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 { AssumeRootResponseFilterSensitiveLog } from \"../models/models_0\";\nimport { de_AssumeRootCommand, se_AssumeRootCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class AssumeRootCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"AssumeRoot\", {})\n    .n(\"STSClient\", \"AssumeRootCommand\")\n    .f(void 0, AssumeRootResponseFilterSensitiveLog)\n    .ser(se_AssumeRootCommand)\n    .de(de_AssumeRootCommand)\n    .build() {\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_DecodeAuthorizationMessageCommand, se_DecodeAuthorizationMessageCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class DecodeAuthorizationMessageCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"DecodeAuthorizationMessage\", {})\n    .n(\"STSClient\", \"DecodeAuthorizationMessageCommand\")\n    .f(void 0, void 0)\n    .ser(se_DecodeAuthorizationMessageCommand)\n    .de(de_DecodeAuthorizationMessageCommand)\n    .build() {\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_GetAccessKeyInfoCommand, se_GetAccessKeyInfoCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetAccessKeyInfoCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"GetAccessKeyInfo\", {})\n    .n(\"STSClient\", \"GetAccessKeyInfoCommand\")\n    .f(void 0, void 0)\n    .ser(se_GetAccessKeyInfoCommand)\n    .de(de_GetAccessKeyInfoCommand)\n    .build() {\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_GetCallerIdentityCommand, se_GetCallerIdentityCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetCallerIdentityCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"GetCallerIdentity\", {})\n    .n(\"STSClient\", \"GetCallerIdentityCommand\")\n    .f(void 0, void 0)\n    .ser(se_GetCallerIdentityCommand)\n    .de(de_GetCallerIdentityCommand)\n    .build() {\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 { GetFederationTokenResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_GetFederationTokenCommand, se_GetFederationTokenCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetFederationTokenCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"GetFederationToken\", {})\n    .n(\"STSClient\", \"GetFederationTokenCommand\")\n    .f(void 0, GetFederationTokenResponseFilterSensitiveLog)\n    .ser(se_GetFederationTokenCommand)\n    .de(de_GetFederationTokenCommand)\n    .build() {\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 { GetSessionTokenResponseFilterSensitiveLog, } from \"../models/models_0\";\nimport { de_GetSessionTokenCommand, se_GetSessionTokenCommand } from \"../protocols/Aws_query\";\nexport { $Command };\nexport class GetSessionTokenCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"AWSSecurityTokenServiceV20110615\", \"GetSessionToken\", {})\n    .n(\"STSClient\", \"GetSessionTokenCommand\")\n    .f(void 0, GetSessionTokenResponseFilterSensitiveLog)\n    .ser(se_GetSessionTokenCommand)\n    .de(de_GetSessionTokenCommand)\n    .build() {\n}\n","import { createAggregatedClient } from \"@smithy/smithy-client\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithSAMLCommand, } from \"./commands/AssumeRoleWithSAMLCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\nimport { AssumeRootCommand } from \"./commands/AssumeRootCommand\";\nimport { DecodeAuthorizationMessageCommand, } from \"./commands/DecodeAuthorizationMessageCommand\";\nimport { GetAccessKeyInfoCommand, } from \"./commands/GetAccessKeyInfoCommand\";\nimport { GetCallerIdentityCommand, } from \"./commands/GetCallerIdentityCommand\";\nimport { GetFederationTokenCommand, } from \"./commands/GetFederationTokenCommand\";\nimport { GetSessionTokenCommand, } from \"./commands/GetSessionTokenCommand\";\nimport { STSClient } from \"./STSClient\";\nconst commands = {\n    AssumeRoleCommand,\n    AssumeRoleWithSAMLCommand,\n    AssumeRoleWithWebIdentityCommand,\n    AssumeRootCommand,\n    DecodeAuthorizationMessageCommand,\n    GetAccessKeyInfoCommand,\n    GetCallerIdentityCommand,\n    GetFederationTokenCommand,\n    GetSessionTokenCommand,\n};\nexport class STS extends STSClient {\n}\ncreateAggregatedClient(commands, STS);\n","export * from \"./AssumeRoleCommand\";\nexport * from \"./AssumeRoleWithSAMLCommand\";\nexport * from \"./AssumeRoleWithWebIdentityCommand\";\nexport * from \"./AssumeRootCommand\";\nexport * from \"./DecodeAuthorizationMessageCommand\";\nexport * from \"./GetAccessKeyInfoCommand\";\nexport * from \"./GetCallerIdentityCommand\";\nexport * from \"./GetFederationTokenCommand\";\nexport * from \"./GetSessionTokenCommand\";\n","export * from \"./models_0\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\nconst ASSUME_ROLE_DEFAULT_REGION = \"us-east-1\";\nconst getAccountIdFromAssumedRoleUser = (assumedRoleUser) => {\n    if (typeof assumedRoleUser?.Arn === \"string\") {\n        const arnComponents = assumedRoleUser.Arn.split(\":\");\n        if (arnComponents.length > 4 && arnComponents[4] !== \"\") {\n            return arnComponents[4];\n        }\n    }\n    return undefined;\n};\nconst resolveRegion = async (_region, _parentRegion, credentialProviderLogger) => {\n    const region = typeof _region === \"function\" ? await _region() : _region;\n    const parentRegion = typeof _parentRegion === \"function\" ? await _parentRegion() : _parentRegion;\n    credentialProviderLogger?.debug?.(\"@aws-sdk/client-sts::resolveRegion\", \"accepting first of:\", `${region} (provider)`, `${parentRegion} (parent client)`, `${ASSUME_ROLE_DEFAULT_REGION} (STS default)`);\n    return region ?? parentRegion ?? ASSUME_ROLE_DEFAULT_REGION;\n};\nexport const getDefaultRoleAssumer = (stsOptions, stsClientCtor) => {\n    let stsClient;\n    let closureSourceCreds;\n    return async (sourceCreds, params) => {\n        closureSourceCreds = sourceCreds;\n        if (!stsClient) {\n            const { logger = stsOptions?.parentClientConfig?.logger, region, requestHandler = stsOptions?.parentClientConfig?.requestHandler, credentialProviderLogger, } = stsOptions;\n            const resolvedRegion = await resolveRegion(region, stsOptions?.parentClientConfig?.region, credentialProviderLogger);\n            const isCompatibleRequestHandler = !isH2(requestHandler);\n            stsClient = new stsClientCtor({\n                credentialDefaultProvider: () => async () => closureSourceCreds,\n                region: resolvedRegion,\n                requestHandler: isCompatibleRequestHandler ? requestHandler : undefined,\n                logger: logger,\n            });\n        }\n        const { Credentials, AssumedRoleUser } = await stsClient.send(new AssumeRoleCommand(params));\n        if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n            throw new Error(`Invalid response from STS.assumeRole call with role ${params.RoleArn}`);\n        }\n        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser);\n        const credentials = {\n            accessKeyId: Credentials.AccessKeyId,\n            secretAccessKey: Credentials.SecretAccessKey,\n            sessionToken: Credentials.SessionToken,\n            expiration: Credentials.Expiration,\n            ...(Credentials.CredentialScope && { credentialScope: Credentials.CredentialScope }),\n            ...(accountId && { accountId }),\n        };\n        setCredentialFeature(credentials, \"CREDENTIALS_STS_ASSUME_ROLE\", \"i\");\n        return credentials;\n    };\n};\nexport const getDefaultRoleAssumerWithWebIdentity = (stsOptions, stsClientCtor) => {\n    let stsClient;\n    return async (params) => {\n        if (!stsClient) {\n            const { logger = stsOptions?.parentClientConfig?.logger, region, requestHandler = stsOptions?.parentClientConfig?.requestHandler, credentialProviderLogger, } = stsOptions;\n            const resolvedRegion = await resolveRegion(region, stsOptions?.parentClientConfig?.region, credentialProviderLogger);\n            const isCompatibleRequestHandler = !isH2(requestHandler);\n            stsClient = new stsClientCtor({\n                region: resolvedRegion,\n                requestHandler: isCompatibleRequestHandler ? requestHandler : undefined,\n                logger: logger,\n            });\n        }\n        const { Credentials, AssumedRoleUser } = await stsClient.send(new AssumeRoleWithWebIdentityCommand(params));\n        if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n            throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${params.RoleArn}`);\n        }\n        const accountId = getAccountIdFromAssumedRoleUser(AssumedRoleUser);\n        const credentials = {\n            accessKeyId: Credentials.AccessKeyId,\n            secretAccessKey: Credentials.SecretAccessKey,\n            sessionToken: Credentials.SessionToken,\n            expiration: Credentials.Expiration,\n            ...(Credentials.CredentialScope && { credentialScope: Credentials.CredentialScope }),\n            ...(accountId && { accountId }),\n        };\n        if (accountId) {\n            setCredentialFeature(credentials, \"RESOLVED_ACCOUNT_ID\", \"T\");\n        }\n        setCredentialFeature(credentials, \"CREDENTIALS_STS_ASSUME_ROLE_WEB_ID\", \"k\");\n        return credentials;\n    };\n};\nexport const decorateDefaultCredentialProvider = (provider) => (input) => provider({\n    roleAssumer: getDefaultRoleAssumer(input, input.stsClientCtor),\n    roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input, input.stsClientCtor),\n    ...input,\n});\nconst isH2 = (requestHandler) => {\n    return requestHandler?.metadata?.handlerProtocol === \"h2\";\n};\n","import { getDefaultRoleAssumer as StsGetDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity as StsGetDefaultRoleAssumerWithWebIdentity, } from \"./defaultStsRoleAssumers\";\nimport { STSClient } from \"./STSClient\";\nconst getCustomizableStsClientCtor = (baseCtor, customizations) => {\n    if (!customizations)\n        return baseCtor;\n    else\n        return class CustomizableSTSClient extends baseCtor {\n            constructor(config) {\n                super(config);\n                for (const customization of customizations) {\n                    this.middlewareStack.use(customization);\n                }\n            }\n        };\n};\nexport const getDefaultRoleAssumer = (stsOptions = {}, stsPlugins) => StsGetDefaultRoleAssumer(stsOptions, getCustomizableStsClientCtor(STSClient, stsPlugins));\nexport const getDefaultRoleAssumerWithWebIdentity = (stsOptions = {}, stsPlugins) => StsGetDefaultRoleAssumerWithWebIdentity(stsOptions, getCustomizableStsClientCtor(STSClient, stsPlugins));\nexport const decorateDefaultCredentialProvider = (provider) => (input) => provider({\n    roleAssumer: getDefaultRoleAssumer(input),\n    roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input),\n    ...input,\n});\n","export * from \"./STSClient\";\nexport * from \"./STS\";\nexport * from \"./commands\";\nexport * from \"./models\";\nexport * from \"./defaultRoleAssumers\";\nexport { STSServiceException } from \"./models/STSServiceException\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { getProfileName } from \"@smithy/shared-ini-file-loader\";\nimport { resolveCredentialSource } from \"./resolveCredentialSource\";\nimport { resolveProfileData } from \"./resolveProfileData\";\nexport const isAssumeRoleProfile = (arg, { profile = \"default\", logger } = {}) => {\n    return (Boolean(arg) &&\n        typeof arg === \"object\" &&\n        typeof arg.role_arn === \"string\" &&\n        [\"undefined\", \"string\"].indexOf(typeof arg.role_session_name) > -1 &&\n        [\"undefined\", \"string\"].indexOf(typeof arg.external_id) > -1 &&\n        [\"undefined\", \"string\"].indexOf(typeof arg.mfa_serial) > -1 &&\n        (isAssumeRoleWithSourceProfile(arg, { profile, logger }) || isCredentialSourceProfile(arg, { profile, logger })));\n};\nconst isAssumeRoleWithSourceProfile = (arg, { profile, logger }) => {\n    const withSourceProfile = typeof arg.source_profile === \"string\" && typeof arg.credential_source === \"undefined\";\n    if (withSourceProfile) {\n        logger?.debug?.(`    ${profile} isAssumeRoleWithSourceProfile source_profile=${arg.source_profile}`);\n    }\n    return withSourceProfile;\n};\nconst isCredentialSourceProfile = (arg, { profile, logger }) => {\n    const withProviderProfile = typeof arg.credential_source === \"string\" && typeof arg.source_profile === \"undefined\";\n    if (withProviderProfile) {\n        logger?.debug?.(`    ${profile} isCredentialSourceProfile credential_source=${arg.credential_source}`);\n    }\n    return withProviderProfile;\n};\nexport const resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => {\n    options.logger?.debug(\"@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)\");\n    const data = profiles[profileName];\n    if (!options.roleAssumer) {\n        const { getDefaultRoleAssumer } = await import(\"@aws-sdk/client-sts\");\n        options.roleAssumer = getDefaultRoleAssumer({\n            ...options.clientConfig,\n            credentialProviderLogger: options.logger,\n            parentClientConfig: options?.parentClientConfig,\n        }, options.clientPlugins);\n    }\n    const { source_profile } = data;\n    if (source_profile && source_profile in visitedProfiles) {\n        throw new CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile` +\n            ` ${getProfileName(options)}. Profiles visited: ` +\n            Object.keys(visitedProfiles).join(\", \"), { logger: options.logger });\n    }\n    options.logger?.debug(`@aws-sdk/credential-provider-ini - finding credential resolver using ${source_profile ? `source_profile=[${source_profile}]` : `profile=[${profileName}]`}`);\n    const sourceCredsProvider = source_profile\n        ? resolveProfileData(source_profile, profiles, options, {\n            ...visitedProfiles,\n            [source_profile]: true,\n        }, isCredentialSourceWithoutRoleArn(profiles[source_profile] ?? {}))\n        : (await resolveCredentialSource(data.credential_source, profileName, options.logger)(options))();\n    if (isCredentialSourceWithoutRoleArn(data)) {\n        return sourceCredsProvider.then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SOURCE_PROFILE\", \"o\"));\n    }\n    else {\n        const params = {\n            RoleArn: data.role_arn,\n            RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,\n            ExternalId: data.external_id,\n            DurationSeconds: parseInt(data.duration_seconds || \"3600\", 10),\n        };\n        const { mfa_serial } = data;\n        if (mfa_serial) {\n            if (!options.mfaCodeProvider) {\n                throw new CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, { logger: options.logger, tryNextLink: false });\n            }\n            params.SerialNumber = mfa_serial;\n            params.TokenCode = await options.mfaCodeProvider(mfa_serial);\n        }\n        const sourceCreds = await sourceCredsProvider;\n        return options.roleAssumer(sourceCreds, params).then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SOURCE_PROFILE\", \"o\"));\n    }\n};\nconst isCredentialSourceWithoutRoleArn = (section) => {\n    return !section.role_arn && !!section.credential_source;\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const getValidatedProcessCredentials = (profileName, data, profiles) => {\n    if (data.Version !== 1) {\n        throw Error(`Profile ${profileName} credential_process did not return Version 1.`);\n    }\n    if (data.AccessKeyId === undefined || data.SecretAccessKey === undefined) {\n        throw Error(`Profile ${profileName} credential_process returned invalid credentials.`);\n    }\n    if (data.Expiration) {\n        const currentTime = new Date();\n        const expireTime = new Date(data.Expiration);\n        if (expireTime < currentTime) {\n            throw Error(`Profile ${profileName} credential_process returned expired credentials.`);\n        }\n    }\n    let accountId = data.AccountId;\n    if (!accountId && profiles?.[profileName]?.aws_account_id) {\n        accountId = profiles[profileName].aws_account_id;\n    }\n    const credentials = {\n        accessKeyId: data.AccessKeyId,\n        secretAccessKey: data.SecretAccessKey,\n        ...(data.SessionToken && { sessionToken: data.SessionToken }),\n        ...(data.Expiration && { expiration: new Date(data.Expiration) }),\n        ...(data.CredentialScope && { credentialScope: data.CredentialScope }),\n        ...(accountId && { accountId }),\n    };\n    setCredentialFeature(credentials, \"CREDENTIALS_PROCESS\", \"w\");\n    return credentials;\n};\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { exec } from \"child_process\";\nimport { promisify } from \"util\";\nimport { getValidatedProcessCredentials } from \"./getValidatedProcessCredentials\";\nexport const resolveProcessCredentials = async (profileName, profiles, logger) => {\n    const profile = profiles[profileName];\n    if (profiles[profileName]) {\n        const credentialProcess = profile[\"credential_process\"];\n        if (credentialProcess !== undefined) {\n            const execPromise = promisify(exec);\n            try {\n                const { stdout } = await execPromise(credentialProcess);\n                let data;\n                try {\n                    data = JSON.parse(stdout.trim());\n                }\n                catch {\n                    throw Error(`Profile ${profileName} credential_process returned invalid JSON.`);\n                }\n                return getValidatedProcessCredentials(profileName, data, profiles);\n            }\n            catch (error) {\n                throw new CredentialsProviderError(error.message, { logger });\n            }\n        }\n        else {\n            throw new CredentialsProviderError(`Profile ${profileName} did not contain credential_process.`, { logger });\n        }\n    }\n    else {\n        throw new CredentialsProviderError(`Profile ${profileName} could not be found in shared credentials file.`, {\n            logger,\n        });\n    }\n};\n","import { getProfileName, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { resolveProcessCredentials } from \"./resolveProcessCredentials\";\nexport const fromProcess = (init = {}) => async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-process - fromProcess\");\n    const profiles = await parseKnownFiles(init);\n    return resolveProcessCredentials(getProfileName(init), profiles, init.logger);\n};\n","export * from \"./fromProcess\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const isProcessProfile = (arg) => Boolean(arg) && typeof arg === \"object\" && typeof arg.credential_process === \"string\";\nexport const resolveProcessCredentials = async (options, profile) => import(\"@aws-sdk/credential-provider-process\").then(({ fromProcess }) => fromProcess({\n    ...options,\n    profile,\n})().then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_PROCESS\", \"v\")));\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const resolveSsoCredentials = async (profile, profileData, options = {}) => {\n    const { fromSSO } = await import(\"@aws-sdk/credential-provider-sso\");\n    return fromSSO({\n        profile,\n        logger: options.logger,\n        parentClientConfig: options.parentClientConfig,\n        clientConfig: options.clientConfig,\n    })().then((creds) => {\n        if (profileData.sso_session) {\n            return setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SSO\", \"r\");\n        }\n        else {\n            return setCredentialFeature(creds, \"CREDENTIALS_PROFILE_SSO_LEGACY\", \"t\");\n        }\n    });\n};\nexport const isSsoProfile = (arg) => arg &&\n    (typeof arg.sso_start_url === \"string\" ||\n        typeof arg.sso_account_id === \"string\" ||\n        typeof arg.sso_session === \"string\" ||\n        typeof arg.sso_region === \"string\" ||\n        typeof arg.sso_role_name === \"string\");\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const isStaticCredsProfile = (arg) => Boolean(arg) &&\n    typeof arg === \"object\" &&\n    typeof arg.aws_access_key_id === \"string\" &&\n    typeof arg.aws_secret_access_key === \"string\" &&\n    [\"undefined\", \"string\"].indexOf(typeof arg.aws_session_token) > -1 &&\n    [\"undefined\", \"string\"].indexOf(typeof arg.aws_account_id) > -1;\nexport const resolveStaticCredentials = async (profile, options) => {\n    options?.logger?.debug(\"@aws-sdk/credential-provider-ini - resolveStaticCredentials\");\n    const credentials = {\n        accessKeyId: profile.aws_access_key_id,\n        secretAccessKey: profile.aws_secret_access_key,\n        sessionToken: profile.aws_session_token,\n        ...(profile.aws_credential_scope && { credentialScope: profile.aws_credential_scope }),\n        ...(profile.aws_account_id && { accountId: profile.aws_account_id }),\n    };\n    return setCredentialFeature(credentials, \"CREDENTIALS_PROFILE\", \"n\");\n};\n","export const fromWebToken = (init) => async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-web-identity - fromWebToken\");\n    const { roleArn, roleSessionName, webIdentityToken, providerId, policyArns, policy, durationSeconds } = init;\n    let { roleAssumerWithWebIdentity } = init;\n    if (!roleAssumerWithWebIdentity) {\n        const { getDefaultRoleAssumerWithWebIdentity } = await import(\"@aws-sdk/client-sts\");\n        roleAssumerWithWebIdentity = getDefaultRoleAssumerWithWebIdentity({\n            ...init.clientConfig,\n            credentialProviderLogger: init.logger,\n            parentClientConfig: init.parentClientConfig,\n        }, init.clientPlugins);\n    }\n    return roleAssumerWithWebIdentity({\n        RoleArn: roleArn,\n        RoleSessionName: roleSessionName ?? `aws-sdk-js-session-${Date.now()}`,\n        WebIdentityToken: webIdentityToken,\n        ProviderId: providerId,\n        PolicyArns: policyArns,\n        Policy: policy,\n        DurationSeconds: durationSeconds,\n    });\n};\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { readFileSync } from \"fs\";\nimport { fromWebToken } from \"./fromWebToken\";\nconst ENV_TOKEN_FILE = \"AWS_WEB_IDENTITY_TOKEN_FILE\";\nconst ENV_ROLE_ARN = \"AWS_ROLE_ARN\";\nconst ENV_ROLE_SESSION_NAME = \"AWS_ROLE_SESSION_NAME\";\nexport const fromTokenFile = (init = {}) => async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-web-identity - fromTokenFile\");\n    const webIdentityTokenFile = init?.webIdentityTokenFile ?? process.env[ENV_TOKEN_FILE];\n    const roleArn = init?.roleArn ?? process.env[ENV_ROLE_ARN];\n    const roleSessionName = init?.roleSessionName ?? process.env[ENV_ROLE_SESSION_NAME];\n    if (!webIdentityTokenFile || !roleArn) {\n        throw new CredentialsProviderError(\"Web identity configuration not specified\", {\n            logger: init.logger,\n        });\n    }\n    const credentials = await fromWebToken({\n        ...init,\n        webIdentityToken: readFileSync(webIdentityTokenFile, { encoding: \"ascii\" }),\n        roleArn,\n        roleSessionName,\n    })();\n    if (webIdentityTokenFile === process.env[ENV_TOKEN_FILE]) {\n        setCredentialFeature(credentials, \"CREDENTIALS_ENV_VARS_STS_WEB_ID_TOKEN\", \"h\");\n    }\n    return credentials;\n};\n","export * from \"./fromTokenFile\";\nexport * from \"./fromWebToken\";\n","import { setCredentialFeature } from \"@aws-sdk/core/client\";\nexport const isWebIdentityProfile = (arg) => Boolean(arg) &&\n    typeof arg === \"object\" &&\n    typeof arg.web_identity_token_file === \"string\" &&\n    typeof arg.role_arn === \"string\" &&\n    [\"undefined\", \"string\"].indexOf(typeof arg.role_session_name) > -1;\nexport const resolveWebIdentityCredentials = async (profile, options) => import(\"@aws-sdk/credential-provider-web-identity\").then(({ fromTokenFile }) => fromTokenFile({\n    webIdentityTokenFile: profile.web_identity_token_file,\n    roleArn: profile.role_arn,\n    roleSessionName: profile.role_session_name,\n    roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,\n    logger: options.logger,\n    parentClientConfig: options.parentClientConfig,\n})().then((creds) => setCredentialFeature(creds, \"CREDENTIALS_PROFILE_STS_WEB_ID_TOKEN\", \"q\")));\n","import { CredentialsProviderError } from \"@smithy/property-provider\";\nimport { isAssumeRoleProfile, resolveAssumeRoleCredentials } from \"./resolveAssumeRoleCredentials\";\nimport { isProcessProfile, resolveProcessCredentials } from \"./resolveProcessCredentials\";\nimport { isSsoProfile, resolveSsoCredentials } from \"./resolveSsoCredentials\";\nimport { isStaticCredsProfile, resolveStaticCredentials } from \"./resolveStaticCredentials\";\nimport { isWebIdentityProfile, resolveWebIdentityCredentials } from \"./resolveWebIdentityCredentials\";\nexport const resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}, isAssumeRoleRecursiveCall = false) => {\n    const data = profiles[profileName];\n    if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {\n        return resolveStaticCredentials(data, options);\n    }\n    if (isAssumeRoleRecursiveCall || isAssumeRoleProfile(data, { profile: profileName, logger: options.logger })) {\n        return resolveAssumeRoleCredentials(profileName, profiles, options, visitedProfiles);\n    }\n    if (isStaticCredsProfile(data)) {\n        return resolveStaticCredentials(data, options);\n    }\n    if (isWebIdentityProfile(data)) {\n        return resolveWebIdentityCredentials(data, options);\n    }\n    if (isProcessProfile(data)) {\n        return resolveProcessCredentials(options, profileName);\n    }\n    if (isSsoProfile(data)) {\n        return await resolveSsoCredentials(profileName, data, options);\n    }\n    throw new CredentialsProviderError(`Could not resolve credentials using profile: [${profileName}] in configuration/credentials file(s).`, { logger: options.logger });\n};\n","import { getProfileName, parseKnownFiles } from \"@smithy/shared-ini-file-loader\";\nimport { resolveProfileData } from \"./resolveProfileData\";\nexport const fromIni = (init = {}) => async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-ini - fromIni\");\n    const profiles = await parseKnownFiles(init);\n    return resolveProfileData(getProfileName(init), profiles, init);\n};\n","export * from \"./fromIni\";\n","import { ENV_KEY, ENV_SECRET, fromEnv } from \"@aws-sdk/credential-provider-env\";\nimport { chain, CredentialsProviderError, memoize } from \"@smithy/property-provider\";\nimport { ENV_PROFILE } from \"@smithy/shared-ini-file-loader\";\nimport { remoteProvider } from \"./remoteProvider\";\nlet multipleCredentialSourceWarningEmitted = false;\nexport const defaultProvider = (init = {}) => memoize(chain(async () => {\n    const profile = init.profile ?? process.env[ENV_PROFILE];\n    if (profile) {\n        const envStaticCredentialsAreSet = process.env[ENV_KEY] && process.env[ENV_SECRET];\n        if (envStaticCredentialsAreSet) {\n            if (!multipleCredentialSourceWarningEmitted) {\n                const warnFn = init.logger?.warn && init.logger?.constructor?.name !== \"NoOpLogger\" ? init.logger.warn : console.warn;\n                warnFn(`@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING:\n    Multiple credential sources detected: \n    Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set.\n    This SDK will proceed with the AWS_PROFILE value.\n    \n    However, a future version may change this behavior to prefer the ENV static credentials.\n    Please ensure that your environment only sets either the AWS_PROFILE or the\n    AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair.\n`);\n                multipleCredentialSourceWarningEmitted = true;\n            }\n        }\n        throw new CredentialsProviderError(\"AWS_PROFILE is set, skipping fromEnv provider.\", {\n            logger: init.logger,\n            tryNextLink: true,\n        });\n    }\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromEnv\");\n    return fromEnv(init)();\n}, async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromSSO\");\n    const { ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoSession } = init;\n    if (!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName && !ssoSession) {\n        throw new CredentialsProviderError(\"Skipping SSO provider in default chain (inputs do not include SSO fields).\", { logger: init.logger });\n    }\n    const { fromSSO } = await import(\"@aws-sdk/credential-provider-sso\");\n    return fromSSO(init)();\n}, async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromIni\");\n    const { fromIni } = await import(\"@aws-sdk/credential-provider-ini\");\n    return fromIni(init)();\n}, async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromProcess\");\n    const { fromProcess } = await import(\"@aws-sdk/credential-provider-process\");\n    return fromProcess(init)();\n}, async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile\");\n    const { fromTokenFile } = await import(\"@aws-sdk/credential-provider-web-identity\");\n    return fromTokenFile(init)();\n}, async () => {\n    init.logger?.debug(\"@aws-sdk/credential-provider-node - defaultProvider::remoteProvider\");\n    return (await remoteProvider(init))();\n}, async () => {\n    throw new CredentialsProviderError(\"Could not load credentials from any providers\", {\n        tryNextLink: false,\n        logger: init.logger,\n    });\n}), credentialsTreatedAsExpired, credentialsWillNeedRefresh);\nexport const credentialsWillNeedRefresh = (credentials) => credentials?.expiration !== undefined;\nexport const credentialsTreatedAsExpired = (credentials) => credentials?.expiration !== undefined && credentials.expiration.getTime() - Date.now() < 300000;\n","export * from \"./defaultProvider\";\n","import chunkify from 'chunkify';\nimport {\n  DynamoDBClient,\n  GetItemCommand,\n  PutItemCommand,\n  DeleteItemCommand,\n  BatchWriteItemCommand,\n  ScanCommand,\n  type AttributeValue,\n  ConditionalCheckFailedException,\n} from '@aws-sdk/client-dynamodb';\n\nimport { BaseDriver } from './base-driver';\nimport type { CacheDriver, CreateDriverResult, DynamoDBConfig } from '../types/main';\n\n/**\n * Caching driver for DynamoDB\n */\nexport class DynamoDbDriver extends BaseDriver implements CacheDriver {\n  type = 'l2' as const;\n\n  /**\n   * DynamoDB client\n   */\n  #client: DynamoDBClient;\n\n  /**\n   * Configuration\n   */\n  declare config: DynamoDBConfig;\n\n  /**\n   * Name of the table to use\n   * Defaults to `cache`\n   */\n  #tableName: string;\n\n  constructor(config: DynamoDBConfig & { client?: DynamoDBClient }) {\n    super(config);\n\n    this.#tableName = this.config.table.name ?? 'cache';\n\n    if (config.client) {\n      this.#client = config.client;\n      return;\n    }\n\n    this.#client = new DynamoDBClient({\n      region: config.region,\n      credentials: config.credentials,\n      endpoint: config.endpoint,\n    });\n  }\n\n  /**\n   * Try to delete an item from the cache.\n   * If the item doesn't exist, a `ConditionalCheckFailedException` is thrown.\n   */\n  async #deleteItem(key: string) {\n    await this.#client.send(\n      new DeleteItemCommand({\n        TableName: this.#tableName,\n        Key: { key: { S: this.getItemKey(key) } },\n        ConditionExpression: 'attribute_exists(#key)',\n        ExpressionAttributeNames: { '#key': 'key' },\n      }),\n    );\n  }\n\n  /**\n   * Scan the table for items with our prefix\n   * Returns a paginated list of items\n   */\n  async #getStoredItems(exclusiveStartKey?: Record<string, AttributeValue>) {\n    return await this.#client.send(\n      new ScanCommand({\n        TableName: this.#tableName,\n        ProjectionExpression: '#key',\n        FilterExpression: 'begins_with(#key, :prefix)',\n        ExpressionAttributeNames: { '#key': 'key' },\n        ExpressionAttributeValues: { ':prefix': { S: this.prefix } },\n        ExclusiveStartKey: exclusiveStartKey,\n      }),\n    );\n  }\n\n  /**\n   * Delete multiple items from our table\n   */\n  async #batchDeleteItems(items: Record<string, AttributeValue>[]) {\n    const requests = items.map((item) => ({ DeleteRequest: { Key: item } }));\n    const command = new BatchWriteItemCommand({ RequestItems: { [this.#tableName]: requests } });\n    await this.#client.send(command);\n  }\n\n  /**\n   * Check if the given item TTL is expired.\n   *\n   * We have to do this manually for local execution against\n   * the dynamodb-local docker image since it doesn't support\n   * TTLs.\n   */\n  #isItemExpired(item: Record<string, AttributeValue>) {\n    if (!item.ttl) return false;\n\n    const now = Math.floor(Date.now() / 1000);\n    return Number(item.ttl.N) < now;\n  }\n\n  /**\n   * Convert a TTL duration in miliseconds to\n   * a UNIX timestamp in seconds since DynamoDB\n   * accepts this format.\n   */\n  #computeTtl(ttl: number) {\n    return Math.floor((Date.now() + ttl) / 1000).toString();\n  }\n\n  /**\n   * Generate the payload for a WriteRequest\n   *\n   * We append the TTL attribute only if a TTL is defined.\n   * If no TTL is defined, the item will never expire.\n   */\n  #createItemPayload(key: string, value: string, ttl?: number): Record<string, AttributeValue> {\n    return {\n      key: { S: this.getItemKey(key) },\n      value: { S: value },\n      ...(ttl ? { ttl: { N: this.#computeTtl(ttl) } } : {}),\n    };\n  }\n\n  /**\n   * Returns a new instance of the driver with the given namespace.\n   */\n  namespace(namespace: string) {\n    return new DynamoDbDriver({\n      ...this.config,\n      client: this.#client,\n      prefix: this.createNamespacePrefix(namespace),\n    });\n  }\n\n  /**\n   * Get a value from the cache\n   */\n  async get(key: string) {\n    const command = new GetItemCommand({\n      Key: { key: { S: this.getItemKey(key) } },\n      TableName: this.#tableName,\n    });\n\n    const data = await this.#client.send(command);\n\n    if (!data.Item || this.#isItemExpired(data.Item)) {\n      return undefined;\n    }\n\n    return data.Item.value.S ?? data.Item.value.N;\n  }\n\n  /**\n   * Get the value of a key and delete it\n   *\n   * Returns the value if the key exists, undefined otherwise\n   */\n  async pull(key: string) {\n    const value = await this.get(key);\n    if (value === undefined) {\n      return undefined;\n    }\n\n    await this.delete(key);\n    return value;\n  }\n\n  /**\n   * Put a value in the cache\n   * Returns true if the value was set, false otherwise\n   */\n  async set(key: string, value: string, ttl?: number) {\n    const command = new PutItemCommand({\n      TableName: this.#tableName,\n      Item: this.#createItemPayload(key, value, ttl),\n    });\n\n    await this.#client.send(command);\n\n    return true;\n  }\n\n  /**\n   * Check if a key exists in the cache\n   */\n  async has(key: string) {\n    const item = await this.get(key);\n    return item !== undefined;\n  }\n\n  /**\n   * Remove all items from the cache\n   */\n  async clear() {\n    let exclusiveStartKey: Record<string, AttributeValue> | undefined;\n\n    do {\n      /**\n       * Scan the table for items that have the store prefix. This\n       * call is paginated, so we need to repeat until there are\n       * no more items to delete.\n       */\n      const result = await this.#getStoredItems(exclusiveStartKey);\n\n      /**\n       * Make chunks of 25 items since AWS only allows deleting 25 items\n       * at a time\n       */\n      const chunkedItems = chunkify(result.Items ?? [], 25);\n\n      /**\n       * Delete items, one chunk at a time to avoid exceeding the\n       * provisioned throughput for the table.\n       *\n       * A better approach would be to use configured provisioned throughput\n       * and use the `ReturnConsumedCapacity` parameter to check if the\n       * throughput is exceeded. If it is, wait for a bit and try again.\n       */\n      for (const chunk of chunkedItems) {\n        await this.#batchDeleteItems(chunk);\n      }\n\n      /**\n       * Repeat until there are no more items to delete\n       */\n      exclusiveStartKey = result.LastEvaluatedKey;\n    } while (exclusiveStartKey);\n  }\n\n  /**\n   * Delete a key from the cache\n   * Returns true if the key was deleted, false otherwise\n   */\n  async delete(key: string) {\n    try {\n      await this.#deleteItem(key);\n      return true;\n    } catch (error) {\n      if (error instanceof ConditionalCheckFailedException) {\n        return false;\n      }\n\n      throw error;\n    }\n  }\n\n  /**\n   * Delete multiple keys from the cache\n   */\n  async deleteMany(keys: string[]) {\n    await Promise.all(keys.map((key) => this.delete(key)));\n    return true;\n  }\n\n  /**\n   * Closes the connection to the cache\n   */\n  async disconnect() {\n    this.#client.destroy();\n  }\n}\n\n/**\n * Create a new DynamoDB driver\n */\nexport function dynamoDbDriver(options: DynamoDBConfig): CreateDriverResult<DynamoDbDriver> {\n  return {\n    options,\n    factory: (config: DynamoDBConfig) => new DynamoDbDriver(config),\n  };\n}","export default function chunkify(iterable, chunkSize) {\n\tif (typeof iterable[Symbol.iterator] !== 'function') {\n\t\tthrow new TypeError('Expected an `Iterable` in the first argument');\n\t}\n\n\tif (!(Number.isSafeInteger(chunkSize) && chunkSize > 0)) {\n\t\tthrow new TypeError(`Expected \\`chunkSize\\` to be an integer from 1 and up, got \\`${chunkSize}\\``);\n\t}\n\n\treturn {\n\t\t* [Symbol.iterator]() {\n\t\t\tif (Array.isArray(iterable)) {\n\t\t\t\tfor (let index = 0; index < iterable.length; index += chunkSize) {\n\t\t\t\t\tyield iterable.slice(index, index + chunkSize);\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tlet chunk = [];\n\n\t\t\tfor (const value of iterable) {\n\t\t\t\tchunk.push(value);\n\n\t\t\t\tif (chunk.length === chunkSize) {\n\t\t\t\t\tyield chunk;\n\t\t\t\t\tchunk = [];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (chunk.length > 0) {\n\t\t\t\tyield chunk;\n\t\t\t}\n\t\t},\n\t};\n}\n","import { normalizeProvider } from \"@smithy/util-middleware\";\nimport { DEFAULT_ACCOUNT_ID_ENDPOINT_MODE, validateAccountIdEndpointMode, } from \"./AccountIdEndpointModeConstants\";\nexport const resolveAccountIdEndpointModeConfig = (input) => {\n    const accountIdEndpointModeProvider = normalizeProvider(input.accountIdEndpointMode ?? DEFAULT_ACCOUNT_ID_ENDPOINT_MODE);\n    return {\n        ...input,\n        accountIdEndpointMode: async () => {\n            const accIdMode = await accountIdEndpointModeProvider();\n            if (!validateAccountIdEndpointMode(accIdMode)) {\n                throw new Error(`Invalid value for accountIdEndpointMode: ${accIdMode}. Valid values are: \"required\", \"preferred\", \"disabled\".`);\n            }\n            return accIdMode;\n        },\n    };\n};\n","export const DEFAULT_ACCOUNT_ID_ENDPOINT_MODE = \"preferred\";\nexport const ACCOUNT_ID_ENDPOINT_MODE_VALUES = [\"disabled\", \"preferred\", \"required\"];\nexport function validateAccountIdEndpointMode(value) {\n    return ACCOUNT_ID_ENDPOINT_MODE_VALUES.includes(value);\n}\n","import { DEFAULT_ACCOUNT_ID_ENDPOINT_MODE, validateAccountIdEndpointMode, } from \"./AccountIdEndpointModeConstants\";\nconst err = \"Invalid AccountIdEndpointMode value\";\nconst _throw = (message) => {\n    throw new Error(message);\n};\nexport const ENV_ACCOUNT_ID_ENDPOINT_MODE = \"AWS_ACCOUNT_ID_ENDPOINT_MODE\";\nexport const CONFIG_ACCOUNT_ID_ENDPOINT_MODE = \"account_id_endpoint_mode\";\nexport const NODE_ACCOUNT_ID_ENDPOINT_MODE_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => {\n        const value = env[ENV_ACCOUNT_ID_ENDPOINT_MODE];\n        if (value && !validateAccountIdEndpointMode(value)) {\n            _throw(err);\n        }\n        return value;\n    },\n    configFileSelector: (profile) => {\n        const value = profile[CONFIG_ACCOUNT_ID_ENDPOINT_MODE];\n        if (value && !validateAccountIdEndpointMode(value)) {\n            _throw(err);\n        }\n        return value;\n    },\n    default: DEFAULT_ACCOUNT_ID_ENDPOINT_MODE,\n};\n","const ENV_ENDPOINT_DISCOVERY = [\"AWS_ENABLE_ENDPOINT_DISCOVERY\", \"AWS_ENDPOINT_DISCOVERY_ENABLED\"];\nconst CONFIG_ENDPOINT_DISCOVERY = \"endpoint_discovery_enabled\";\nconst isFalsy = (value) => [\"false\", \"0\"].indexOf(value) >= 0;\nexport const NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS = {\n    environmentVariableSelector: (env) => {\n        for (let i = 0; i < ENV_ENDPOINT_DISCOVERY.length; i++) {\n            const envKey = ENV_ENDPOINT_DISCOVERY[i];\n            if (envKey in env) {\n                const value = env[envKey];\n                if (value === \"\") {\n                    throw Error(`Environment variable ${envKey} can't be empty of undefined, got \"${value}\"`);\n                }\n                return !isFalsy(value);\n            }\n        }\n    },\n    configFileSelector: (profile) => {\n        if (CONFIG_ENDPOINT_DISCOVERY in profile) {\n            const value = profile[CONFIG_ENDPOINT_DISCOVERY];\n            if (value === undefined) {\n                throw Error(`Shared config entry ${CONFIG_ENDPOINT_DISCOVERY} can't be undefined, got \"${value}\"`);\n            }\n            return !isFalsy(value);\n        }\n    },\n    default: undefined,\n};\n","import { HttpRequest } from \"@smithy/protocol-http\";\nimport { getCacheKey } from \"./getCacheKey\";\nimport { updateDiscoveredEndpointInCache } from \"./updateDiscoveredEndpointInCache\";\nexport const endpointDiscoveryMiddleware = (config, middlewareConfig) => (next, context) => async (args) => {\n    if (config.isCustomEndpoint) {\n        if (config.isClientEndpointDiscoveryEnabled) {\n            throw new Error(`Custom endpoint is supplied; endpointDiscoveryEnabled must not be true.`);\n        }\n        return next(args);\n    }\n    const { endpointDiscoveryCommandCtor } = config;\n    const { isDiscoveredEndpointRequired, identifiers } = middlewareConfig;\n    const clientName = context.clientName;\n    const commandName = context.commandName;\n    const isEndpointDiscoveryEnabled = await config.endpointDiscoveryEnabled();\n    const cacheKey = await getCacheKey(commandName, config, { identifiers });\n    if (isDiscoveredEndpointRequired) {\n        if (isEndpointDiscoveryEnabled === false) {\n            throw new Error(`Endpoint Discovery is disabled but ${commandName} on ${clientName} requires it.` +\n                ` Please check your configurations.`);\n        }\n        await updateDiscoveredEndpointInCache(config, {\n            ...middlewareConfig,\n            commandName,\n            cacheKey,\n            endpointDiscoveryCommandCtor,\n        });\n    }\n    else if (isEndpointDiscoveryEnabled) {\n        updateDiscoveredEndpointInCache(config, {\n            ...middlewareConfig,\n            commandName,\n            cacheKey,\n            endpointDiscoveryCommandCtor,\n        });\n    }\n    const { request } = args;\n    if (cacheKey && HttpRequest.isInstance(request)) {\n        const endpoint = config.endpointCache.getEndpoint(cacheKey);\n        if (endpoint) {\n            request.hostname = endpoint;\n        }\n    }\n    return next(args);\n};\n","import LRUCache from \"mnemonist/lru-cache\";\nexport class EndpointCache {\n    constructor(capacity) {\n        this.cache = new LRUCache(capacity);\n    }\n    getEndpoint(key) {\n        const endpointsWithExpiry = this.get(key);\n        if (!endpointsWithExpiry || endpointsWithExpiry.length === 0) {\n            return undefined;\n        }\n        const endpoints = endpointsWithExpiry.map((endpoint) => endpoint.Address);\n        return endpoints[Math.floor(Math.random() * endpoints.length)];\n    }\n    get(key) {\n        if (!this.has(key)) {\n            return;\n        }\n        const value = this.cache.get(key);\n        if (!value) {\n            return;\n        }\n        const now = Date.now();\n        const endpointsWithExpiry = value.filter((endpoint) => now < endpoint.Expires);\n        if (endpointsWithExpiry.length === 0) {\n            this.delete(key);\n            return undefined;\n        }\n        return endpointsWithExpiry;\n    }\n    set(key, endpoints) {\n        const now = Date.now();\n        this.cache.set(key, endpoints.map(({ Address, CachePeriodInMinutes }) => ({\n            Address,\n            Expires: now + CachePeriodInMinutes * 60 * 1000,\n        })));\n    }\n    delete(key) {\n        this.cache.set(key, []);\n    }\n    has(key) {\n        if (!this.cache.has(key)) {\n            return false;\n        }\n        const endpoints = this.cache.peek(key);\n        if (!endpoints) {\n            return false;\n        }\n        return endpoints.length > 0;\n    }\n    clear() {\n        this.cache.clear();\n    }\n}\n","import { EndpointCache } from \"@aws-sdk/endpoint-cache\";\nexport const resolveEndpointDiscoveryConfig = (input, { endpointDiscoveryCommandCtor }) => ({\n    ...input,\n    endpointDiscoveryCommandCtor,\n    endpointCache: new EndpointCache(input.endpointCacheSize ?? 1000),\n    endpointDiscoveryEnabled: input.endpointDiscoveryEnabled !== undefined\n        ? () => Promise.resolve(input.endpointDiscoveryEnabled)\n        : input.endpointDiscoveryEnabledProvider,\n    isClientEndpointDiscoveryEnabled: input.endpointDiscoveryEnabled !== undefined,\n});\n","import { resolveAccountIdEndpointModeConfig, } from \"@aws-sdk/core/account-id-endpoint\";\nimport { resolveEndpointDiscoveryConfig, } from \"@aws-sdk/middleware-endpoint-discovery\";\nimport { 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 { defaultDynamoDBHttpAuthSchemeParametersProvider, resolveHttpAuthSchemeConfig, } from \"./auth/httpAuthSchemeProvider\";\nimport { DescribeEndpointsCommand, } from \"./commands/DescribeEndpointsCommand\";\nimport { resolveClientEndpointParameters, } from \"./endpoint/EndpointParameters\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nimport { resolveRuntimeExtensions } from \"./runtimeExtensions\";\nexport { __Client };\nexport class DynamoDBClient extends __Client {\n    constructor(...[configuration]) {\n        const _config_0 = __getRuntimeConfig(configuration || {});\n        const _config_1 = resolveClientEndpointParameters(_config_0);\n        const _config_2 = resolveAccountIdEndpointModeConfig(_config_1);\n        const _config_3 = resolveUserAgentConfig(_config_2);\n        const _config_4 = resolveRetryConfig(_config_3);\n        const _config_5 = resolveRegionConfig(_config_4);\n        const _config_6 = resolveHostHeaderConfig(_config_5);\n        const _config_7 = resolveEndpointConfig(_config_6);\n        const _config_8 = resolveHttpAuthSchemeConfig(_config_7);\n        const _config_9 = resolveEndpointDiscoveryConfig(_config_8, {\n            endpointDiscoveryCommandCtor: DescribeEndpointsCommand,\n        });\n        const _config_10 = resolveRuntimeExtensions(_config_9, configuration?.extensions || []);\n        super(_config_10);\n        this.config = _config_10;\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: defaultDynamoDBHttpAuthSchemeParametersProvider,\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 { resolveAwsSdkSigV4Config, } from \"@aws-sdk/core\";\nimport { getSmithyContext, normalizeProvider } from \"@smithy/util-middleware\";\nexport const defaultDynamoDBHttpAuthSchemeParametersProvider = 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: \"dynamodb\",\n            region: authParameters.region,\n        },\n        propertiesExtractor: (config, context) => ({\n            signingProperties: {\n                config,\n                context,\n            },\n        }),\n    };\n}\nexport const defaultDynamoDBHttpAuthSchemeProvider = (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","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_DescribeEndpointsCommand, se_DescribeEndpointsCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DescribeEndpointsCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"DynamoDB_20120810\", \"DescribeEndpoints\", {})\n    .n(\"DynamoDBClient\", \"DescribeEndpointsCommand\")\n    .f(void 0, void 0)\n    .ser(se_DescribeEndpointsCommand)\n    .de(de_DescribeEndpointsCommand)\n    .build() {\n}\n","export const resolveClientEndpointParameters = (options) => {\n    return {\n        ...options,\n        useDualstackEndpoint: options.useDualstackEndpoint ?? false,\n        useFipsEndpoint: options.useFipsEndpoint ?? false,\n        defaultSigningName: \"dynamodb\",\n    };\n};\nexport const commonParams = {\n    UseFIPS: { type: \"builtInParams\", name: \"useFipsEndpoint\" },\n    AccountId: { type: \"builtInParams\", name: \"accountId\" },\n    Endpoint: { type: \"builtInParams\", name: \"endpoint\" },\n    Region: { type: \"builtInParams\", name: \"region\" },\n    UseDualStack: { type: \"builtInParams\", name: \"useDualstackEndpoint\" },\n    AccountIdEndpointMode: { type: \"builtInParams\", name: \"accountIdEndpointMode\" },\n};\n","import { awsExpectUnion as __expectUnion, 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, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, limitedParseDouble as __limitedParseDouble, parseEpochTimestamp as __parseEpochTimestamp, serializeFloat as __serializeFloat, take, withBaseException, } from \"@smithy/smithy-client\";\nimport { v4 as generateIdempotencyToken } from \"uuid\";\nimport { DynamoDBServiceException as __BaseException } from \"../models/DynamoDBServiceException\";\nimport { AttributeValue, BackupInUseException, BackupNotFoundException, ConditionalCheckFailedException, ContinuousBackupsUnavailableException, DuplicateItemException, ExportConflictException, ExportNotFoundException, GlobalTableAlreadyExistsException, GlobalTableNotFoundException, IdempotentParameterMismatchException, ImportConflictException, ImportNotFoundException, IndexNotFoundException, InternalServerError, InvalidEndpointException, InvalidExportTimeException, InvalidRestoreTimeException, ItemCollectionSizeLimitExceededException, LimitExceededException, PointInTimeRecoveryUnavailableException, PolicyNotFoundException, ProvisionedThroughputExceededException, ReplicaAlreadyExistsException, ReplicaNotFoundException, ReplicatedWriteConflictException, RequestLimitExceeded, ResourceInUseException, ResourceNotFoundException, TableAlreadyExistsException, TableInUseException, TableNotFoundException, TransactionCanceledException, TransactionConflictException, TransactionInProgressException, } from \"../models/models_0\";\nexport const se_BatchExecuteStatementCommand = async (input, context) => {\n    const headers = sharedHeaders(\"BatchExecuteStatement\");\n    let body;\n    body = JSON.stringify(se_BatchExecuteStatementInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_BatchGetItemCommand = async (input, context) => {\n    const headers = sharedHeaders(\"BatchGetItem\");\n    let body;\n    body = JSON.stringify(se_BatchGetItemInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_BatchWriteItemCommand = async (input, context) => {\n    const headers = sharedHeaders(\"BatchWriteItem\");\n    let body;\n    body = JSON.stringify(se_BatchWriteItemInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_CreateBackupCommand = async (input, context) => {\n    const headers = sharedHeaders(\"CreateBackup\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_CreateGlobalTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"CreateGlobalTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_CreateTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"CreateTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteBackupCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DeleteBackup\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteItemCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DeleteItem\");\n    let body;\n    body = JSON.stringify(se_DeleteItemInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteResourcePolicyCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DeleteResourcePolicy\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DeleteTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DeleteTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeBackupCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeBackup\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeContinuousBackupsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeContinuousBackups\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeContributorInsightsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeContributorInsights\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeEndpointsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeEndpoints\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeExportCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeExport\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeGlobalTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeGlobalTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeGlobalTableSettingsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeGlobalTableSettings\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeImportCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeImport\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeKinesisStreamingDestinationCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeKinesisStreamingDestination\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeLimitsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeLimits\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTableReplicaAutoScalingCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeTableReplicaAutoScaling\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DescribeTimeToLiveCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DescribeTimeToLive\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_DisableKinesisStreamingDestinationCommand = async (input, context) => {\n    const headers = sharedHeaders(\"DisableKinesisStreamingDestination\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_EnableKinesisStreamingDestinationCommand = async (input, context) => {\n    const headers = sharedHeaders(\"EnableKinesisStreamingDestination\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ExecuteStatementCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ExecuteStatement\");\n    let body;\n    body = JSON.stringify(se_ExecuteStatementInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ExecuteTransactionCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ExecuteTransaction\");\n    let body;\n    body = JSON.stringify(se_ExecuteTransactionInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ExportTableToPointInTimeCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ExportTableToPointInTime\");\n    let body;\n    body = JSON.stringify(se_ExportTableToPointInTimeInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetItemCommand = async (input, context) => {\n    const headers = sharedHeaders(\"GetItem\");\n    let body;\n    body = JSON.stringify(se_GetItemInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_GetResourcePolicyCommand = async (input, context) => {\n    const headers = sharedHeaders(\"GetResourcePolicy\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ImportTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ImportTable\");\n    let body;\n    body = JSON.stringify(se_ImportTableInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListBackupsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListBackups\");\n    let body;\n    body = JSON.stringify(se_ListBackupsInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListContributorInsightsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListContributorInsights\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListExportsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListExports\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListGlobalTablesCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListGlobalTables\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListImportsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListImports\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTablesCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListTables\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ListTagsOfResourceCommand = async (input, context) => {\n    const headers = sharedHeaders(\"ListTagsOfResource\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_PutItemCommand = async (input, context) => {\n    const headers = sharedHeaders(\"PutItem\");\n    let body;\n    body = JSON.stringify(se_PutItemInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_PutResourcePolicyCommand = async (input, context) => {\n    const headers = sharedHeaders(\"PutResourcePolicy\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_QueryCommand = async (input, context) => {\n    const headers = sharedHeaders(\"Query\");\n    let body;\n    body = JSON.stringify(se_QueryInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_RestoreTableFromBackupCommand = async (input, context) => {\n    const headers = sharedHeaders(\"RestoreTableFromBackup\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_RestoreTableToPointInTimeCommand = async (input, context) => {\n    const headers = sharedHeaders(\"RestoreTableToPointInTime\");\n    let body;\n    body = JSON.stringify(se_RestoreTableToPointInTimeInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_ScanCommand = async (input, context) => {\n    const headers = sharedHeaders(\"Scan\");\n    let body;\n    body = JSON.stringify(se_ScanInput(input, context));\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_TransactGetItemsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"TransactGetItems\");\n    let body;\n    body = JSON.stringify(se_TransactGetItemsInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_TransactWriteItemsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"TransactWriteItems\");\n    let body;\n    body = JSON.stringify(se_TransactWriteItemsInput(input, context));\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_UpdateContinuousBackupsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateContinuousBackups\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateContributorInsightsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateContributorInsights\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateGlobalTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateGlobalTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateGlobalTableSettingsCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateGlobalTableSettings\");\n    let body;\n    body = JSON.stringify(se_UpdateGlobalTableSettingsInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateItemCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateItem\");\n    let body;\n    body = JSON.stringify(se_UpdateItemInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateKinesisStreamingDestinationCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateKinesisStreamingDestination\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateTableCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateTable\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateTableReplicaAutoScalingCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateTableReplicaAutoScaling\");\n    let body;\n    body = JSON.stringify(se_UpdateTableReplicaAutoScalingInput(input, context));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const se_UpdateTimeToLiveCommand = async (input, context) => {\n    const headers = sharedHeaders(\"UpdateTimeToLive\");\n    let body;\n    body = JSON.stringify(_json(input));\n    return buildHttpRpcRequest(context, headers, \"/\", undefined, body);\n};\nexport const de_BatchExecuteStatementCommand = 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_BatchExecuteStatementOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_BatchGetItemCommand = 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_BatchGetItemOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_BatchWriteItemCommand = 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_BatchWriteItemOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_CreateBackupCommand = 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_CreateBackupOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_CreateGlobalTableCommand = 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_CreateGlobalTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_CreateTableCommand = 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_CreateTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DeleteBackupCommand = 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_DeleteBackupOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DeleteItemCommand = 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_DeleteItemOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DeleteResourcePolicyCommand = 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_DeleteTableCommand = 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_DeleteTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeBackupCommand = 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_DescribeBackupOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeContinuousBackupsCommand = 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_DescribeContinuousBackupsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeContributorInsightsCommand = 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_DescribeContributorInsightsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeEndpointsCommand = 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_DescribeExportCommand = 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_DescribeExportOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeGlobalTableCommand = 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_DescribeGlobalTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeGlobalTableSettingsCommand = 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_DescribeGlobalTableSettingsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeImportCommand = 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_DescribeImportOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeKinesisStreamingDestinationCommand = 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_DescribeLimitsCommand = 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_DescribeTableCommand = 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_DescribeTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeTableReplicaAutoScalingCommand = 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_DescribeTableReplicaAutoScalingOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_DescribeTimeToLiveCommand = 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_DisableKinesisStreamingDestinationCommand = 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_EnableKinesisStreamingDestinationCommand = 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_ExecuteStatementCommand = 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_ExecuteStatementOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_ExecuteTransactionCommand = 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_ExecuteTransactionOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_ExportTableToPointInTimeCommand = 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_ExportTableToPointInTimeOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_GetItemCommand = 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_GetItemOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_GetResourcePolicyCommand = 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_ImportTableCommand = 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_ImportTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_ListBackupsCommand = 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_ListBackupsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_ListContributorInsightsCommand = 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_ListExportsCommand = 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_ListGlobalTablesCommand = 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_ListImportsCommand = 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_ListImportsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_ListTablesCommand = 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_ListTagsOfResourceCommand = 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_PutItemCommand = 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_PutItemOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_PutResourcePolicyCommand = 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_QueryCommand = 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_QueryOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_RestoreTableFromBackupCommand = 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_RestoreTableFromBackupOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_RestoreTableToPointInTimeCommand = 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_RestoreTableToPointInTimeOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_ScanCommand = 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_ScanOutput(data, context);\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    await collectBody(output.body, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n    };\n    return response;\n};\nexport const de_TransactGetItemsCommand = 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_TransactGetItemsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_TransactWriteItemsCommand = 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_TransactWriteItemsOutput(data, context);\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    await collectBody(output.body, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n    };\n    return response;\n};\nexport const de_UpdateContinuousBackupsCommand = 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_UpdateContinuousBackupsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_UpdateContributorInsightsCommand = 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_UpdateGlobalTableCommand = 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_UpdateGlobalTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_UpdateGlobalTableSettingsCommand = 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_UpdateGlobalTableSettingsOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_UpdateItemCommand = 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_UpdateItemOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_UpdateKinesisStreamingDestinationCommand = 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_UpdateTableCommand = 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_UpdateTableOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_UpdateTableReplicaAutoScalingCommand = 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_UpdateTableReplicaAutoScalingOutput(data, context);\n    const response = {\n        $metadata: deserializeMetadata(output),\n        ...contents,\n    };\n    return response;\n};\nexport const de_UpdateTimeToLiveCommand = 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};\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 \"InternalServerError\":\n        case \"com.amazonaws.dynamodb#InternalServerError\":\n            throw await de_InternalServerErrorRes(parsedOutput, context);\n        case \"RequestLimitExceeded\":\n        case \"com.amazonaws.dynamodb#RequestLimitExceeded\":\n            throw await de_RequestLimitExceededRes(parsedOutput, context);\n        case \"InvalidEndpointException\":\n        case \"com.amazonaws.dynamodb#InvalidEndpointException\":\n            throw await de_InvalidEndpointExceptionRes(parsedOutput, context);\n        case \"ProvisionedThroughputExceededException\":\n        case \"com.amazonaws.dynamodb#ProvisionedThroughputExceededException\":\n            throw await de_ProvisionedThroughputExceededExceptionRes(parsedOutput, context);\n        case \"ResourceNotFoundException\":\n        case \"com.amazonaws.dynamodb#ResourceNotFoundException\":\n            throw await de_ResourceNotFoundExceptionRes(parsedOutput, context);\n        case \"ItemCollectionSizeLimitExceededException\":\n        case \"com.amazonaws.dynamodb#ItemCollectionSizeLimitExceededException\":\n            throw await de_ItemCollectionSizeLimitExceededExceptionRes(parsedOutput, context);\n        case \"BackupInUseException\":\n        case \"com.amazonaws.dynamodb#BackupInUseException\":\n            throw await de_BackupInUseExceptionRes(parsedOutput, context);\n        case \"ContinuousBackupsUnavailableException\":\n        case \"com.amazonaws.dynamodb#ContinuousBackupsUnavailableException\":\n            throw await de_ContinuousBackupsUnavailableExceptionRes(parsedOutput, context);\n        case \"LimitExceededException\":\n        case \"com.amazonaws.dynamodb#LimitExceededException\":\n            throw await de_LimitExceededExceptionRes(parsedOutput, context);\n        case \"TableInUseException\":\n        case \"com.amazonaws.dynamodb#TableInUseException\":\n            throw await de_TableInUseExceptionRes(parsedOutput, context);\n        case \"TableNotFoundException\":\n        case \"com.amazonaws.dynamodb#TableNotFoundException\":\n            throw await de_TableNotFoundExceptionRes(parsedOutput, context);\n        case \"GlobalTableAlreadyExistsException\":\n        case \"com.amazonaws.dynamodb#GlobalTableAlreadyExistsException\":\n            throw await de_GlobalTableAlreadyExistsExceptionRes(parsedOutput, context);\n        case \"ResourceInUseException\":\n        case \"com.amazonaws.dynamodb#ResourceInUseException\":\n            throw await de_ResourceInUseExceptionRes(parsedOutput, context);\n        case \"BackupNotFoundException\":\n        case \"com.amazonaws.dynamodb#BackupNotFoundException\":\n            throw await de_BackupNotFoundExceptionRes(parsedOutput, context);\n        case \"ConditionalCheckFailedException\":\n        case \"com.amazonaws.dynamodb#ConditionalCheckFailedException\":\n            throw await de_ConditionalCheckFailedExceptionRes(parsedOutput, context);\n        case \"ReplicatedWriteConflictException\":\n        case \"com.amazonaws.dynamodb#ReplicatedWriteConflictException\":\n            throw await de_ReplicatedWriteConflictExceptionRes(parsedOutput, context);\n        case \"TransactionConflictException\":\n        case \"com.amazonaws.dynamodb#TransactionConflictException\":\n            throw await de_TransactionConflictExceptionRes(parsedOutput, context);\n        case \"PolicyNotFoundException\":\n        case \"com.amazonaws.dynamodb#PolicyNotFoundException\":\n            throw await de_PolicyNotFoundExceptionRes(parsedOutput, context);\n        case \"ExportNotFoundException\":\n        case \"com.amazonaws.dynamodb#ExportNotFoundException\":\n            throw await de_ExportNotFoundExceptionRes(parsedOutput, context);\n        case \"GlobalTableNotFoundException\":\n        case \"com.amazonaws.dynamodb#GlobalTableNotFoundException\":\n            throw await de_GlobalTableNotFoundExceptionRes(parsedOutput, context);\n        case \"ImportNotFoundException\":\n        case \"com.amazonaws.dynamodb#ImportNotFoundException\":\n            throw await de_ImportNotFoundExceptionRes(parsedOutput, context);\n        case \"DuplicateItemException\":\n        case \"com.amazonaws.dynamodb#DuplicateItemException\":\n            throw await de_DuplicateItemExceptionRes(parsedOutput, context);\n        case \"IdempotentParameterMismatchException\":\n        case \"com.amazonaws.dynamodb#IdempotentParameterMismatchException\":\n            throw await de_IdempotentParameterMismatchExceptionRes(parsedOutput, context);\n        case \"TransactionCanceledException\":\n        case \"com.amazonaws.dynamodb#TransactionCanceledException\":\n            throw await de_TransactionCanceledExceptionRes(parsedOutput, context);\n        case \"TransactionInProgressException\":\n        case \"com.amazonaws.dynamodb#TransactionInProgressException\":\n            throw await de_TransactionInProgressExceptionRes(parsedOutput, context);\n        case \"ExportConflictException\":\n        case \"com.amazonaws.dynamodb#ExportConflictException\":\n            throw await de_ExportConflictExceptionRes(parsedOutput, context);\n        case \"InvalidExportTimeException\":\n        case \"com.amazonaws.dynamodb#InvalidExportTimeException\":\n            throw await de_InvalidExportTimeExceptionRes(parsedOutput, context);\n        case \"PointInTimeRecoveryUnavailableException\":\n        case \"com.amazonaws.dynamodb#PointInTimeRecoveryUnavailableException\":\n            throw await de_PointInTimeRecoveryUnavailableExceptionRes(parsedOutput, context);\n        case \"ImportConflictException\":\n        case \"com.amazonaws.dynamodb#ImportConflictException\":\n            throw await de_ImportConflictExceptionRes(parsedOutput, context);\n        case \"TableAlreadyExistsException\":\n        case \"com.amazonaws.dynamodb#TableAlreadyExistsException\":\n            throw await de_TableAlreadyExistsExceptionRes(parsedOutput, context);\n        case \"InvalidRestoreTimeException\":\n        case \"com.amazonaws.dynamodb#InvalidRestoreTimeException\":\n            throw await de_InvalidRestoreTimeExceptionRes(parsedOutput, context);\n        case \"ReplicaAlreadyExistsException\":\n        case \"com.amazonaws.dynamodb#ReplicaAlreadyExistsException\":\n            throw await de_ReplicaAlreadyExistsExceptionRes(parsedOutput, context);\n        case \"ReplicaNotFoundException\":\n        case \"com.amazonaws.dynamodb#ReplicaNotFoundException\":\n            throw await de_ReplicaNotFoundExceptionRes(parsedOutput, context);\n        case \"IndexNotFoundException\":\n        case \"com.amazonaws.dynamodb#IndexNotFoundException\":\n            throw await de_IndexNotFoundExceptionRes(parsedOutput, context);\n        default:\n            const parsedBody = parsedOutput.body;\n            return throwDefaultError({\n                output,\n                parsedBody,\n                errorCode,\n            });\n    }\n};\nconst de_BackupInUseExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new BackupInUseException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_BackupNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new BackupNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ConditionalCheckFailedExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_ConditionalCheckFailedException(body, context);\n    const exception = new ConditionalCheckFailedException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ContinuousBackupsUnavailableExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ContinuousBackupsUnavailableException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_DuplicateItemExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new DuplicateItemException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ExportConflictExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ExportConflictException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ExportNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ExportNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_GlobalTableAlreadyExistsExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new GlobalTableAlreadyExistsException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_GlobalTableNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new GlobalTableNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_IdempotentParameterMismatchExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new IdempotentParameterMismatchException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ImportConflictExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ImportConflictException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ImportNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ImportNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_IndexNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new IndexNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_InternalServerErrorRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new InternalServerError({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_InvalidEndpointExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new InvalidEndpointException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_InvalidExportTimeExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new InvalidExportTimeException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_InvalidRestoreTimeExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new InvalidRestoreTimeException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ItemCollectionSizeLimitExceededExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ItemCollectionSizeLimitExceededException({\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_PointInTimeRecoveryUnavailableExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new PointInTimeRecoveryUnavailableException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_PolicyNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new PolicyNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ProvisionedThroughputExceededExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ProvisionedThroughputExceededException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ReplicaAlreadyExistsExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ReplicaAlreadyExistsException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ReplicaNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ReplicaNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ReplicatedWriteConflictExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ReplicatedWriteConflictException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_RequestLimitExceededRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new RequestLimitExceeded({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_ResourceInUseExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new ResourceInUseException({\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_TableAlreadyExistsExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new TableAlreadyExistsException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_TableInUseExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new TableInUseException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_TableNotFoundExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new TableNotFoundException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_TransactionCanceledExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = de_TransactionCanceledException(body, context);\n    const exception = new TransactionCanceledException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_TransactionConflictExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new TransactionConflictException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst de_TransactionInProgressExceptionRes = async (parsedOutput, context) => {\n    const body = parsedOutput.body;\n    const deserialized = _json(body);\n    const exception = new TransactionInProgressException({\n        $metadata: deserializeMetadata(parsedOutput),\n        ...deserialized,\n    });\n    return __decorateServiceException(exception, body);\n};\nconst se_AttributeUpdates = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_AttributeValueUpdate(value, context);\n        return acc;\n    }, {});\n};\nconst se_AttributeValue = (input, context) => {\n    return AttributeValue.visit(input, {\n        B: (value) => ({ B: context.base64Encoder(value) }),\n        BOOL: (value) => ({ BOOL: value }),\n        BS: (value) => ({ BS: se_BinarySetAttributeValue(value, context) }),\n        L: (value) => ({ L: se_ListAttributeValue(value, context) }),\n        M: (value) => ({ M: se_MapAttributeValue(value, context) }),\n        N: (value) => ({ N: value }),\n        NS: (value) => ({ NS: _json(value) }),\n        NULL: (value) => ({ NULL: value }),\n        S: (value) => ({ S: value }),\n        SS: (value) => ({ SS: _json(value) }),\n        _: (name, value) => ({ name: value }),\n    });\n};\nconst se_AttributeValueList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_AttributeValue(entry, context);\n    });\n};\nconst se_AttributeValueUpdate = (input, context) => {\n    return take(input, {\n        Action: [],\n        Value: (_) => se_AttributeValue(_, context),\n    });\n};\nconst se_AutoScalingPolicyUpdate = (input, context) => {\n    return take(input, {\n        PolicyName: [],\n        TargetTrackingScalingPolicyConfiguration: (_) => se_AutoScalingTargetTrackingScalingPolicyConfigurationUpdate(_, context),\n    });\n};\nconst se_AutoScalingSettingsUpdate = (input, context) => {\n    return take(input, {\n        AutoScalingDisabled: [],\n        AutoScalingRoleArn: [],\n        MaximumUnits: [],\n        MinimumUnits: [],\n        ScalingPolicyUpdate: (_) => se_AutoScalingPolicyUpdate(_, context),\n    });\n};\nconst se_AutoScalingTargetTrackingScalingPolicyConfigurationUpdate = (input, context) => {\n    return take(input, {\n        DisableScaleIn: [],\n        ScaleInCooldown: [],\n        ScaleOutCooldown: [],\n        TargetValue: __serializeFloat,\n    });\n};\nconst se_BatchExecuteStatementInput = (input, context) => {\n    return take(input, {\n        ReturnConsumedCapacity: [],\n        Statements: (_) => se_PartiQLBatchRequest(_, context),\n    });\n};\nconst se_BatchGetItemInput = (input, context) => {\n    return take(input, {\n        RequestItems: (_) => se_BatchGetRequestMap(_, context),\n        ReturnConsumedCapacity: [],\n    });\n};\nconst se_BatchGetRequestMap = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_KeysAndAttributes(value, context);\n        return acc;\n    }, {});\n};\nconst se_BatchStatementRequest = (input, context) => {\n    return take(input, {\n        ConsistentRead: [],\n        Parameters: (_) => se_PreparedStatementParameters(_, context),\n        ReturnValuesOnConditionCheckFailure: [],\n        Statement: [],\n    });\n};\nconst se_BatchWriteItemInput = (input, context) => {\n    return take(input, {\n        RequestItems: (_) => se_BatchWriteItemRequestMap(_, context),\n        ReturnConsumedCapacity: [],\n        ReturnItemCollectionMetrics: [],\n    });\n};\nconst se_BatchWriteItemRequestMap = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_WriteRequests(value, context);\n        return acc;\n    }, {});\n};\nconst se_BinarySetAttributeValue = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return context.base64Encoder(entry);\n    });\n};\nconst se_Condition = (input, context) => {\n    return take(input, {\n        AttributeValueList: (_) => se_AttributeValueList(_, context),\n        ComparisonOperator: [],\n    });\n};\nconst se_ConditionCheck = (input, context) => {\n    return take(input, {\n        ConditionExpression: [],\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Key: (_) => se_Key(_, context),\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n    });\n};\nconst se_Delete = (input, context) => {\n    return take(input, {\n        ConditionExpression: [],\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Key: (_) => se_Key(_, context),\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n    });\n};\nconst se_DeleteItemInput = (input, context) => {\n    return take(input, {\n        ConditionExpression: [],\n        ConditionalOperator: [],\n        Expected: (_) => se_ExpectedAttributeMap(_, context),\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Key: (_) => se_Key(_, context),\n        ReturnConsumedCapacity: [],\n        ReturnItemCollectionMetrics: [],\n        ReturnValues: [],\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n    });\n};\nconst se_DeleteRequest = (input, context) => {\n    return take(input, {\n        Key: (_) => se_Key(_, context),\n    });\n};\nconst se_ExecuteStatementInput = (input, context) => {\n    return take(input, {\n        ConsistentRead: [],\n        Limit: [],\n        NextToken: [],\n        Parameters: (_) => se_PreparedStatementParameters(_, context),\n        ReturnConsumedCapacity: [],\n        ReturnValuesOnConditionCheckFailure: [],\n        Statement: [],\n    });\n};\nconst se_ExecuteTransactionInput = (input, context) => {\n    return take(input, {\n        ClientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()],\n        ReturnConsumedCapacity: [],\n        TransactStatements: (_) => se_ParameterizedStatements(_, context),\n    });\n};\nconst se_ExpectedAttributeMap = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_ExpectedAttributeValue(value, context);\n        return acc;\n    }, {});\n};\nconst se_ExpectedAttributeValue = (input, context) => {\n    return take(input, {\n        AttributeValueList: (_) => se_AttributeValueList(_, context),\n        ComparisonOperator: [],\n        Exists: [],\n        Value: (_) => se_AttributeValue(_, context),\n    });\n};\nconst se_ExportTableToPointInTimeInput = (input, context) => {\n    return take(input, {\n        ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n        ExportFormat: [],\n        ExportTime: (_) => _.getTime() / 1000,\n        ExportType: [],\n        IncrementalExportSpecification: (_) => se_IncrementalExportSpecification(_, context),\n        S3Bucket: [],\n        S3BucketOwner: [],\n        S3Prefix: [],\n        S3SseAlgorithm: [],\n        S3SseKmsKeyId: [],\n        TableArn: [],\n    });\n};\nconst se_ExpressionAttributeValueMap = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_AttributeValue(value, context);\n        return acc;\n    }, {});\n};\nconst se_FilterConditionMap = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_Condition(value, context);\n        return acc;\n    }, {});\n};\nconst se_Get = (input, context) => {\n    return take(input, {\n        ExpressionAttributeNames: _json,\n        Key: (_) => se_Key(_, context),\n        ProjectionExpression: [],\n        TableName: [],\n    });\n};\nconst se_GetItemInput = (input, context) => {\n    return take(input, {\n        AttributesToGet: _json,\n        ConsistentRead: [],\n        ExpressionAttributeNames: _json,\n        Key: (_) => se_Key(_, context),\n        ProjectionExpression: [],\n        ReturnConsumedCapacity: [],\n        TableName: [],\n    });\n};\nconst se_GlobalSecondaryIndexAutoScalingUpdate = (input, context) => {\n    return take(input, {\n        IndexName: [],\n        ProvisionedWriteCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n    });\n};\nconst se_GlobalSecondaryIndexAutoScalingUpdateList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_GlobalSecondaryIndexAutoScalingUpdate(entry, context);\n    });\n};\nconst se_GlobalTableGlobalSecondaryIndexSettingsUpdate = (input, context) => {\n    return take(input, {\n        IndexName: [],\n        ProvisionedWriteCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n        ProvisionedWriteCapacityUnits: [],\n    });\n};\nconst se_GlobalTableGlobalSecondaryIndexSettingsUpdateList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_GlobalTableGlobalSecondaryIndexSettingsUpdate(entry, context);\n    });\n};\nconst se_ImportTableInput = (input, context) => {\n    return take(input, {\n        ClientToken: [true, (_) => _ ?? generateIdempotencyToken()],\n        InputCompressionType: [],\n        InputFormat: [],\n        InputFormatOptions: _json,\n        S3BucketSource: _json,\n        TableCreationParameters: _json,\n    });\n};\nconst se_IncrementalExportSpecification = (input, context) => {\n    return take(input, {\n        ExportFromTime: (_) => _.getTime() / 1000,\n        ExportToTime: (_) => _.getTime() / 1000,\n        ExportViewType: [],\n    });\n};\nconst se_Key = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_AttributeValue(value, context);\n        return acc;\n    }, {});\n};\nconst se_KeyConditions = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_Condition(value, context);\n        return acc;\n    }, {});\n};\nconst se_KeyList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_Key(entry, context);\n    });\n};\nconst se_KeysAndAttributes = (input, context) => {\n    return take(input, {\n        AttributesToGet: _json,\n        ConsistentRead: [],\n        ExpressionAttributeNames: _json,\n        Keys: (_) => se_KeyList(_, context),\n        ProjectionExpression: [],\n    });\n};\nconst se_ListAttributeValue = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_AttributeValue(entry, context);\n    });\n};\nconst se_ListBackupsInput = (input, context) => {\n    return take(input, {\n        BackupType: [],\n        ExclusiveStartBackupArn: [],\n        Limit: [],\n        TableName: [],\n        TimeRangeLowerBound: (_) => _.getTime() / 1000,\n        TimeRangeUpperBound: (_) => _.getTime() / 1000,\n    });\n};\nconst se_MapAttributeValue = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_AttributeValue(value, context);\n        return acc;\n    }, {});\n};\nconst se_ParameterizedStatement = (input, context) => {\n    return take(input, {\n        Parameters: (_) => se_PreparedStatementParameters(_, context),\n        ReturnValuesOnConditionCheckFailure: [],\n        Statement: [],\n    });\n};\nconst se_ParameterizedStatements = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_ParameterizedStatement(entry, context);\n    });\n};\nconst se_PartiQLBatchRequest = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_BatchStatementRequest(entry, context);\n    });\n};\nconst se_PreparedStatementParameters = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_AttributeValue(entry, context);\n    });\n};\nconst se_Put = (input, context) => {\n    return take(input, {\n        ConditionExpression: [],\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Item: (_) => se_PutItemInputAttributeMap(_, context),\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n    });\n};\nconst se_PutItemInput = (input, context) => {\n    return take(input, {\n        ConditionExpression: [],\n        ConditionalOperator: [],\n        Expected: (_) => se_ExpectedAttributeMap(_, context),\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Item: (_) => se_PutItemInputAttributeMap(_, context),\n        ReturnConsumedCapacity: [],\n        ReturnItemCollectionMetrics: [],\n        ReturnValues: [],\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n    });\n};\nconst se_PutItemInputAttributeMap = (input, context) => {\n    return Object.entries(input).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = se_AttributeValue(value, context);\n        return acc;\n    }, {});\n};\nconst se_PutRequest = (input, context) => {\n    return take(input, {\n        Item: (_) => se_PutItemInputAttributeMap(_, context),\n    });\n};\nconst se_QueryInput = (input, context) => {\n    return take(input, {\n        AttributesToGet: _json,\n        ConditionalOperator: [],\n        ConsistentRead: [],\n        ExclusiveStartKey: (_) => se_Key(_, context),\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        FilterExpression: [],\n        IndexName: [],\n        KeyConditionExpression: [],\n        KeyConditions: (_) => se_KeyConditions(_, context),\n        Limit: [],\n        ProjectionExpression: [],\n        QueryFilter: (_) => se_FilterConditionMap(_, context),\n        ReturnConsumedCapacity: [],\n        ScanIndexForward: [],\n        Select: [],\n        TableName: [],\n    });\n};\nconst se_ReplicaAutoScalingUpdate = (input, context) => {\n    return take(input, {\n        RegionName: [],\n        ReplicaGlobalSecondaryIndexUpdates: (_) => se_ReplicaGlobalSecondaryIndexAutoScalingUpdateList(_, context),\n        ReplicaProvisionedReadCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n    });\n};\nconst se_ReplicaAutoScalingUpdateList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_ReplicaAutoScalingUpdate(entry, context);\n    });\n};\nconst se_ReplicaGlobalSecondaryIndexAutoScalingUpdate = (input, context) => {\n    return take(input, {\n        IndexName: [],\n        ProvisionedReadCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n    });\n};\nconst se_ReplicaGlobalSecondaryIndexAutoScalingUpdateList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_ReplicaGlobalSecondaryIndexAutoScalingUpdate(entry, context);\n    });\n};\nconst se_ReplicaGlobalSecondaryIndexSettingsUpdate = (input, context) => {\n    return take(input, {\n        IndexName: [],\n        ProvisionedReadCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n        ProvisionedReadCapacityUnits: [],\n    });\n};\nconst se_ReplicaGlobalSecondaryIndexSettingsUpdateList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_ReplicaGlobalSecondaryIndexSettingsUpdate(entry, context);\n    });\n};\nconst se_ReplicaSettingsUpdate = (input, context) => {\n    return take(input, {\n        RegionName: [],\n        ReplicaGlobalSecondaryIndexSettingsUpdate: (_) => se_ReplicaGlobalSecondaryIndexSettingsUpdateList(_, context),\n        ReplicaProvisionedReadCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n        ReplicaProvisionedReadCapacityUnits: [],\n        ReplicaTableClass: [],\n    });\n};\nconst se_ReplicaSettingsUpdateList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_ReplicaSettingsUpdate(entry, context);\n    });\n};\nconst se_RestoreTableToPointInTimeInput = (input, context) => {\n    return take(input, {\n        BillingModeOverride: [],\n        GlobalSecondaryIndexOverride: _json,\n        LocalSecondaryIndexOverride: _json,\n        OnDemandThroughputOverride: _json,\n        ProvisionedThroughputOverride: _json,\n        RestoreDateTime: (_) => _.getTime() / 1000,\n        SSESpecificationOverride: _json,\n        SourceTableArn: [],\n        SourceTableName: [],\n        TargetTableName: [],\n        UseLatestRestorableTime: [],\n    });\n};\nconst se_ScanInput = (input, context) => {\n    return take(input, {\n        AttributesToGet: _json,\n        ConditionalOperator: [],\n        ConsistentRead: [],\n        ExclusiveStartKey: (_) => se_Key(_, context),\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        FilterExpression: [],\n        IndexName: [],\n        Limit: [],\n        ProjectionExpression: [],\n        ReturnConsumedCapacity: [],\n        ScanFilter: (_) => se_FilterConditionMap(_, context),\n        Segment: [],\n        Select: [],\n        TableName: [],\n        TotalSegments: [],\n    });\n};\nconst se_TransactGetItem = (input, context) => {\n    return take(input, {\n        Get: (_) => se_Get(_, context),\n    });\n};\nconst se_TransactGetItemList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_TransactGetItem(entry, context);\n    });\n};\nconst se_TransactGetItemsInput = (input, context) => {\n    return take(input, {\n        ReturnConsumedCapacity: [],\n        TransactItems: (_) => se_TransactGetItemList(_, context),\n    });\n};\nconst se_TransactWriteItem = (input, context) => {\n    return take(input, {\n        ConditionCheck: (_) => se_ConditionCheck(_, context),\n        Delete: (_) => se_Delete(_, context),\n        Put: (_) => se_Put(_, context),\n        Update: (_) => se_Update(_, context),\n    });\n};\nconst se_TransactWriteItemList = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_TransactWriteItem(entry, context);\n    });\n};\nconst se_TransactWriteItemsInput = (input, context) => {\n    return take(input, {\n        ClientRequestToken: [true, (_) => _ ?? generateIdempotencyToken()],\n        ReturnConsumedCapacity: [],\n        ReturnItemCollectionMetrics: [],\n        TransactItems: (_) => se_TransactWriteItemList(_, context),\n    });\n};\nconst se_Update = (input, context) => {\n    return take(input, {\n        ConditionExpression: [],\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Key: (_) => se_Key(_, context),\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n        UpdateExpression: [],\n    });\n};\nconst se_UpdateGlobalTableSettingsInput = (input, context) => {\n    return take(input, {\n        GlobalTableBillingMode: [],\n        GlobalTableGlobalSecondaryIndexSettingsUpdate: (_) => se_GlobalTableGlobalSecondaryIndexSettingsUpdateList(_, context),\n        GlobalTableName: [],\n        GlobalTableProvisionedWriteCapacityAutoScalingSettingsUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n        GlobalTableProvisionedWriteCapacityUnits: [],\n        ReplicaSettingsUpdate: (_) => se_ReplicaSettingsUpdateList(_, context),\n    });\n};\nconst se_UpdateItemInput = (input, context) => {\n    return take(input, {\n        AttributeUpdates: (_) => se_AttributeUpdates(_, context),\n        ConditionExpression: [],\n        ConditionalOperator: [],\n        Expected: (_) => se_ExpectedAttributeMap(_, context),\n        ExpressionAttributeNames: _json,\n        ExpressionAttributeValues: (_) => se_ExpressionAttributeValueMap(_, context),\n        Key: (_) => se_Key(_, context),\n        ReturnConsumedCapacity: [],\n        ReturnItemCollectionMetrics: [],\n        ReturnValues: [],\n        ReturnValuesOnConditionCheckFailure: [],\n        TableName: [],\n        UpdateExpression: [],\n    });\n};\nconst se_UpdateTableReplicaAutoScalingInput = (input, context) => {\n    return take(input, {\n        GlobalSecondaryIndexUpdates: (_) => se_GlobalSecondaryIndexAutoScalingUpdateList(_, context),\n        ProvisionedWriteCapacityAutoScalingUpdate: (_) => se_AutoScalingSettingsUpdate(_, context),\n        ReplicaUpdates: (_) => se_ReplicaAutoScalingUpdateList(_, context),\n        TableName: [],\n    });\n};\nconst se_WriteRequest = (input, context) => {\n    return take(input, {\n        DeleteRequest: (_) => se_DeleteRequest(_, context),\n        PutRequest: (_) => se_PutRequest(_, context),\n    });\n};\nconst se_WriteRequests = (input, context) => {\n    return input\n        .filter((e) => e != null)\n        .map((entry) => {\n        return se_WriteRequest(entry, context);\n    });\n};\nconst de_ArchivalSummary = (output, context) => {\n    return take(output, {\n        ArchivalBackupArn: __expectString,\n        ArchivalDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ArchivalReason: __expectString,\n    });\n};\nconst de_AttributeMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_AttributeValue(__expectUnion(value), context);\n        return acc;\n    }, {});\n};\nconst de_AttributeValue = (output, context) => {\n    if (output.B != null) {\n        return {\n            B: context.base64Decoder(output.B),\n        };\n    }\n    if (__expectBoolean(output.BOOL) !== undefined) {\n        return { BOOL: __expectBoolean(output.BOOL) };\n    }\n    if (output.BS != null) {\n        return {\n            BS: de_BinarySetAttributeValue(output.BS, context),\n        };\n    }\n    if (output.L != null) {\n        return {\n            L: de_ListAttributeValue(output.L, context),\n        };\n    }\n    if (output.M != null) {\n        return {\n            M: de_MapAttributeValue(output.M, context),\n        };\n    }\n    if (__expectString(output.N) !== undefined) {\n        return { N: __expectString(output.N) };\n    }\n    if (output.NS != null) {\n        return {\n            NS: _json(output.NS),\n        };\n    }\n    if (__expectBoolean(output.NULL) !== undefined) {\n        return { NULL: __expectBoolean(output.NULL) };\n    }\n    if (__expectString(output.S) !== undefined) {\n        return { S: __expectString(output.S) };\n    }\n    if (output.SS != null) {\n        return {\n            SS: _json(output.SS),\n        };\n    }\n    return { $unknown: Object.entries(output)[0] };\n};\nconst de_AutoScalingPolicyDescription = (output, context) => {\n    return take(output, {\n        PolicyName: __expectString,\n        TargetTrackingScalingPolicyConfiguration: (_) => de_AutoScalingTargetTrackingScalingPolicyConfigurationDescription(_, context),\n    });\n};\nconst de_AutoScalingPolicyDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_AutoScalingPolicyDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_AutoScalingSettingsDescription = (output, context) => {\n    return take(output, {\n        AutoScalingDisabled: __expectBoolean,\n        AutoScalingRoleArn: __expectString,\n        MaximumUnits: __expectLong,\n        MinimumUnits: __expectLong,\n        ScalingPolicies: (_) => de_AutoScalingPolicyDescriptionList(_, context),\n    });\n};\nconst de_AutoScalingTargetTrackingScalingPolicyConfigurationDescription = (output, context) => {\n    return take(output, {\n        DisableScaleIn: __expectBoolean,\n        ScaleInCooldown: __expectInt32,\n        ScaleOutCooldown: __expectInt32,\n        TargetValue: __limitedParseDouble,\n    });\n};\nconst de_BackupDescription = (output, context) => {\n    return take(output, {\n        BackupDetails: (_) => de_BackupDetails(_, context),\n        SourceTableDetails: (_) => de_SourceTableDetails(_, context),\n        SourceTableFeatureDetails: (_) => de_SourceTableFeatureDetails(_, context),\n    });\n};\nconst de_BackupDetails = (output, context) => {\n    return take(output, {\n        BackupArn: __expectString,\n        BackupCreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        BackupExpiryDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        BackupName: __expectString,\n        BackupSizeBytes: __expectLong,\n        BackupStatus: __expectString,\n        BackupType: __expectString,\n    });\n};\nconst de_BackupSummaries = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_BackupSummary(entry, context);\n    });\n    return retVal;\n};\nconst de_BackupSummary = (output, context) => {\n    return take(output, {\n        BackupArn: __expectString,\n        BackupCreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        BackupExpiryDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        BackupName: __expectString,\n        BackupSizeBytes: __expectLong,\n        BackupStatus: __expectString,\n        BackupType: __expectString,\n        TableArn: __expectString,\n        TableId: __expectString,\n        TableName: __expectString,\n    });\n};\nconst de_BatchExecuteStatementOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n        Responses: (_) => de_PartiQLBatchResponse(_, context),\n    });\n};\nconst de_BatchGetItemOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n        Responses: (_) => de_BatchGetResponseMap(_, context),\n        UnprocessedKeys: (_) => de_BatchGetRequestMap(_, context),\n    });\n};\nconst de_BatchGetRequestMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_KeysAndAttributes(value, context);\n        return acc;\n    }, {});\n};\nconst de_BatchGetResponseMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_ItemList(value, context);\n        return acc;\n    }, {});\n};\nconst de_BatchStatementError = (output, context) => {\n    return take(output, {\n        Code: __expectString,\n        Item: (_) => de_AttributeMap(_, context),\n        Message: __expectString,\n    });\n};\nconst de_BatchStatementResponse = (output, context) => {\n    return take(output, {\n        Error: (_) => de_BatchStatementError(_, context),\n        Item: (_) => de_AttributeMap(_, context),\n        TableName: __expectString,\n    });\n};\nconst de_BatchWriteItemOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n        ItemCollectionMetrics: (_) => de_ItemCollectionMetricsPerTable(_, context),\n        UnprocessedItems: (_) => de_BatchWriteItemRequestMap(_, context),\n    });\n};\nconst de_BatchWriteItemRequestMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_WriteRequests(value, context);\n        return acc;\n    }, {});\n};\nconst de_BillingModeSummary = (output, context) => {\n    return take(output, {\n        BillingMode: __expectString,\n        LastUpdateToPayPerRequestDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n    });\n};\nconst de_BinarySetAttributeValue = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return context.base64Decoder(entry);\n    });\n    return retVal;\n};\nconst de_CancellationReason = (output, context) => {\n    return take(output, {\n        Code: __expectString,\n        Item: (_) => de_AttributeMap(_, context),\n        Message: __expectString,\n    });\n};\nconst de_CancellationReasonList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_CancellationReason(entry, context);\n    });\n    return retVal;\n};\nconst de_Capacity = (output, context) => {\n    return take(output, {\n        CapacityUnits: __limitedParseDouble,\n        ReadCapacityUnits: __limitedParseDouble,\n        WriteCapacityUnits: __limitedParseDouble,\n    });\n};\nconst de_ConditionalCheckFailedException = (output, context) => {\n    return take(output, {\n        Item: (_) => de_AttributeMap(_, context),\n        message: __expectString,\n    });\n};\nconst de_ConsumedCapacity = (output, context) => {\n    return take(output, {\n        CapacityUnits: __limitedParseDouble,\n        GlobalSecondaryIndexes: (_) => de_SecondaryIndexesCapacityMap(_, context),\n        LocalSecondaryIndexes: (_) => de_SecondaryIndexesCapacityMap(_, context),\n        ReadCapacityUnits: __limitedParseDouble,\n        Table: (_) => de_Capacity(_, context),\n        TableName: __expectString,\n        WriteCapacityUnits: __limitedParseDouble,\n    });\n};\nconst de_ConsumedCapacityMultiple = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ConsumedCapacity(entry, context);\n    });\n    return retVal;\n};\nconst de_ContinuousBackupsDescription = (output, context) => {\n    return take(output, {\n        ContinuousBackupsStatus: __expectString,\n        PointInTimeRecoveryDescription: (_) => de_PointInTimeRecoveryDescription(_, context),\n    });\n};\nconst de_CreateBackupOutput = (output, context) => {\n    return take(output, {\n        BackupDetails: (_) => de_BackupDetails(_, context),\n    });\n};\nconst de_CreateGlobalTableOutput = (output, context) => {\n    return take(output, {\n        GlobalTableDescription: (_) => de_GlobalTableDescription(_, context),\n    });\n};\nconst de_CreateTableOutput = (output, context) => {\n    return take(output, {\n        TableDescription: (_) => de_TableDescription(_, context),\n    });\n};\nconst de_DeleteBackupOutput = (output, context) => {\n    return take(output, {\n        BackupDescription: (_) => de_BackupDescription(_, context),\n    });\n};\nconst de_DeleteItemOutput = (output, context) => {\n    return take(output, {\n        Attributes: (_) => de_AttributeMap(_, context),\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context),\n    });\n};\nconst de_DeleteRequest = (output, context) => {\n    return take(output, {\n        Key: (_) => de_Key(_, context),\n    });\n};\nconst de_DeleteTableOutput = (output, context) => {\n    return take(output, {\n        TableDescription: (_) => de_TableDescription(_, context),\n    });\n};\nconst de_DescribeBackupOutput = (output, context) => {\n    return take(output, {\n        BackupDescription: (_) => de_BackupDescription(_, context),\n    });\n};\nconst de_DescribeContinuousBackupsOutput = (output, context) => {\n    return take(output, {\n        ContinuousBackupsDescription: (_) => de_ContinuousBackupsDescription(_, context),\n    });\n};\nconst de_DescribeContributorInsightsOutput = (output, context) => {\n    return take(output, {\n        ContributorInsightsRuleList: _json,\n        ContributorInsightsStatus: __expectString,\n        FailureException: _json,\n        IndexName: __expectString,\n        LastUpdateDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        TableName: __expectString,\n    });\n};\nconst de_DescribeExportOutput = (output, context) => {\n    return take(output, {\n        ExportDescription: (_) => de_ExportDescription(_, context),\n    });\n};\nconst de_DescribeGlobalTableOutput = (output, context) => {\n    return take(output, {\n        GlobalTableDescription: (_) => de_GlobalTableDescription(_, context),\n    });\n};\nconst de_DescribeGlobalTableSettingsOutput = (output, context) => {\n    return take(output, {\n        GlobalTableName: __expectString,\n        ReplicaSettings: (_) => de_ReplicaSettingsDescriptionList(_, context),\n    });\n};\nconst de_DescribeImportOutput = (output, context) => {\n    return take(output, {\n        ImportTableDescription: (_) => de_ImportTableDescription(_, context),\n    });\n};\nconst de_DescribeTableOutput = (output, context) => {\n    return take(output, {\n        Table: (_) => de_TableDescription(_, context),\n    });\n};\nconst de_DescribeTableReplicaAutoScalingOutput = (output, context) => {\n    return take(output, {\n        TableAutoScalingDescription: (_) => de_TableAutoScalingDescription(_, context),\n    });\n};\nconst de_ExecuteStatementOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        Items: (_) => de_ItemList(_, context),\n        LastEvaluatedKey: (_) => de_Key(_, context),\n        NextToken: __expectString,\n    });\n};\nconst de_ExecuteTransactionOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n        Responses: (_) => de_ItemResponseList(_, context),\n    });\n};\nconst de_ExportDescription = (output, context) => {\n    return take(output, {\n        BilledSizeBytes: __expectLong,\n        ClientToken: __expectString,\n        EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ExportArn: __expectString,\n        ExportFormat: __expectString,\n        ExportManifest: __expectString,\n        ExportStatus: __expectString,\n        ExportTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ExportType: __expectString,\n        FailureCode: __expectString,\n        FailureMessage: __expectString,\n        IncrementalExportSpecification: (_) => de_IncrementalExportSpecification(_, context),\n        ItemCount: __expectLong,\n        S3Bucket: __expectString,\n        S3BucketOwner: __expectString,\n        S3Prefix: __expectString,\n        S3SseAlgorithm: __expectString,\n        S3SseKmsKeyId: __expectString,\n        StartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        TableArn: __expectString,\n        TableId: __expectString,\n    });\n};\nconst de_ExportTableToPointInTimeOutput = (output, context) => {\n    return take(output, {\n        ExportDescription: (_) => de_ExportDescription(_, context),\n    });\n};\nconst de_GetItemOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        Item: (_) => de_AttributeMap(_, context),\n    });\n};\nconst de_GlobalSecondaryIndexDescription = (output, context) => {\n    return take(output, {\n        Backfilling: __expectBoolean,\n        IndexArn: __expectString,\n        IndexName: __expectString,\n        IndexSizeBytes: __expectLong,\n        IndexStatus: __expectString,\n        ItemCount: __expectLong,\n        KeySchema: _json,\n        OnDemandThroughput: _json,\n        Projection: _json,\n        ProvisionedThroughput: (_) => de_ProvisionedThroughputDescription(_, context),\n        WarmThroughput: _json,\n    });\n};\nconst de_GlobalSecondaryIndexDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_GlobalSecondaryIndexDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_GlobalTableDescription = (output, context) => {\n    return take(output, {\n        CreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        GlobalTableArn: __expectString,\n        GlobalTableName: __expectString,\n        GlobalTableStatus: __expectString,\n        ReplicationGroup: (_) => de_ReplicaDescriptionList(_, context),\n    });\n};\nconst de_ImportSummary = (output, context) => {\n    return take(output, {\n        CloudWatchLogGroupArn: __expectString,\n        EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ImportArn: __expectString,\n        ImportStatus: __expectString,\n        InputFormat: __expectString,\n        S3BucketSource: _json,\n        StartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        TableArn: __expectString,\n    });\n};\nconst de_ImportSummaryList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ImportSummary(entry, context);\n    });\n    return retVal;\n};\nconst de_ImportTableDescription = (output, context) => {\n    return take(output, {\n        ClientToken: __expectString,\n        CloudWatchLogGroupArn: __expectString,\n        EndTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ErrorCount: __expectLong,\n        FailureCode: __expectString,\n        FailureMessage: __expectString,\n        ImportArn: __expectString,\n        ImportStatus: __expectString,\n        ImportedItemCount: __expectLong,\n        InputCompressionType: __expectString,\n        InputFormat: __expectString,\n        InputFormatOptions: _json,\n        ProcessedItemCount: __expectLong,\n        ProcessedSizeBytes: __expectLong,\n        S3BucketSource: _json,\n        StartTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        TableArn: __expectString,\n        TableCreationParameters: _json,\n        TableId: __expectString,\n    });\n};\nconst de_ImportTableOutput = (output, context) => {\n    return take(output, {\n        ImportTableDescription: (_) => de_ImportTableDescription(_, context),\n    });\n};\nconst de_IncrementalExportSpecification = (output, context) => {\n    return take(output, {\n        ExportFromTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ExportToTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ExportViewType: __expectString,\n    });\n};\nconst de_ItemCollectionKeyAttributeMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_AttributeValue(__expectUnion(value), context);\n        return acc;\n    }, {});\n};\nconst de_ItemCollectionMetrics = (output, context) => {\n    return take(output, {\n        ItemCollectionKey: (_) => de_ItemCollectionKeyAttributeMap(_, context),\n        SizeEstimateRangeGB: (_) => de_ItemCollectionSizeEstimateRange(_, context),\n    });\n};\nconst de_ItemCollectionMetricsMultiple = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ItemCollectionMetrics(entry, context);\n    });\n    return retVal;\n};\nconst de_ItemCollectionMetricsPerTable = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_ItemCollectionMetricsMultiple(value, context);\n        return acc;\n    }, {});\n};\nconst de_ItemCollectionSizeEstimateRange = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return __limitedParseDouble(entry);\n    });\n    return retVal;\n};\nconst de_ItemList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_AttributeMap(entry, context);\n    });\n    return retVal;\n};\nconst de_ItemResponse = (output, context) => {\n    return take(output, {\n        Item: (_) => de_AttributeMap(_, context),\n    });\n};\nconst de_ItemResponseList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ItemResponse(entry, context);\n    });\n    return retVal;\n};\nconst de_Key = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_AttributeValue(__expectUnion(value), context);\n        return acc;\n    }, {});\n};\nconst de_KeyList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_Key(entry, context);\n    });\n    return retVal;\n};\nconst de_KeysAndAttributes = (output, context) => {\n    return take(output, {\n        AttributesToGet: _json,\n        ConsistentRead: __expectBoolean,\n        ExpressionAttributeNames: _json,\n        Keys: (_) => de_KeyList(_, context),\n        ProjectionExpression: __expectString,\n    });\n};\nconst de_ListAttributeValue = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_AttributeValue(__expectUnion(entry), context);\n    });\n    return retVal;\n};\nconst de_ListBackupsOutput = (output, context) => {\n    return take(output, {\n        BackupSummaries: (_) => de_BackupSummaries(_, context),\n        LastEvaluatedBackupArn: __expectString,\n    });\n};\nconst de_ListImportsOutput = (output, context) => {\n    return take(output, {\n        ImportSummaryList: (_) => de_ImportSummaryList(_, context),\n        NextToken: __expectString,\n    });\n};\nconst de_MapAttributeValue = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_AttributeValue(__expectUnion(value), context);\n        return acc;\n    }, {});\n};\nconst de_PartiQLBatchResponse = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_BatchStatementResponse(entry, context);\n    });\n    return retVal;\n};\nconst de_PointInTimeRecoveryDescription = (output, context) => {\n    return take(output, {\n        EarliestRestorableDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        LatestRestorableDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        PointInTimeRecoveryStatus: __expectString,\n    });\n};\nconst de_ProvisionedThroughputDescription = (output, context) => {\n    return take(output, {\n        LastDecreaseDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        LastIncreaseDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        NumberOfDecreasesToday: __expectLong,\n        ReadCapacityUnits: __expectLong,\n        WriteCapacityUnits: __expectLong,\n    });\n};\nconst de_PutItemInputAttributeMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_AttributeValue(__expectUnion(value), context);\n        return acc;\n    }, {});\n};\nconst de_PutItemOutput = (output, context) => {\n    return take(output, {\n        Attributes: (_) => de_AttributeMap(_, context),\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context),\n    });\n};\nconst de_PutRequest = (output, context) => {\n    return take(output, {\n        Item: (_) => de_PutItemInputAttributeMap(_, context),\n    });\n};\nconst de_QueryOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        Count: __expectInt32,\n        Items: (_) => de_ItemList(_, context),\n        LastEvaluatedKey: (_) => de_Key(_, context),\n        ScannedCount: __expectInt32,\n    });\n};\nconst de_ReplicaAutoScalingDescription = (output, context) => {\n    return take(output, {\n        GlobalSecondaryIndexes: (_) => de_ReplicaGlobalSecondaryIndexAutoScalingDescriptionList(_, context),\n        RegionName: __expectString,\n        ReplicaProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ReplicaProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ReplicaStatus: __expectString,\n    });\n};\nconst de_ReplicaAutoScalingDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ReplicaAutoScalingDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_ReplicaDescription = (output, context) => {\n    return take(output, {\n        GlobalSecondaryIndexes: _json,\n        KMSMasterKeyId: __expectString,\n        OnDemandThroughputOverride: _json,\n        ProvisionedThroughputOverride: _json,\n        RegionName: __expectString,\n        ReplicaInaccessibleDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        ReplicaStatus: __expectString,\n        ReplicaStatusDescription: __expectString,\n        ReplicaStatusPercentProgress: __expectString,\n        ReplicaTableClassSummary: (_) => de_TableClassSummary(_, context),\n        WarmThroughput: _json,\n    });\n};\nconst de_ReplicaDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ReplicaDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_ReplicaGlobalSecondaryIndexAutoScalingDescription = (output, context) => {\n    return take(output, {\n        IndexName: __expectString,\n        IndexStatus: __expectString,\n        ProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n    });\n};\nconst de_ReplicaGlobalSecondaryIndexAutoScalingDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ReplicaGlobalSecondaryIndexAutoScalingDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_ReplicaGlobalSecondaryIndexSettingsDescription = (output, context) => {\n    return take(output, {\n        IndexName: __expectString,\n        IndexStatus: __expectString,\n        ProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ProvisionedReadCapacityUnits: __expectLong,\n        ProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ProvisionedWriteCapacityUnits: __expectLong,\n    });\n};\nconst de_ReplicaGlobalSecondaryIndexSettingsDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ReplicaGlobalSecondaryIndexSettingsDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_ReplicaSettingsDescription = (output, context) => {\n    return take(output, {\n        RegionName: __expectString,\n        ReplicaBillingModeSummary: (_) => de_BillingModeSummary(_, context),\n        ReplicaGlobalSecondaryIndexSettings: (_) => de_ReplicaGlobalSecondaryIndexSettingsDescriptionList(_, context),\n        ReplicaProvisionedReadCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ReplicaProvisionedReadCapacityUnits: __expectLong,\n        ReplicaProvisionedWriteCapacityAutoScalingSettings: (_) => de_AutoScalingSettingsDescription(_, context),\n        ReplicaProvisionedWriteCapacityUnits: __expectLong,\n        ReplicaStatus: __expectString,\n        ReplicaTableClassSummary: (_) => de_TableClassSummary(_, context),\n    });\n};\nconst de_ReplicaSettingsDescriptionList = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_ReplicaSettingsDescription(entry, context);\n    });\n    return retVal;\n};\nconst de_RestoreSummary = (output, context) => {\n    return take(output, {\n        RestoreDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        RestoreInProgress: __expectBoolean,\n        SourceBackupArn: __expectString,\n        SourceTableArn: __expectString,\n    });\n};\nconst de_RestoreTableFromBackupOutput = (output, context) => {\n    return take(output, {\n        TableDescription: (_) => de_TableDescription(_, context),\n    });\n};\nconst de_RestoreTableToPointInTimeOutput = (output, context) => {\n    return take(output, {\n        TableDescription: (_) => de_TableDescription(_, context),\n    });\n};\nconst de_ScanOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        Count: __expectInt32,\n        Items: (_) => de_ItemList(_, context),\n        LastEvaluatedKey: (_) => de_Key(_, context),\n        ScannedCount: __expectInt32,\n    });\n};\nconst de_SecondaryIndexesCapacityMap = (output, context) => {\n    return Object.entries(output).reduce((acc, [key, value]) => {\n        if (value === null) {\n            return acc;\n        }\n        acc[key] = de_Capacity(value, context);\n        return acc;\n    }, {});\n};\nconst de_SourceTableDetails = (output, context) => {\n    return take(output, {\n        BillingMode: __expectString,\n        ItemCount: __expectLong,\n        KeySchema: _json,\n        OnDemandThroughput: _json,\n        ProvisionedThroughput: _json,\n        TableArn: __expectString,\n        TableCreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        TableId: __expectString,\n        TableName: __expectString,\n        TableSizeBytes: __expectLong,\n    });\n};\nconst de_SourceTableFeatureDetails = (output, context) => {\n    return take(output, {\n        GlobalSecondaryIndexes: _json,\n        LocalSecondaryIndexes: _json,\n        SSEDescription: (_) => de_SSEDescription(_, context),\n        StreamDescription: _json,\n        TimeToLiveDescription: _json,\n    });\n};\nconst de_SSEDescription = (output, context) => {\n    return take(output, {\n        InaccessibleEncryptionDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        KMSMasterKeyArn: __expectString,\n        SSEType: __expectString,\n        Status: __expectString,\n    });\n};\nconst de_TableAutoScalingDescription = (output, context) => {\n    return take(output, {\n        Replicas: (_) => de_ReplicaAutoScalingDescriptionList(_, context),\n        TableName: __expectString,\n        TableStatus: __expectString,\n    });\n};\nconst de_TableClassSummary = (output, context) => {\n    return take(output, {\n        LastUpdateDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        TableClass: __expectString,\n    });\n};\nconst de_TableDescription = (output, context) => {\n    return take(output, {\n        ArchivalSummary: (_) => de_ArchivalSummary(_, context),\n        AttributeDefinitions: _json,\n        BillingModeSummary: (_) => de_BillingModeSummary(_, context),\n        CreationDateTime: (_) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))),\n        DeletionProtectionEnabled: __expectBoolean,\n        GlobalSecondaryIndexes: (_) => de_GlobalSecondaryIndexDescriptionList(_, context),\n        GlobalTableVersion: __expectString,\n        ItemCount: __expectLong,\n        KeySchema: _json,\n        LatestStreamArn: __expectString,\n        LatestStreamLabel: __expectString,\n        LocalSecondaryIndexes: _json,\n        MultiRegionConsistency: __expectString,\n        OnDemandThroughput: _json,\n        ProvisionedThroughput: (_) => de_ProvisionedThroughputDescription(_, context),\n        Replicas: (_) => de_ReplicaDescriptionList(_, context),\n        RestoreSummary: (_) => de_RestoreSummary(_, context),\n        SSEDescription: (_) => de_SSEDescription(_, context),\n        StreamSpecification: _json,\n        TableArn: __expectString,\n        TableClassSummary: (_) => de_TableClassSummary(_, context),\n        TableId: __expectString,\n        TableName: __expectString,\n        TableSizeBytes: __expectLong,\n        TableStatus: __expectString,\n        WarmThroughput: _json,\n    });\n};\nconst de_TransactGetItemsOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n        Responses: (_) => de_ItemResponseList(_, context),\n    });\n};\nconst de_TransactionCanceledException = (output, context) => {\n    return take(output, {\n        CancellationReasons: (_) => de_CancellationReasonList(_, context),\n        Message: __expectString,\n    });\n};\nconst de_TransactWriteItemsOutput = (output, context) => {\n    return take(output, {\n        ConsumedCapacity: (_) => de_ConsumedCapacityMultiple(_, context),\n        ItemCollectionMetrics: (_) => de_ItemCollectionMetricsPerTable(_, context),\n    });\n};\nconst de_UpdateContinuousBackupsOutput = (output, context) => {\n    return take(output, {\n        ContinuousBackupsDescription: (_) => de_ContinuousBackupsDescription(_, context),\n    });\n};\nconst de_UpdateGlobalTableOutput = (output, context) => {\n    return take(output, {\n        GlobalTableDescription: (_) => de_GlobalTableDescription(_, context),\n    });\n};\nconst de_UpdateGlobalTableSettingsOutput = (output, context) => {\n    return take(output, {\n        GlobalTableName: __expectString,\n        ReplicaSettings: (_) => de_ReplicaSettingsDescriptionList(_, context),\n    });\n};\nconst de_UpdateItemOutput = (output, context) => {\n    return take(output, {\n        Attributes: (_) => de_AttributeMap(_, context),\n        ConsumedCapacity: (_) => de_ConsumedCapacity(_, context),\n        ItemCollectionMetrics: (_) => de_ItemCollectionMetrics(_, context),\n    });\n};\nconst de_UpdateTableOutput = (output, context) => {\n    return take(output, {\n        TableDescription: (_) => de_TableDescription(_, context),\n    });\n};\nconst de_UpdateTableReplicaAutoScalingOutput = (output, context) => {\n    return take(output, {\n        TableAutoScalingDescription: (_) => de_TableAutoScalingDescription(_, context),\n    });\n};\nconst de_WriteRequest = (output, context) => {\n    return take(output, {\n        DeleteRequest: (_) => de_DeleteRequest(_, context),\n        PutRequest: (_) => de_PutRequest(_, context),\n    });\n};\nconst de_WriteRequests = (output, context) => {\n    const retVal = (output || [])\n        .filter((e) => e != null)\n        .map((entry) => {\n        return de_WriteRequest(entry, context);\n    });\n    return retVal;\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.0\",\n        \"x-amz-target\": `DynamoDB_20120810.${operation}`,\n    };\n}\n","import { ServiceException as __ServiceException, } from \"@smithy/smithy-client\";\nexport { __ServiceException };\nexport class DynamoDBServiceException extends __ServiceException {\n    constructor(options) {\n        super(options);\n        Object.setPrototypeOf(this, DynamoDBServiceException.prototype);\n    }\n}\n","import { DynamoDBServiceException as __BaseException } from \"./DynamoDBServiceException\";\nexport const ApproximateCreationDateTimePrecision = {\n    MICROSECOND: \"MICROSECOND\",\n    MILLISECOND: \"MILLISECOND\",\n};\nexport const AttributeAction = {\n    ADD: \"ADD\",\n    DELETE: \"DELETE\",\n    PUT: \"PUT\",\n};\nexport const ScalarAttributeType = {\n    B: \"B\",\n    N: \"N\",\n    S: \"S\",\n};\nexport const BackupStatus = {\n    AVAILABLE: \"AVAILABLE\",\n    CREATING: \"CREATING\",\n    DELETED: \"DELETED\",\n};\nexport const BackupType = {\n    AWS_BACKUP: \"AWS_BACKUP\",\n    SYSTEM: \"SYSTEM\",\n    USER: \"USER\",\n};\nexport const BillingMode = {\n    PAY_PER_REQUEST: \"PAY_PER_REQUEST\",\n    PROVISIONED: \"PROVISIONED\",\n};\nexport const KeyType = {\n    HASH: \"HASH\",\n    RANGE: \"RANGE\",\n};\nexport const ProjectionType = {\n    ALL: \"ALL\",\n    INCLUDE: \"INCLUDE\",\n    KEYS_ONLY: \"KEYS_ONLY\",\n};\nexport const SSEType = {\n    AES256: \"AES256\",\n    KMS: \"KMS\",\n};\nexport const SSEStatus = {\n    DISABLED: \"DISABLED\",\n    DISABLING: \"DISABLING\",\n    ENABLED: \"ENABLED\",\n    ENABLING: \"ENABLING\",\n    UPDATING: \"UPDATING\",\n};\nexport const StreamViewType = {\n    KEYS_ONLY: \"KEYS_ONLY\",\n    NEW_AND_OLD_IMAGES: \"NEW_AND_OLD_IMAGES\",\n    NEW_IMAGE: \"NEW_IMAGE\",\n    OLD_IMAGE: \"OLD_IMAGE\",\n};\nexport const TimeToLiveStatus = {\n    DISABLED: \"DISABLED\",\n    DISABLING: \"DISABLING\",\n    ENABLED: \"ENABLED\",\n    ENABLING: \"ENABLING\",\n};\nexport class BackupInUseException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"BackupInUseException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"BackupInUseException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, BackupInUseException.prototype);\n    }\n}\nexport class BackupNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"BackupNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"BackupNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, BackupNotFoundException.prototype);\n    }\n}\nexport const BackupTypeFilter = {\n    ALL: \"ALL\",\n    AWS_BACKUP: \"AWS_BACKUP\",\n    SYSTEM: \"SYSTEM\",\n    USER: \"USER\",\n};\nexport const ReturnConsumedCapacity = {\n    INDEXES: \"INDEXES\",\n    NONE: \"NONE\",\n    TOTAL: \"TOTAL\",\n};\nexport const ReturnValuesOnConditionCheckFailure = {\n    ALL_OLD: \"ALL_OLD\",\n    NONE: \"NONE\",\n};\nexport const BatchStatementErrorCodeEnum = {\n    AccessDenied: \"AccessDenied\",\n    ConditionalCheckFailed: \"ConditionalCheckFailed\",\n    DuplicateItem: \"DuplicateItem\",\n    InternalServerError: \"InternalServerError\",\n    ItemCollectionSizeLimitExceeded: \"ItemCollectionSizeLimitExceeded\",\n    ProvisionedThroughputExceeded: \"ProvisionedThroughputExceeded\",\n    RequestLimitExceeded: \"RequestLimitExceeded\",\n    ResourceNotFound: \"ResourceNotFound\",\n    ThrottlingError: \"ThrottlingError\",\n    TransactionConflict: \"TransactionConflict\",\n    ValidationError: \"ValidationError\",\n};\nexport class InternalServerError extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InternalServerError\",\n            $fault: \"server\",\n            ...opts,\n        });\n        this.name = \"InternalServerError\";\n        this.$fault = \"server\";\n        Object.setPrototypeOf(this, InternalServerError.prototype);\n    }\n}\nexport class RequestLimitExceeded extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"RequestLimitExceeded\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"RequestLimitExceeded\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, RequestLimitExceeded.prototype);\n    }\n}\nexport class InvalidEndpointException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidEndpointException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidEndpointException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidEndpointException.prototype);\n        this.Message = opts.Message;\n    }\n}\nexport class ProvisionedThroughputExceededException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ProvisionedThroughputExceededException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ProvisionedThroughputExceededException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ProvisionedThroughputExceededException.prototype);\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    }\n}\nexport const ReturnItemCollectionMetrics = {\n    NONE: \"NONE\",\n    SIZE: \"SIZE\",\n};\nexport class ItemCollectionSizeLimitExceededException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ItemCollectionSizeLimitExceededException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ItemCollectionSizeLimitExceededException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ItemCollectionSizeLimitExceededException.prototype);\n    }\n}\nexport const ComparisonOperator = {\n    BEGINS_WITH: \"BEGINS_WITH\",\n    BETWEEN: \"BETWEEN\",\n    CONTAINS: \"CONTAINS\",\n    EQ: \"EQ\",\n    GE: \"GE\",\n    GT: \"GT\",\n    IN: \"IN\",\n    LE: \"LE\",\n    LT: \"LT\",\n    NE: \"NE\",\n    NOT_CONTAINS: \"NOT_CONTAINS\",\n    NOT_NULL: \"NOT_NULL\",\n    NULL: \"NULL\",\n};\nexport const ConditionalOperator = {\n    AND: \"AND\",\n    OR: \"OR\",\n};\nexport const ContinuousBackupsStatus = {\n    DISABLED: \"DISABLED\",\n    ENABLED: \"ENABLED\",\n};\nexport const PointInTimeRecoveryStatus = {\n    DISABLED: \"DISABLED\",\n    ENABLED: \"ENABLED\",\n};\nexport class ContinuousBackupsUnavailableException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ContinuousBackupsUnavailableException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ContinuousBackupsUnavailableException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ContinuousBackupsUnavailableException.prototype);\n    }\n}\nexport const ContributorInsightsAction = {\n    DISABLE: \"DISABLE\",\n    ENABLE: \"ENABLE\",\n};\nexport const ContributorInsightsStatus = {\n    DISABLED: \"DISABLED\",\n    DISABLING: \"DISABLING\",\n    ENABLED: \"ENABLED\",\n    ENABLING: \"ENABLING\",\n    FAILED: \"FAILED\",\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    }\n}\nexport class TableInUseException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"TableInUseException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"TableInUseException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, TableInUseException.prototype);\n    }\n}\nexport class TableNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"TableNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"TableNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, TableNotFoundException.prototype);\n    }\n}\nexport const GlobalTableStatus = {\n    ACTIVE: \"ACTIVE\",\n    CREATING: \"CREATING\",\n    DELETING: \"DELETING\",\n    UPDATING: \"UPDATING\",\n};\nexport const IndexStatus = {\n    ACTIVE: \"ACTIVE\",\n    CREATING: \"CREATING\",\n    DELETING: \"DELETING\",\n    UPDATING: \"UPDATING\",\n};\nexport const ReplicaStatus = {\n    ACTIVE: \"ACTIVE\",\n    CREATING: \"CREATING\",\n    CREATION_FAILED: \"CREATION_FAILED\",\n    DELETING: \"DELETING\",\n    INACCESSIBLE_ENCRYPTION_CREDENTIALS: \"INACCESSIBLE_ENCRYPTION_CREDENTIALS\",\n    REGION_DISABLED: \"REGION_DISABLED\",\n    UPDATING: \"UPDATING\",\n};\nexport const TableClass = {\n    STANDARD: \"STANDARD\",\n    STANDARD_INFREQUENT_ACCESS: \"STANDARD_INFREQUENT_ACCESS\",\n};\nexport const TableStatus = {\n    ACTIVE: \"ACTIVE\",\n    ARCHIVED: \"ARCHIVED\",\n    ARCHIVING: \"ARCHIVING\",\n    CREATING: \"CREATING\",\n    DELETING: \"DELETING\",\n    INACCESSIBLE_ENCRYPTION_CREDENTIALS: \"INACCESSIBLE_ENCRYPTION_CREDENTIALS\",\n    UPDATING: \"UPDATING\",\n};\nexport class GlobalTableAlreadyExistsException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"GlobalTableAlreadyExistsException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"GlobalTableAlreadyExistsException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, GlobalTableAlreadyExistsException.prototype);\n    }\n}\nexport const MultiRegionConsistency = {\n    EVENTUAL: \"EVENTUAL\",\n    STRONG: \"STRONG\",\n};\nexport class ResourceInUseException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ResourceInUseException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ResourceInUseException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ResourceInUseException.prototype);\n    }\n}\nexport const ReturnValue = {\n    ALL_NEW: \"ALL_NEW\",\n    ALL_OLD: \"ALL_OLD\",\n    NONE: \"NONE\",\n    UPDATED_NEW: \"UPDATED_NEW\",\n    UPDATED_OLD: \"UPDATED_OLD\",\n};\nexport class ReplicatedWriteConflictException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ReplicatedWriteConflictException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ReplicatedWriteConflictException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ReplicatedWriteConflictException.prototype);\n    }\n}\nexport class TransactionConflictException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"TransactionConflictException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"TransactionConflictException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, TransactionConflictException.prototype);\n    }\n}\nexport class PolicyNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"PolicyNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"PolicyNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, PolicyNotFoundException.prototype);\n    }\n}\nexport const ExportFormat = {\n    DYNAMODB_JSON: \"DYNAMODB_JSON\",\n    ION: \"ION\",\n};\nexport const ExportStatus = {\n    COMPLETED: \"COMPLETED\",\n    FAILED: \"FAILED\",\n    IN_PROGRESS: \"IN_PROGRESS\",\n};\nexport const ExportType = {\n    FULL_EXPORT: \"FULL_EXPORT\",\n    INCREMENTAL_EXPORT: \"INCREMENTAL_EXPORT\",\n};\nexport const ExportViewType = {\n    NEW_AND_OLD_IMAGES: \"NEW_AND_OLD_IMAGES\",\n    NEW_IMAGE: \"NEW_IMAGE\",\n};\nexport const S3SseAlgorithm = {\n    AES256: \"AES256\",\n    KMS: \"KMS\",\n};\nexport class ExportNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ExportNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ExportNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ExportNotFoundException.prototype);\n    }\n}\nexport class GlobalTableNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"GlobalTableNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"GlobalTableNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, GlobalTableNotFoundException.prototype);\n    }\n}\nexport const ImportStatus = {\n    CANCELLED: \"CANCELLED\",\n    CANCELLING: \"CANCELLING\",\n    COMPLETED: \"COMPLETED\",\n    FAILED: \"FAILED\",\n    IN_PROGRESS: \"IN_PROGRESS\",\n};\nexport const InputCompressionType = {\n    GZIP: \"GZIP\",\n    NONE: \"NONE\",\n    ZSTD: \"ZSTD\",\n};\nexport const InputFormat = {\n    CSV: \"CSV\",\n    DYNAMODB_JSON: \"DYNAMODB_JSON\",\n    ION: \"ION\",\n};\nexport class ImportNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ImportNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ImportNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ImportNotFoundException.prototype);\n    }\n}\nexport const DestinationStatus = {\n    ACTIVE: \"ACTIVE\",\n    DISABLED: \"DISABLED\",\n    DISABLING: \"DISABLING\",\n    ENABLE_FAILED: \"ENABLE_FAILED\",\n    ENABLING: \"ENABLING\",\n    UPDATING: \"UPDATING\",\n};\nexport class DuplicateItemException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"DuplicateItemException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"DuplicateItemException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, DuplicateItemException.prototype);\n    }\n}\nexport class IdempotentParameterMismatchException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"IdempotentParameterMismatchException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"IdempotentParameterMismatchException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, IdempotentParameterMismatchException.prototype);\n        this.Message = opts.Message;\n    }\n}\nexport class TransactionInProgressException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"TransactionInProgressException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"TransactionInProgressException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, TransactionInProgressException.prototype);\n        this.Message = opts.Message;\n    }\n}\nexport class ExportConflictException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ExportConflictException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ExportConflictException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ExportConflictException.prototype);\n    }\n}\nexport class InvalidExportTimeException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidExportTimeException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidExportTimeException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidExportTimeException.prototype);\n    }\n}\nexport class PointInTimeRecoveryUnavailableException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"PointInTimeRecoveryUnavailableException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"PointInTimeRecoveryUnavailableException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, PointInTimeRecoveryUnavailableException.prototype);\n    }\n}\nexport class ImportConflictException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ImportConflictException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ImportConflictException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ImportConflictException.prototype);\n    }\n}\nexport const Select = {\n    ALL_ATTRIBUTES: \"ALL_ATTRIBUTES\",\n    ALL_PROJECTED_ATTRIBUTES: \"ALL_PROJECTED_ATTRIBUTES\",\n    COUNT: \"COUNT\",\n    SPECIFIC_ATTRIBUTES: \"SPECIFIC_ATTRIBUTES\",\n};\nexport class TableAlreadyExistsException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"TableAlreadyExistsException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"TableAlreadyExistsException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, TableAlreadyExistsException.prototype);\n    }\n}\nexport class InvalidRestoreTimeException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"InvalidRestoreTimeException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"InvalidRestoreTimeException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, InvalidRestoreTimeException.prototype);\n    }\n}\nexport class ReplicaAlreadyExistsException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ReplicaAlreadyExistsException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ReplicaAlreadyExistsException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ReplicaAlreadyExistsException.prototype);\n    }\n}\nexport class ReplicaNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ReplicaNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ReplicaNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ReplicaNotFoundException.prototype);\n    }\n}\nexport class IndexNotFoundException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"IndexNotFoundException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"IndexNotFoundException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, IndexNotFoundException.prototype);\n    }\n}\nexport var AttributeValue;\n(function (AttributeValue) {\n    AttributeValue.visit = (value, visitor) => {\n        if (value.S !== undefined)\n            return visitor.S(value.S);\n        if (value.N !== undefined)\n            return visitor.N(value.N);\n        if (value.B !== undefined)\n            return visitor.B(value.B);\n        if (value.SS !== undefined)\n            return visitor.SS(value.SS);\n        if (value.NS !== undefined)\n            return visitor.NS(value.NS);\n        if (value.BS !== undefined)\n            return visitor.BS(value.BS);\n        if (value.M !== undefined)\n            return visitor.M(value.M);\n        if (value.L !== undefined)\n            return visitor.L(value.L);\n        if (value.NULL !== undefined)\n            return visitor.NULL(value.NULL);\n        if (value.BOOL !== undefined)\n            return visitor.BOOL(value.BOOL);\n        return visitor._(value.$unknown[0], value.$unknown[1]);\n    };\n})(AttributeValue || (AttributeValue = {}));\nexport class ConditionalCheckFailedException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"ConditionalCheckFailedException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"ConditionalCheckFailedException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, ConditionalCheckFailedException.prototype);\n        this.Item = opts.Item;\n    }\n}\nexport class TransactionCanceledException extends __BaseException {\n    constructor(opts) {\n        super({\n            name: \"TransactionCanceledException\",\n            $fault: \"client\",\n            ...opts,\n        });\n        this.name = \"TransactionCanceledException\";\n        this.$fault = \"client\";\n        Object.setPrototypeOf(this, TransactionCanceledException.prototype);\n        this.Message = opts.Message;\n        this.CancellationReasons = opts.CancellationReasons;\n    }\n}\n","{\n  \"name\": \"@aws-sdk/client-dynamodb\",\n  \"description\": \"AWS SDK for JavaScript Dynamodb Client for Node.js, Browser and React Native\",\n  \"version\": \"3.705.0\",\n  \"scripts\": {\n    \"build\": \"concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'\",\n    \"build:cjs\": \"node ../../scripts/compilation/inline client-dynamodb\",\n    \"build:es\": \"tsc -p tsconfig.es.json\",\n    \"build:include:deps\": \"lerna run --scope $npm_package_name --include-dependencies build\",\n    \"build:types\": \"tsc -p tsconfig.types.json\",\n    \"build:types:downlevel\": \"downlevel-dts dist-types dist-types/ts3.4\",\n    \"clean\": \"rimraf ./dist-* && rimraf *.tsbuildinfo\",\n    \"extract:docs\": \"api-extractor run --local\",\n    \"generate:client\": \"node ../../scripts/generate-clients/single-service --solo dynamodb\"\n  },\n  \"main\": \"./dist-cjs/index.js\",\n  \"types\": \"./dist-types/index.d.ts\",\n  \"module\": \"./dist-es/index.js\",\n  \"sideEffects\": false,\n  \"dependencies\": {\n    \"@aws-crypto/sha256-browser\": \"5.2.0\",\n    \"@aws-crypto/sha256-js\": \"5.2.0\",\n    \"@aws-sdk/client-sso-oidc\": \"3.699.0\",\n    \"@aws-sdk/client-sts\": \"3.699.0\",\n    \"@aws-sdk/core\": \"3.696.0\",\n    \"@aws-sdk/credential-provider-node\": \"3.699.0\",\n    \"@aws-sdk/middleware-endpoint-discovery\": \"3.696.0\",\n    \"@aws-sdk/middleware-host-header\": \"3.696.0\",\n    \"@aws-sdk/middleware-logger\": \"3.696.0\",\n    \"@aws-sdk/middleware-recursion-detection\": \"3.696.0\",\n    \"@aws-sdk/middleware-user-agent\": \"3.696.0\",\n    \"@aws-sdk/region-config-resolver\": \"3.696.0\",\n    \"@aws-sdk/types\": \"3.696.0\",\n    \"@aws-sdk/util-endpoints\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-browser\": \"3.696.0\",\n    \"@aws-sdk/util-user-agent-node\": \"3.696.0\",\n    \"@smithy/config-resolver\": \"^3.0.12\",\n    \"@smithy/core\": \"^2.5.3\",\n    \"@smithy/fetch-http-handler\": \"^4.1.1\",\n    \"@smithy/hash-node\": \"^3.0.10\",\n    \"@smithy/invalid-dependency\": \"^3.0.10\",\n    \"@smithy/middleware-content-length\": \"^3.0.12\",\n    \"@smithy/middleware-endpoint\": \"^3.2.3\",\n    \"@smithy/middleware-retry\": \"^3.0.27\",\n    \"@smithy/middleware-serde\": \"^3.0.10\",\n    \"@smithy/middleware-stack\": \"^3.0.10\",\n    \"@smithy/node-config-provider\": \"^3.1.11\",\n    \"@smithy/node-http-handler\": \"^3.3.1\",\n    \"@smithy/protocol-http\": \"^4.1.7\",\n    \"@smithy/smithy-client\": \"^3.4.4\",\n    \"@smithy/types\": \"^3.7.1\",\n    \"@smithy/url-parser\": \"^3.0.10\",\n    \"@smithy/util-base64\": \"^3.0.0\",\n    \"@smithy/util-body-length-browser\": \"^3.0.0\",\n    \"@smithy/util-body-length-node\": \"^3.0.0\",\n    \"@smithy/util-defaults-mode-browser\": \"^3.0.27\",\n    \"@smithy/util-defaults-mode-node\": \"^3.0.27\",\n    \"@smithy/util-endpoints\": \"^2.1.6\",\n    \"@smithy/util-middleware\": \"^3.0.10\",\n    \"@smithy/util-retry\": \"^3.0.10\",\n    \"@smithy/util-utf8\": \"^3.0.0\",\n    \"@smithy/util-waiter\": \"^3.1.9\",\n    \"@types/uuid\": \"^9.0.1\",\n    \"tslib\": \"^2.6.2\",\n    \"uuid\": \"^9.0.1\"\n  },\n  \"devDependencies\": {\n    \"@tsconfig/node16\": \"16.1.3\",\n    \"@types/node\": \"^16.18.96\",\n    \"concurrently\": \"7.0.0\",\n    \"downlevel-dts\": \"0.10.1\",\n    \"rimraf\": \"3.0.2\",\n    \"typescript\": \"~4.9.5\"\n  },\n  \"engines\": {\n    \"node\": \">=16.0.0\"\n  },\n  \"typesVersions\": {\n    \"<4.0\": {\n      \"dist-types/*\": [\n        \"dist-types/ts3.4/*\"\n      ]\n    }\n  },\n  \"files\": [\n    \"dist-*/**\"\n  ],\n  \"author\": {\n    \"name\": \"AWS SDK for JavaScript Team\",\n    \"url\": \"https://aws.amazon.com/javascript/\"\n  },\n  \"license\": \"Apache-2.0\",\n  \"browser\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.browser\"\n  },\n  \"react-native\": {\n    \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.native\"\n  },\n  \"homepage\": \"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-dynamodb\",\n  \"repository\": {\n    \"type\": \"git\",\n    \"url\": \"https://github.com/aws/aws-sdk-js-v3.git\",\n    \"directory\": \"clients/client-dynamodb\"\n  }\n}\n","import packageInfo from \"../package.json\";\nimport { emitWarningIfUnsupportedVersion as awsCheckVersion } from \"@aws-sdk/core\";\nimport { NODE_ACCOUNT_ID_ENDPOINT_MODE_CONFIG_OPTIONS } from \"@aws-sdk/core/account-id-endpoint\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS } from \"@aws-sdk/middleware-endpoint-discovery\";\nimport { NODE_APP_ID_CONFIG_OPTIONS, createDefaultUserAgentProvider } from \"@aws-sdk/util-user-agent-node\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@smithy/config-resolver\";\nimport { Hash } from \"@smithy/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@smithy/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@smithy/node-config-provider\";\nimport { NodeHttpHandler as RequestHandler, streamCollector } from \"@smithy/node-http-handler\";\nimport { calculateBodyLength } from \"@smithy/util-body-length-node\";\nimport { 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-node\";\nimport { emitWarningIfUnsupportedVersion } from \"@smithy/smithy-client\";\nexport const getRuntimeConfig = (config) => {\n    emitWarningIfUnsupportedVersion(process.version);\n    const defaultsMode = resolveDefaultsModeConfig(config);\n    const defaultConfigProvider = () => defaultsMode().then(loadConfigsForDefaultMode);\n    const clientSharedValues = getSharedRuntimeConfig(config);\n    awsCheckVersion(process.version);\n    return {\n        ...clientSharedValues,\n        ...config,\n        runtime: \"node\",\n        defaultsMode,\n        accountIdEndpointMode: config?.accountIdEndpointMode ?? loadNodeConfig(NODE_ACCOUNT_ID_ENDPOINT_MODE_CONFIG_OPTIONS),\n        bodyLengthChecker: config?.bodyLengthChecker ?? calculateBodyLength,\n        credentialDefaultProvider: config?.credentialDefaultProvider ?? credentialDefaultProvider,\n        defaultUserAgentProvider: config?.defaultUserAgentProvider ??\n            createDefaultUserAgentProvider({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }),\n        endpointDiscoveryEnabledProvider: config?.endpointDiscoveryEnabledProvider ?? loadNodeConfig(NODE_ENDPOINT_DISCOVERY_CONFIG_OPTIONS),\n        maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),\n        region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),\n        requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),\n        retryMode: config?.retryMode ??\n            loadNodeConfig({\n                ...NODE_RETRY_MODE_CONFIG_OPTIONS,\n                default: async () => (await defaultConfigProvider()).retryMode || DEFAULT_RETRY_MODE,\n            }),\n        sha256: config?.sha256 ?? Hash.bind(null, \"sha256\"),\n        streamCollector: config?.streamCollector ?? streamCollector,\n        useDualstackEndpoint: config?.useDualstackEndpoint ?? loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS),\n        useFipsEndpoint: config?.useFipsEndpoint ?? loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS),\n        userAgentAppId: config?.userAgentAppId ?? loadNodeConfig(NODE_APP_ID_CONFIG_OPTIONS),\n    };\n};\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 { defaultDynamoDBHttpAuthSchemeProvider } from \"./auth/httpAuthSchemeProvider\";\nimport { defaultEndpointResolver } from \"./endpoint/endpointResolver\";\nexport const getRuntimeConfig = (config) => {\n    return {\n        apiVersion: \"2012-08-10\",\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 ?? defaultDynamoDBHttpAuthSchemeProvider,\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 ?? \"DynamoDB\",\n        urlParser: config?.urlParser ?? parseUrl,\n        utf8Decoder: config?.utf8Decoder ?? fromUtf8,\n        utf8Encoder: config?.utf8Encoder ?? toUtf8,\n    };\n};\n","import { awsEndpointFunctions } from \"@aws-sdk/util-endpoints\";\nimport { customEndpointFunctions, EndpointCache, resolveEndpoint } from \"@smithy/util-endpoints\";\nimport { ruleSet } from \"./ruleset\";\nconst cache = new EndpointCache({\n    size: 50,\n    params: [\"AccountId\", \"AccountIdEndpointMode\", \"Endpoint\", \"Region\", \"UseDualStack\", \"UseFIPS\"],\n});\nexport const defaultEndpointResolver = (endpointParams, context = {}) => {\n    return cache.get(endpointParams, () => resolveEndpoint(ruleSet, {\n        endpointParams: endpointParams,\n        logger: context.logger,\n    }));\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n","const H = \"required\", I = \"type\", J = \"fn\", K = \"argv\", L = \"ref\", M = \"url\", N = \"properties\", O = \"headers\";\nconst a = false, b = \"isSet\", c = \"error\", d = \"endpoint\", e = \"tree\", f = \"PartitionResult\", g = \"stringEquals\", h = \"not\", i = { [H]: false, [I]: \"String\" }, j = { [H]: true, \"default\": false, [I]: \"Boolean\" }, k = { [J]: \"booleanEquals\", [K]: [{ [L]: \"UseFIPS\" }, true] }, l = { [J]: \"booleanEquals\", [K]: [{ [L]: \"UseDualStack\" }, true] }, m = {}, n = { [L]: \"Region\" }, o = { [J]: b, [K]: [{ [L]: \"AccountIdEndpointMode\" }] }, p = { [L]: \"AccountIdEndpointMode\" }, q = { [J]: b, [K]: [{ [L]: \"AccountId\" }] }, r = { [L]: \"AccountId\" }, s = { [J]: g, [K]: [{ [J]: \"getAttr\", [K]: [{ [L]: f }, \"name\"] }, \"aws\"] }, t = { [J]: \"getAttr\", [K]: [{ [L]: f }, \"name\"] }, u = { [J]: h, [K]: [k] }, v = { [J]: h, [K]: [l] }, w = { [J]: \"booleanEquals\", [K]: [{ [J]: \"getAttr\", [K]: [{ [L]: f }, \"supportsFIPS\"] }, true] }, x = { [J]: \"booleanEquals\", [K]: [{ [J]: \"getAttr\", [K]: [{ [L]: f }, \"supportsDualStack\"] }, true] }, y = { [M]: \"https://dynamodb-fips.{Region}.{PartitionResult#dualStackDnsSuffix}\", [N]: {}, [O]: {} }, z = { \"conditions\": [o, { [J]: g, [K]: [p, \"disabled\"] }], [d]: { [M]: \"https://dynamodb.{Region}.{PartitionResult#dnsSuffix}\", [N]: {}, [O]: {} }, [I]: d }, A = { [d]: { [M]: \"https://dynamodb.{Region}.{PartitionResult#dnsSuffix}\", [N]: {}, [O]: {} }, [I]: d }, B = { [M]: \"https://dynamodb-fips.{Region}.{PartitionResult#dnsSuffix}\", [N]: {}, [O]: {} }, C = { [M]: \"https://dynamodb.{Region}.{PartitionResult#dualStackDnsSuffix}\", [N]: {}, [O]: {} }, D = [k], E = [l], F = [n], G = [o, { [J]: g, [K]: [p, \"disabled\"] }];\nconst _data = { version: \"1.0\", parameters: { Region: i, UseDualStack: j, UseFIPS: j, Endpoint: i, AccountId: i, AccountIdEndpointMode: i }, rules: [{ conditions: [{ [J]: b, [K]: [{ [L]: \"Endpoint\" }] }], rules: [{ conditions: D, error: \"Invalid Configuration: FIPS and custom endpoint are not supported\", [I]: c }, { conditions: E, error: \"Invalid Configuration: Dualstack and custom endpoint are not supported\", [I]: c }, { endpoint: { [M]: \"{Endpoint}\", [N]: m, [O]: m }, [I]: d }], [I]: e }, { conditions: [{ [J]: b, [K]: F }], rules: [{ conditions: [{ [J]: \"aws.partition\", [K]: F, assign: f }], rules: [{ conditions: [{ [J]: g, [K]: [n, \"local\"] }], rules: [{ conditions: D, error: \"Invalid Configuration: FIPS and local endpoint are not supported\", [I]: c }, { conditions: E, error: \"Invalid Configuration: Dualstack and local endpoint are not supported\", [I]: c }, { endpoint: { [M]: \"http://localhost:8000\", [N]: { authSchemes: [{ signingRegion: \"us-east-1\", signingName: \"dynamodb\", name: \"sigv4\" }] }, [O]: m }, [I]: d }], [I]: e }, { conditions: [o, { [J]: g, [K]: [p, \"required\"] }, { [J]: h, [K]: [q] }], error: \"AccountIdEndpointMode is required but no AccountID was provided or able to be loaded.\", [I]: c }, { conditions: [q, s, u, v, { [J]: h, [K]: [{ [J]: \"isValidHostLabel\", [K]: [r, a] }] }], error: \"Credentials-sourced account ID parameter is invalid\", [I]: c }, { conditions: [k, l], rules: [{ conditions: [w, x], rules: [{ conditions: G, endpoint: y, [I]: d }, { endpoint: y, [I]: d }], [I]: e }, { error: \"FIPS and DualStack are enabled, but this partition does not support one or both\", [I]: c }], [I]: e }, { conditions: D, rules: [{ conditions: [w], rules: [{ conditions: [{ [J]: g, [K]: [t, \"aws-us-gov\"] }], rules: [z, A], [I]: e }, { conditions: G, endpoint: B, [I]: d }, { endpoint: B, [I]: d }], [I]: e }, { error: \"FIPS is enabled but this partition does not support FIPS\", [I]: c }], [I]: e }, { conditions: E, rules: [{ conditions: [x], rules: [{ conditions: G, endpoint: C, [I]: d }, { endpoint: C, [I]: d }], [I]: e }, { error: \"DualStack is enabled but this partition does not support DualStack\", [I]: c }], [I]: e }, z, { conditions: [q, s, u, v], endpoint: { [M]: \"https://{AccountId}.ddb.{Region}.{PartitionResult#dnsSuffix}\", [N]: m, [O]: m }, [I]: d }, A], [I]: e }], [I]: e }, { error: \"Invalid Configuration: Missing Region\", [I]: c }] };\nexport const ruleSet = _data;\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","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 { 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_BatchWriteItemCommand, se_BatchWriteItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class BatchWriteItemCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"DynamoDB_20120810\", \"BatchWriteItem\", {})\n    .n(\"DynamoDBClient\", \"BatchWriteItemCommand\")\n    .f(void 0, void 0)\n    .ser(se_BatchWriteItemCommand)\n    .de(de_BatchWriteItemCommand)\n    .build() {\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_DeleteItemCommand, se_DeleteItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class DeleteItemCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"DynamoDB_20120810\", \"DeleteItem\", {})\n    .n(\"DynamoDBClient\", \"DeleteItemCommand\")\n    .f(void 0, void 0)\n    .ser(se_DeleteItemCommand)\n    .de(de_DeleteItemCommand)\n    .build() {\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_GetItemCommand, se_GetItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class GetItemCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"DynamoDB_20120810\", \"GetItem\", {})\n    .n(\"DynamoDBClient\", \"GetItemCommand\")\n    .f(void 0, void 0)\n    .ser(se_GetItemCommand)\n    .de(de_GetItemCommand)\n    .build() {\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_PutItemCommand, se_PutItemCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class PutItemCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"DynamoDB_20120810\", \"PutItem\", {})\n    .n(\"DynamoDBClient\", \"PutItemCommand\")\n    .f(void 0, void 0)\n    .ser(se_PutItemCommand)\n    .de(de_PutItemCommand)\n    .build() {\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_ScanCommand, se_ScanCommand } from \"../protocols/Aws_json1_0\";\nexport { $Command };\nexport class ScanCommand extends $Command\n    .classBuilder()\n    .ep(commonParams)\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(\"DynamoDB_20120810\", \"Scan\", {})\n    .n(\"DynamoDBClient\", \"ScanCommand\")\n    .f(void 0, void 0)\n    .ser(se_ScanCommand)\n    .de(de_ScanCommand)\n    .build() {\n}\n","import type { DriverCommonOptions } from '../types/main';\n\nexport abstract class BaseDriver {\n  /**\n   * Current cache prefix\n   */\n  protected prefix: string;\n\n  constructor(protected config: DriverCommonOptions) {\n    this.prefix = this.#sanitizePrefix(config.prefix);\n  }\n\n  /**\n   * Sanitizes the cache prefix by removing any trailing colons\n   */\n  #sanitizePrefix(prefix?: string) {\n    if (!prefix) return '';\n    return prefix.replace(/:+$/, '');\n  }\n\n  /**\n   * Creates a namespace prefix by concatenating the cache prefix with the given namespace\n   * If the cache prefix is not defined, the namespace is returned as is\n   */\n  protected createNamespacePrefix(namespace: string) {\n    const sanitizedPrefix = this.#sanitizePrefix(this.prefix);\n    return sanitizedPrefix ? `${sanitizedPrefix}:${namespace}` : namespace;\n  }\n\n  /**\n   * Returns the cache key with the prefix added to it, if a prefix is defined\n   */\n  protected getItemKey(key: string) {\n    return this.prefix ? `${this.prefix}:${key}` : key;\n  }\n}\n"],"mappings":"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","names":["HttpAuthLocation","HttpApiKeyAuthLocation","init_auth","EndpointURLScheme","init_checksum","AlgorithmId","init_checksum","init_checksum","FieldPosition","init_identity","IniSectionType","RequestHandlerProtocol","init_auth","init_identity","init_dist_es","init_extensions","request","init_dist_es","init_extensions","exports","module","l","i","exports","module","k","i","l","s","exports","p","t","v","i","l","o","exports","l","i","exports","module","LRUCache","i","l","cache","init_dist_es","request","logger","init_dist_es","init_dist_es","request","init_getSmithyContext","map","init_dist_es","request","init_dist_es","init_dist_es","init_dist_es","normalizeProvider","init_normalizeProvider","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","c","init_dist_es","i","init_dist_es","request","DEFER_EVENT_LISTENER_TIME","request","DEFER_EVENT_LISTENER_TIME","request","httpRequest","request","init_dist_es","logger","requestTimeout","hAgent","hsAgent","request","hsRequest","hRequest","err","e","init_dist_es","import_stream","err","init_dist_es","init_dist_es","streamCollector","init_stream_collector","init_dist_es","init_stream_collector","i","init_dist_es","init_dist_es","streamCollector","import_stream","ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED","sdkStreamMixin","init_dist_es","e","init_dist_es","init_dist_es","init_dist_es","init_dist_es","c","resolvedPath","init_dist_es","init_requestBuilder","init_dist_es","init_dist_es","httpRequest","init_dist_es","init_getSmithyContext","init_normalizeProvider","init_requestBuilder","normalizeProvider","logger","init_dist_es","EndpointCache","i","val","init_EndpointRuleObject","init_ErrorRuleObject","init_RuleSetObject","init_TreeRuleObject","init_shared","init_types","init_EndpointRuleObject","init_ErrorRuleObject","init_RuleSetObject","init_TreeRuleObject","init_shared","init_types","init_types","hostname","protocol","k","v","c","init_types","init_types","init_types","init_types","init_types","init_types","init_types","init_types","logger","v","k","init_dist_es","init_types","init_isIpAddress","init_dist_es","init_dist_es","init_isIpAddress","partition","partition","init_dist_es","init_resolveEndpoint","init_dist_es","init_EndpointError","init_dist_es","init_EndpointRuleObject","init_ErrorRuleObject","init_RuleSetObject","init_TreeRuleObject","init_shared","init_types","init_EndpointError","init_EndpointRuleObject","init_ErrorRuleObject","init_RuleSetObject","init_TreeRuleObject","init_shared","init_dist_es","init_isIpAddress","init_resolveEndpoint","init_types","setFeature","init_setFeature","init_client","init_setFeature","init_dist_es","init_utils","init_dist_es","init_utils","httpRequest","logger","err","init_dist_es","init_dist_es","init_constants","init_dist_es","init_constants","init_constants","init_dist_es","init_constants","value","serialized","init_dist_es","init_constants","i","init_dist_es","HEADER_VALUE_TYPE","init_dist_es","request","init_dist_es","init_constants","request","init_dist_es","init_constants","request","init_dist_es","init_client","init_dist_es","normalizeProvider","init_httpAuthSchemes","a","b","entry","init_dist_es","init_client","init_dist_es","err","init_collect_stream_body","init_command","init_dist_es","logger","request","_","init_constants","commands","Client","command","v","k","s","_","v","k","emitWarningIfUnsupportedVersion","init_emitWarningIfUnsupportedVersion","init_extended_encode_uri_component","getChecksumConfiguration","resolveChecksumRuntimeConfig","init_checksum","init_retry","init_defaultExtensionConfiguration","init_checksum","init_retry","getChecksumConfiguration","resolveChecksumRuntimeConfig","init_extensions","init_defaultExtensionConfiguration","filter","_","init_resolve_path","_","init_dist_es","init_client","init_collect_stream_body","init_command","init_constants","init_emitWarningIfUnsupportedVersion","init_extended_encode_uri_component","init_extensions","init_resolve_path","init_dist_es","init_dist_es","e","k","exports","v","a","i","exports","i","t","exports","val","exports","module","val","exports","module","i","entityName","val","exports","module","exports","module","_","i","val","result","entityName","exports","i","val","exports","module","XMLParser","exports","module","i","attStr","exports","module","a","val","j","L","i","exports","module","XMLParser","init_dist_es","_","val","e","init_protocols","init_dist_es","init_client","init_httpAuthSchemes","init_protocols","request","setFeature","init_dist_es","init_constants","val","init_dist_es","init_constants","request","init_dist_es","init_types","SelectorType","init_dist_es","init_types","init_dist_es","env","init_dist_es","env","init_dist_es","init_dist_es","init_config","env","init_config","init_dist_es","request","init_dist_es","partition","e","init_dist_es","logger","e","import_path","fsPromises","import_path","import_path","map","import_fs","readFile","fsPromises","import_path","swallowError","init_types","init_dist_es","init_types","init_dist_es","e","fromStatic","init_fromStatic","init_dist_es","init_dist_es","init_fromStatic","fromStatic","init_dist_es","init_dist_es","env","w","endpointUrl","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_types","init_dist_es","init_types","init_config","RETRY_MODES","NODEJS_TIMEOUT_ERROR_CODES","init_constants","init_dist_es","init_constants","NODEJS_TIMEOUT_ERROR_CODES","init_dist_es","t","init_constants","init_constants","init_constants","init_config","init_constants","init_config","init_constants","init_types","init_dist_es","init_config","init_constants","init_types","crypto","import_crypto","i","import_crypto","crypto","i","init_dist_es","init_dist_es","init_dist_es","init_util","init_StandardRetryStrategy","init_dist_es","init_util","init_AdaptiveRetryStrategy","init_dist_es","init_StandardRetryStrategy","init_configurations","init_dist_es","env","init_dist_es","import_stream","request","init_dist_es","init_util","request","e","init_dist_es","init_AdaptiveRetryStrategy","init_StandardRetryStrategy","init_configurations","fromEnv","init_fromEnv","init_client","init_dist_es","fromEnv","init_dist_es","init_fromEnv","err","import_buffer","import_http","init_httpRequest","init_dist_es","init_retry","i","init_dist_es","init_httpRequest","init_retry","logger","init_dist_es","Endpoint","env","EndpointMode","env","init_dist_es","logger","logger","e","init_dist_es","init_httpRequest","init_retry","logger","getCredentials","maxRetries","env","profile","err","init_types","dist_es_exports","init_dist_es","init_types","init_httpRequest","init_dist_es","logger","k","v","logger","sdkStreamMixin","e","init_dist_es","i","e","init_client","init_dist_es","request","fs","e","dist_es_exports","init_dist_es","init_dist_es","ENV_CMDS_FULL_URI","ENV_CMDS_RELATIVE_URI","fromContainerMetadata","fromInstanceMetadata","fromHttp","init_constants","createAwsAuthSigv4HttpAuthOption","resolveHttpAuthSchemeConfig","init_dist_es","resolveClientEndpointParameters","commonParams","package_default","import_os","init_dist_es","env","init_dist_es","import_buffer","import_crypto","init_dist_es","import_fs","init_dist_es","init_dist_es","EndpointCache","init_dist_es","ENV_IMDS_DISABLED","init_constants","env","init_dist_es","init_constants","ENV_IMDS_DISABLED","getInstanceMetadataEndpoint","httpRequest","e","init_dist_es","getRuntimeConfig","init_dist_es","emitWarningIfUnsupportedVersion","package_default","init_extensions","init_config","init_isFipsRegion","init_getRealRegion","init_isFipsRegion","init_resolveRegionConfig","init_getRealRegion","init_isFipsRegion","init_regionConfig","init_config","init_resolveRegionConfig","init_dist_es","init_extensions","init_regionConfig","init_dist_es","t","init_dist_es","getRuntimeConfig","resolveClientEndpointParameters","resolveHttpAuthSchemeConfig","init_dist_es","init_dist_es","de_CommandError","throwDefaultError","deserializeMetadata","init_dist_es","b","_","init_dist_es","commonParams","Command","o","init_dist_es","commonParams","Command","o","init_dist_es","commonParams","Command","o","init_dist_es","commonParams","Command","o","init_dist_es","dist_es_exports","init_dist_es","SSOOIDCClient","CreateTokenCommand","init_dist_es","init_constants","init_dist_es","init_constants","import_fs","init_dist_es","fsPromises","init_dist_es","init_constants","e","init_fromStatic","init_dist_es","init_dist_es","init_dist_es","init_fromStatic","createAwsAuthSigv4HttpAuthOption","createSmithyApiNoAuthHttpAuthOption","resolveHttpAuthSchemeConfig","init_httpAuthSchemeProvider","init_dist_es","resolveClientEndpointParameters","commonParams","init_EndpointParameters","package_default","init_package","u","v","w","x","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","_data","ruleSet","init_ruleset","cache","defaultEndpointResolver","init_endpointResolver","init_dist_es","init_ruleset","EndpointCache","ruleSet","getRuntimeConfig","init_runtimeConfig_shared","init_dist_es","init_httpAuthSchemeProvider","init_endpointResolver","defaultEndpointResolver","getRuntimeConfig","init_runtimeConfig","init_package","init_dist_es","init_runtimeConfig_shared","emitWarningIfUnsupportedVersion","package_default","getHttpAuthExtensionConfiguration","resolveHttpAuthRuntimeConfig","init_httpAuthExtensionConfiguration","asPartial","resolveRuntimeExtensions","init_runtimeExtensions","init_dist_es","init_httpAuthExtensionConfiguration","t","getHttpAuthExtensionConfiguration","resolveHttpAuthRuntimeConfig","init_dist_es","init_httpAuthSchemeProvider","init_EndpointParameters","init_runtimeConfig","init_runtimeExtensions","getRuntimeConfig","resolveClientEndpointParameters","resolveHttpAuthSchemeConfig","resolveRuntimeExtensions","init_dist_es","InvalidRequestException","ResourceNotFoundException","init_models_0","init_dist_es","de_CommandError","throwDefaultError","de_InvalidRequestExceptionRes","de_ResourceNotFoundExceptionRes","deserializeMetadata","_ai","init_Aws_restJson1","init_dist_es","init_models_0","b","InvalidRequestException","ResourceNotFoundException","init_dist_es","init_EndpointParameters","init_models_0","init_Aws_restJson1","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","init_Aws_restJson1","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","init_Aws_restJson1","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","init_Aws_restJson1","commonParams","Command","o","commands","init_dist_es","init_commands","init_dist_es","init_dist_es","init_pagination","init_models","init_models_0","init_dist_es","init_commands","init_pagination","init_models","init_dist_es","init_client","init_dist_es","logger","e","SSOClient","GetRoleCredentialsCommand","init_dist_es","logger","init_dist_es","init_types","dist_es_exports","init_dist_es","init_types","init_client","init_dist_es","logger","fromHttp","fromContainerMetadata","fromInstanceMetadata","fromEnv","createAwsAuthSigv4HttpAuthOption","createSmithyApiNoAuthHttpAuthOption","resolveHttpAuthSchemeConfig","init_httpAuthSchemeProvider","init_dist_es","resolveClientEndpointParameters","commonParams","init_EndpointParameters","package_default","init_package","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","_data","ruleSet","init_ruleset","cache","defaultEndpointResolver","init_endpointResolver","init_dist_es","init_ruleset","EndpointCache","ruleSet","getRuntimeConfig","init_runtimeConfig_shared","init_dist_es","init_httpAuthSchemeProvider","init_endpointResolver","defaultEndpointResolver","getRuntimeConfig","init_runtimeConfig","init_package","init_dist_es","init_runtimeConfig_shared","emitWarningIfUnsupportedVersion","package_default","getHttpAuthExtensionConfiguration","resolveHttpAuthRuntimeConfig","init_httpAuthExtensionConfiguration","asPartial","resolveRuntimeExtensions","init_runtimeExtensions","init_dist_es","init_httpAuthExtensionConfiguration","t","getHttpAuthExtensionConfiguration","resolveHttpAuthRuntimeConfig","init_dist_es","init_httpAuthSchemeProvider","init_EndpointParameters","init_runtimeConfig","init_runtimeExtensions","getRuntimeConfig","resolveClientEndpointParameters","resolveHttpAuthSchemeConfig","resolveRuntimeExtensions","init_dist_es","ExpiredTokenException","init_models_0","init_dist_es","de_CommandError","de_ExpiredTokenExceptionRes","deserializeMetadata","throwDefaultError","buildHttpRpcRequest","init_dist_es","init_models_0","ExpiredTokenException","init_dist_es","init_EndpointParameters","init_models_0","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","commonParams","Command","o","init_dist_es","init_EndpointParameters","commonParams","Command","o","init_dist_es","init_EndpointParameters","commonParams","Command","o","init_dist_es","init_EndpointParameters","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","commonParams","Command","o","init_dist_es","init_EndpointParameters","init_models_0","commonParams","Command","o","commands","init_dist_es","init_commands","init_models","init_models_0","init_client","logger","getDefaultRoleAssumer","getDefaultRoleAssumerWithWebIdentity","dist_es_exports","ExpiredTokenException","getDefaultRoleAssumer","getDefaultRoleAssumerWithWebIdentity","init_dist_es","init_commands","init_models","init_client","init_dist_es","logger","getDefaultRoleAssumer","init_client","import_util","init_dist_es","logger","init_dist_es","dist_es_exports","init_dist_es","resolveProcessCredentials","init_resolveProcessCredentials","init_client","fromProcess","isSsoProfile","init_client","fromSSO","init_client","getDefaultRoleAssumerWithWebIdentity","import_fs","init_client","init_dist_es","dist_es_exports","init_dist_es","init_client","fromTokenFile","init_dist_es","init_resolveProcessCredentials","resolveProcessCredentials","isSsoProfile","init_dist_es","dist_es_exports","init_dist_es","init_dist_es","fromEnv","fromSSO","fromIni","fromProcess","fromTokenFile","init_dist_es","init_dist_es","env","env","i","init_dist_es","LRUCache","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","AttributeValue","deserializeMetadata","deserializeMetadata","deserializeMetadata","deserializeMetadata","deserializeMetadata","deserializeMetadata","throwDefaultError","deserializeMetadata","e","_","e","_","_","_","e","_","_","_","e","_","e","_","_","_","_","e","e","_","_","_","_","e","deserializeMetadata","throwDefaultError","Command","o","init_dist_es","init_dist_es","init_dist_es","init_dist_es","init_dist_es","H","I","J","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","_data","ruleSet","cache","EndpointCache","defaultEndpointResolver","ruleSet","getRuntimeConfig","defaultEndpointResolver","init_dist_es","getRuntimeConfig","emitWarningIfUnsupportedVersion","init_dist_es","getHttpAuthExtensionConfiguration","resolveHttpAuthRuntimeConfig","asPartial","t","resolveRuntimeExtensions","getHttpAuthExtensionConfiguration","resolveHttpAuthRuntimeConfig","getRuntimeConfig","resolveRuntimeExtensions","init_dist_es","Command","o","init_dist_es","Command","o","init_dist_es","Command","o","init_dist_es","Command","o","init_dist_es","Command","o"]}