diff --git a/.github/workflows/acceptance-tests.yml b/.github/workflows/acceptance-tests.yml
new file mode 100644
index 0000000..88a6b35
--- /dev/null
+++ b/.github/workflows/acceptance-tests.yml
@@ -0,0 +1,124 @@
+name: 'Run Acceptance Tests'
+
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - main
+ pull_request:
+ branches:
+ - main
+
+jobs:
+ assume-nonlive-fail:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-node@v3
+ with:
+ node-version: 16
+ cache: 'yarn'
+ - run: yarn
+ - run: yarn build
+ - uses: ./
+ id: assume_doesnotexist
+ continue-on-error: true
+ with:
+ role: arn:aws:iam::000000000000:role/doesnotexist
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ SAML_TO_NONLIVE: true
+ SAML_TO_API_KEY: ${{ secrets.NONLIVE_API_KEY }}
+ - name: Assume Assertion (Success == Skipped)
+ if: job.steps.assume_doesnotexist.status == success()
+ run: exit 1
+ assume-fail:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-node@v3
+ with:
+ node-version: 16
+ cache: 'yarn'
+ - run: yarn
+ - run: yarn build
+ - uses: ./
+ id: assume_doesnotexist
+ continue-on-error: true
+ with:
+ role: arn:aws:iam::000000000000:role/doesnotexist
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - name: Assume Assertion (Success == Skipped)
+ if: job.steps.assume_doesnotexist.status == success()
+ run: exit 1
+
+ assume-nonlive:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-node@v3
+ with:
+ node-version: 16
+ cache: 'yarn'
+ - run: yarn
+ - run: yarn build
+ - uses: ./
+ name: Assume test-assume-aws-role-action-nonlive using saml-to/saml-to/saml-to.yml
+ with:
+ role: arn:aws:iam::580360238192:role/test-assume-aws-role-action-nonlive
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ SAML_TO_NONLIVE: true
+ SAML_TO_API_KEY: ${{ secrets.NONLIVE_API_KEY }}
+ - uses: ./
+ name: Assume readonly-nonlive using slyo-org-01/saml-to/saml-to.yml
+ with:
+ role: arn:aws:iam::656716386475:role/readonly-nonlive
+ configOwner: slyo-org-01
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ SAML_TO_NONLIVE: true
+ SAML_TO_API_KEY: ${{ secrets.NONLIVE_API_KEY }}
+ - uses: ./
+ name: Assume readonly using slyo-org-01/saml-to/saml-to.yml (with provider aws-nonlive)
+ with:
+ role: arn:aws:iam::656716386475:role/readonly
+ configOwner: slyo-org-01
+ provider: aws-nonlive
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ SAML_TO_NONLIVE: true
+ SAML_TO_API_KEY: ${{ secrets.NONLIVE_API_KEY }}
+
+ assume:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - uses: actions/setup-node@v3
+ with:
+ node-version: 16
+ cache: 'yarn'
+ - run: yarn
+ - run: yarn build
+ - uses: ./
+ name: Assume test-assume-aws-role-action using saml-to/saml-to/saml-to.yml
+ with:
+ role: arn:aws:iam::580360238192:role/test-assume-aws-role-action
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - uses: ./
+ name: Assume readonly-live using slyo-org-01/saml-to/saml-to.yml
+ with:
+ role: arn:aws:iam::656716386475:role/readonly-live
+ configOwner: slyo-org-01
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ - uses: ./
+ name: Assume readonly using slyo-org-01/saml-to/saml-to.yml (with provider aws)
+ with:
+ role: arn:aws:iam::656716386475:role/readonly
+ configOwner: slyo-org-01
+ provider: aws
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.openapis b/.openapis
index 51b0c7d..8bef102 100644
--- a/.openapis
+++ b/.openapis
@@ -6,5 +6,5 @@
# This file is *safe* to add to source control and will increase the speed of builds
---
- serviceName: github-sls-rest-api
- version: 1.0.51-0
+ version: 1.0.58-7
diff --git a/action.yml b/action.yml
index d96479a..403f52c 100644
--- a/action.yml
+++ b/action.yml
@@ -14,6 +14,9 @@ inputs:
provider:
description: The provider to use in saml-to.yml
required: false
+ configOwner:
+ description: Specify a different GitHub Org/User that hosts the saml-to.yml, defaults to this repository's owner.
+ required: false
outputs:
region:
description: The AWS region
diff --git a/api/github-sls-rest-api/api.ts b/api/github-sls-rest-api/api.ts
index d87d063..83bde60 100644
--- a/api/github-sls-rest-api/api.ts
+++ b/api/github-sls-rest-api/api.ts
@@ -4,7 +4,7 @@
* github-sls-rest-api
* To generate a JWT token, go to the JWT Token Generator
*
- * The version of the OpenAPI document: 1.0.51-0
+ * The version of the OpenAPI document: 1.0.58-7
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
@@ -396,6 +396,49 @@ export interface GithubSlsRestApiHealthResponse {
*/
'name': string;
}
+/**
+ *
+ * @export
+ * @interface GithubSlsRestApiIdentityResponse
+ */
+export interface GithubSlsRestApiIdentityResponse {
+ /**
+ *
+ * @type {string}
+ * @memberof GithubSlsRestApiIdentityResponse
+ */
+ 'type': string;
+ /**
+ *
+ * @type {string}
+ * @memberof GithubSlsRestApiIdentityResponse
+ */
+ 'name': string;
+ /**
+ *
+ * @type {number}
+ * @memberof GithubSlsRestApiIdentityResponse
+ */
+ 'id': number;
+ /**
+ *
+ * @type {string}
+ * @memberof GithubSlsRestApiIdentityResponse
+ */
+ 'fullName': string;
+ /**
+ *
+ * @type {string}
+ * @memberof GithubSlsRestApiIdentityResponse
+ */
+ 'email': string;
+ /**
+ *
+ * @type {string}
+ * @memberof GithubSlsRestApiIdentityResponse
+ */
+ 'clientId': string;
+}
/**
*
* @export
@@ -1391,10 +1434,11 @@ export const IDPApiAxiosParamCreator = function (configuration?: Configuration)
* @param {string} role
* @param {string} [provider]
* @param {string} [commitSha]
+ * @param {string} [configOwner]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- assumeRoleForRepo: async (org: string, repo: string, role: string, provider?: string, commitSha?: string, options: AxiosRequestConfig = {}): Promise => {
+ assumeRoleForRepo: async (org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options: AxiosRequestConfig = {}): Promise => {
// verify required parameter 'org' is not null or undefined
assertParamExists('assumeRoleForRepo', 'org', org)
// verify required parameter 'repo' is not null or undefined
@@ -1428,6 +1472,10 @@ export const IDPApiAxiosParamCreator = function (configuration?: Configuration)
localVarQueryParameter['commitSha'] = commitSha;
}
+ if (configOwner !== undefined) {
+ localVarQueryParameter['configOwner'] = configOwner;
+ }
+
setSearchParams(localVarUrlObj, localVarQueryParameter);
@@ -1478,6 +1526,39 @@ export const IDPApiAxiosParamCreator = function (configuration?: Configuration)
options: localVarRequestOptions,
};
},
+ /**
+ *
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ getIdentity: async (options: AxiosRequestConfig = {}): Promise => {
+ const localVarPath = `/api/v1/idp/me`;
+ // use dummy base URL string because the URL constructor only accepts absolute URLs.
+ const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
+ let baseOptions;
+ if (configuration) {
+ baseOptions = configuration.baseOptions;
+ }
+
+ const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};
+ const localVarHeaderParameter = {} as any;
+ const localVarQueryParameter = {} as any;
+
+ // authentication jwt required
+ // http bearer authentication required
+ await setBearerAuthToObject(localVarHeaderParameter, configuration)
+
+
+
+ setSearchParams(localVarUrlObj, localVarQueryParameter);
+ let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};
+ localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};
+
+ return {
+ url: toPathString(localVarUrlObj),
+ options: localVarRequestOptions,
+ };
+ },
/**
*
* @param {string} org
@@ -1857,11 +1938,12 @@ export const IDPApiFp = function(configuration?: Configuration) {
* @param {string} role
* @param {string} [provider]
* @param {string} [commitSha]
+ * @param {string} [configOwner]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- async assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
- const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRoleForRepo(org, repo, role, provider, commitSha, options);
+ async assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRoleForRepo(org, repo, role, provider, commitSha, configOwner, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
/**
@@ -1875,6 +1957,15 @@ export const IDPApiFp = function(configuration?: Configuration) {
const localVarAxiosArgs = await localVarAxiosParamCreator.encrypt(org, githubSlsRestApiEncryptRequest, options);
return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
},
+ /**
+ *
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ async getIdentity(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {
+ const localVarAxiosArgs = await localVarAxiosParamCreator.getIdentity(options);
+ return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);
+ },
/**
*
* @param {string} org
@@ -2003,11 +2094,12 @@ export const IDPApiFactory = function (configuration?: Configuration, basePath?:
* @param {string} role
* @param {string} [provider]
* @param {string} [commitSha]
+ * @param {string} [configOwner]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
*/
- assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, options?: any): AxiosPromise {
- return localVarFp.assumeRoleForRepo(org, repo, role, provider, commitSha, options).then((request) => request(axios, basePath));
+ assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options?: any): AxiosPromise {
+ return localVarFp.assumeRoleForRepo(org, repo, role, provider, commitSha, configOwner, options).then((request) => request(axios, basePath));
},
/**
*
@@ -2019,6 +2111,14 @@ export const IDPApiFactory = function (configuration?: Configuration, basePath?:
encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: any): AxiosPromise {
return localVarFp.encrypt(org, githubSlsRestApiEncryptRequest, options).then((request) => request(axios, basePath));
},
+ /**
+ *
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ */
+ getIdentity(options?: any): AxiosPromise {
+ return localVarFp.getIdentity(options).then((request) => request(axios, basePath));
+ },
/**
*
* @param {string} org
@@ -2143,12 +2243,13 @@ export class IDPApi extends BaseAPI {
* @param {string} role
* @param {string} [provider]
* @param {string} [commitSha]
+ * @param {string} [configOwner]
* @param {*} [options] Override http request option.
* @throws {RequiredError}
* @memberof IDPApi
*/
- public assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, options?: AxiosRequestConfig) {
- return IDPApiFp(this.configuration).assumeRoleForRepo(org, repo, role, provider, commitSha, options).then((request) => request(this.axios, this.basePath));
+ public assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options?: AxiosRequestConfig) {
+ return IDPApiFp(this.configuration).assumeRoleForRepo(org, repo, role, provider, commitSha, configOwner, options).then((request) => request(this.axios, this.basePath));
}
/**
@@ -2163,6 +2264,16 @@ export class IDPApi extends BaseAPI {
return IDPApiFp(this.configuration).encrypt(org, githubSlsRestApiEncryptRequest, options).then((request) => request(this.axios, this.basePath));
}
+ /**
+ *
+ * @param {*} [options] Override http request option.
+ * @throws {RequiredError}
+ * @memberof IDPApi
+ */
+ public getIdentity(options?: AxiosRequestConfig) {
+ return IDPApiFp(this.configuration).getIdentity(options).then((request) => request(this.axios, this.basePath));
+ }
+
/**
*
* @param {string} org
diff --git a/api/github-sls-rest-api/base.ts b/api/github-sls-rest-api/base.ts
index 9bcfb0d..9e0541f 100644
--- a/api/github-sls-rest-api/base.ts
+++ b/api/github-sls-rest-api/base.ts
@@ -4,7 +4,7 @@
* github-sls-rest-api
* To generate a JWT token, go to the JWT Token Generator
*
- * The version of the OpenAPI document: 1.0.51-0
+ * The version of the OpenAPI document: 1.0.58-7
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
diff --git a/api/github-sls-rest-api/common.ts b/api/github-sls-rest-api/common.ts
index a8087ae..c234528 100644
--- a/api/github-sls-rest-api/common.ts
+++ b/api/github-sls-rest-api/common.ts
@@ -4,7 +4,7 @@
* github-sls-rest-api
* To generate a JWT token, go to the JWT Token Generator
*
- * The version of the OpenAPI document: 1.0.51-0
+ * The version of the OpenAPI document: 1.0.58-7
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
diff --git a/api/github-sls-rest-api/configuration.ts b/api/github-sls-rest-api/configuration.ts
index 68fa067..118614d 100644
--- a/api/github-sls-rest-api/configuration.ts
+++ b/api/github-sls-rest-api/configuration.ts
@@ -4,7 +4,7 @@
* github-sls-rest-api
* To generate a JWT token, go to the JWT Token Generator
*
- * The version of the OpenAPI document: 1.0.51-0
+ * The version of the OpenAPI document: 1.0.58-7
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
diff --git a/api/github-sls-rest-api/index.ts b/api/github-sls-rest-api/index.ts
index c0c22d4..bf9741e 100644
--- a/api/github-sls-rest-api/index.ts
+++ b/api/github-sls-rest-api/index.ts
@@ -4,7 +4,7 @@
* github-sls-rest-api
* To generate a JWT token, go to the JWT Token Generator
*
- * The version of the OpenAPI document: 1.0.51-0
+ * The version of the OpenAPI document: 1.0.58-7
*
*
* NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
diff --git a/api/github-sls-rest-api/version.json b/api/github-sls-rest-api/version.json
index 75446ce..ab3bdb3 100644
--- a/api/github-sls-rest-api/version.json
+++ b/api/github-sls-rest-api/version.json
@@ -1 +1 @@
-{"version":"1.0.51-0"}
\ No newline at end of file
+{"version":"1.0.58-7"}
\ No newline at end of file
diff --git a/dist/main.js b/dist/main.js
index 8303714..c332dae 100644
--- a/dist/main.js
+++ b/dist/main.js
@@ -1,3 +1,3 @@
/*! For license information please see main.js.LICENSE.txt */
-(()=>{var e={5265:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.issue=t.issueCommand=void 0;const s=i(r(2037)),a=r(4570);function u(e,t,r){const n=new c(e,t,r);process.stdout.write(n.toString()+s.EOL)}t.issueCommand=u,t.issue=function(e,t=""){u(e,{},t)};class c{constructor(e,t,r){e||(e="missing.command"),this.command=e,this.properties=t,this.message=r}toString(){let e="::"+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(const n in this.properties)if(this.properties.hasOwnProperty(n)){const o=this.properties[n];o&&(r?r=!1:e+=",",e+=`${n}=${t=o,a.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+=`::${function(e){return a.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}(this.message)}`,e}}},2225:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t},s=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}u((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.getIDToken=t.getState=t.saveState=t.group=t.endGroup=t.startGroup=t.info=t.notice=t.warning=t.error=t.debug=t.isDebug=t.setFailed=t.setCommandEcho=t.setOutput=t.getBooleanInput=t.getMultilineInput=t.getInput=t.addPath=t.setSecret=t.exportVariable=t.ExitCode=void 0;const a=r(5265),u=r(3108),c=r(4570),l=i(r(2037)),d=i(r(1017)),f=r(1526);var p;function h(e,t){const r=process.env[`INPUT_${e.replace(/ /g,"_").toUpperCase()}`]||"";if(t&&t.required&&!r)throw new Error(`Input required and not supplied: ${e}`);return t&&!1===t.trimWhitespace?r:r.trim()}function m(e,t={}){a.issueCommand("error",c.toCommandProperties(t),e instanceof Error?e.toString():e)}function v(e){a.issue("group",e)}function g(){a.issue("endgroup")}!function(e){e[e.Success=0]="Success",e[e.Failure=1]="Failure"}(p=t.ExitCode||(t.ExitCode={})),t.exportVariable=function(e,t){const r=c.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_",n=`${e}<<${t}${l.EOL}${r}${l.EOL}${t}`;u.issueCommand("ENV",n)}else a.issueCommand("set-env",{name:e},r)},t.setSecret=function(e){a.issueCommand("add-mask",{},e)},t.addPath=function(e){process.env.GITHUB_PATH?u.issueCommand("PATH",e):a.issueCommand("add-path",{},e),process.env.PATH=`${e}${d.delimiter}${process.env.PATH}`},t.getInput=h,t.getMultilineInput=function(e,t){return h(e,t).split("\n").filter((e=>""!==e))},t.getBooleanInput=function(e,t){const r=h(e,t);if(["true","True","TRUE"].includes(r))return!0;if(["false","False","FALSE"].includes(r))return!1;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\nSupport boolean input list: \`true | True | TRUE | false | False | FALSE\``)},t.setOutput=function(e,t){process.stdout.write(l.EOL),a.issueCommand("set-output",{name:e},t)},t.setCommandEcho=function(e){a.issue("echo",e?"on":"off")},t.setFailed=function(e){process.exitCode=p.Failure,m(e)},t.isDebug=function(){return"1"===process.env.RUNNER_DEBUG},t.debug=function(e){a.issueCommand("debug",{},e)},t.error=m,t.warning=function(e,t={}){a.issueCommand("warning",c.toCommandProperties(t),e instanceof Error?e.toString():e)},t.notice=function(e,t={}){a.issueCommand("notice",c.toCommandProperties(t),e instanceof Error?e.toString():e)},t.info=function(e){process.stdout.write(e+l.EOL)},t.startGroup=v,t.endGroup=g,t.group=function(e,t){return s(this,void 0,void 0,(function*(){let r;v(e);try{r=yield t()}finally{g()}return r}))},t.saveState=function(e,t){a.issueCommand("save-state",{name:e},t)},t.getState=function(e){return process.env[`STATE_${e}`]||""},t.getIDToken=function(e){return s(this,void 0,void 0,(function*(){return yield f.OidcClient.getIDToken(e)}))}},3108:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.issueCommand=void 0;const s=i(r(7147)),a=i(r(2037)),u=r(4570);t.issueCommand=function(e,t){const r=process.env[`GITHUB_${e}`];if(!r)throw new Error(`Unable to find environment variable for file command ${e}`);if(!s.existsSync(r))throw new Error(`Missing file at path: ${r}`);s.appendFileSync(r,`${u.toCommandValue(t)}${a.EOL}`,{encoding:"utf8"})}},1526:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}u((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.OidcClient=void 0;const o=r(9300),i=r(3885),s=r(2225);class a{static createHttpClient(e=!0,t=10){const r={allowRetries:e,maxRetries:t};return new o.HttpClient("actions/oidc-client",[new i.BearerCredentialHandler(a.getRequestToken())],r)}static getRequestToken(){const e=process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN;if(!e)throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable");return e}static getIDTokenUrl(){const e=process.env.ACTIONS_ID_TOKEN_REQUEST_URL;if(!e)throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable");return e}static getCall(e){var t;return n(this,void 0,void 0,(function*(){const r=a.createHttpClient(),n=yield r.getJson(e).catch((e=>{throw new Error(`Failed to get ID Token. \n \n Error Code : ${e.statusCode}\n \n Error Message: ${e.result.message}`)})),o=null===(t=n.result)||void 0===t?void 0:t.value;if(!o)throw new Error("Response json body do not have ID Token field");return o}))}static getIDToken(e){return n(this,void 0,void 0,(function*(){try{let t=a.getIDTokenUrl();e&&(t=`${t}&audience=${encodeURIComponent(e)}`),s.debug(`ID token url is ${t}`);const r=yield a.getCall(t);return s.setSecret(r),r}catch(e){throw new Error(`Error message: ${e.message}`)}}))}}t.OidcClient=a},4570:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toCommandProperties=t.toCommandValue=void 0,t.toCommandValue=function(e){return null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e)},t.toCommandProperties=function(e){return Object.keys(e).length?{title:e.title,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}:{}}},3885:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BasicCredentialHandler=class{constructor(e,t){this.username=e,this.password=t}prepareRequest(e){e.headers.Authorization="Basic "+Buffer.from(this.username+":"+this.password).toString("base64")}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}},t.BearerCredentialHandler=class{constructor(e){this.token=e}prepareRequest(e){e.headers.Authorization="Bearer "+this.token}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}},t.PersonalAccessTokenCredentialHandler=class{constructor(e){this.token=e}prepareRequest(e){e.headers.Authorization="Basic "+Buffer.from("PAT:"+this.token).toString("base64")}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}}},9300:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(3685),o=r(5687),i=r(1686);let s;var a,u,c;!function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"}(a=t.HttpCodes||(t.HttpCodes={})),function(e){e.Accept="accept",e.ContentType="content-type"}(u=t.Headers||(t.Headers={})),function(e){e.ApplicationJson="application/json"}(c=t.MediaTypes||(t.MediaTypes={})),t.getProxyUrl=function(e){let t=i.getProxyUrl(new URL(e));return t?t.href:""};const l=[a.MovedPermanently,a.ResourceMoved,a.SeeOther,a.TemporaryRedirect,a.PermanentRedirect],d=[a.BadGateway,a.ServiceUnavailable,a.GatewayTimeout],f=["OPTIONS","GET","DELETE","HEAD"];class p extends Error{constructor(e,t){super(e),this.name="HttpClientError",this.statusCode=t,Object.setPrototypeOf(this,p.prototype)}}t.HttpClientError=p;class h{constructor(e){this.message=e}readBody(){return new Promise((async(e,t)=>{let r=Buffer.alloc(0);this.message.on("data",(e=>{r=Buffer.concat([r,e])})),this.message.on("end",(()=>{e(r.toString())}))}))}}t.HttpClientResponse=h,t.isHttps=function(e){return"https:"===new URL(e).protocol};class m{constructor(e,t,r){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=e,this.handlers=t||[],this.requestOptions=r,r&&(null!=r.ignoreSslError&&(this._ignoreSslError=r.ignoreSslError),this._socketTimeout=r.socketTimeout,null!=r.allowRedirects&&(this._allowRedirects=r.allowRedirects),null!=r.allowRedirectDowngrade&&(this._allowRedirectDowngrade=r.allowRedirectDowngrade),null!=r.maxRedirects&&(this._maxRedirects=Math.max(r.maxRedirects,0)),null!=r.keepAlive&&(this._keepAlive=r.keepAlive),null!=r.allowRetries&&(this._allowRetries=r.allowRetries),null!=r.maxRetries&&(this._maxRetries=r.maxRetries))}options(e,t){return this.request("OPTIONS",e,null,t||{})}get(e,t){return this.request("GET",e,null,t||{})}del(e,t){return this.request("DELETE",e,null,t||{})}post(e,t,r){return this.request("POST",e,t,r||{})}patch(e,t,r){return this.request("PATCH",e,t,r||{})}put(e,t,r){return this.request("PUT",e,t,r||{})}head(e,t){return this.request("HEAD",e,null,t||{})}sendStream(e,t,r,n){return this.request(e,t,r,n)}async getJson(e,t={}){t[u.Accept]=this._getExistingOrDefaultHeader(t,u.Accept,c.ApplicationJson);let r=await this.get(e,t);return this._processResponse(r,this.requestOptions)}async postJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[u.Accept]=this._getExistingOrDefaultHeader(r,u.Accept,c.ApplicationJson),r[u.ContentType]=this._getExistingOrDefaultHeader(r,u.ContentType,c.ApplicationJson);let o=await this.post(e,n,r);return this._processResponse(o,this.requestOptions)}async putJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[u.Accept]=this._getExistingOrDefaultHeader(r,u.Accept,c.ApplicationJson),r[u.ContentType]=this._getExistingOrDefaultHeader(r,u.ContentType,c.ApplicationJson);let o=await this.put(e,n,r);return this._processResponse(o,this.requestOptions)}async patchJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[u.Accept]=this._getExistingOrDefaultHeader(r,u.Accept,c.ApplicationJson),r[u.ContentType]=this._getExistingOrDefaultHeader(r,u.ContentType,c.ApplicationJson);let o=await this.patch(e,n,r);return this._processResponse(o,this.requestOptions)}async request(e,t,r,n){if(this._disposed)throw new Error("Client has already been disposed.");let o,i=new URL(t),s=this._prepareRequest(e,i,n),u=this._allowRetries&&-1!=f.indexOf(e)?this._maxRetries+1:1,c=0;for(;c0;){const a=o.message.headers.location;if(!a)break;let u=new URL(a);if("https:"==i.protocol&&i.protocol!=u.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(await o.readBody(),u.hostname!==i.hostname)for(let e in n)"authorization"===e.toLowerCase()&&delete n[e];s=this._prepareRequest(e,u,n),o=await this.requestRaw(s,r),t--}if(-1==d.indexOf(o.message.statusCode))return o;c+=1,c{this.requestRawWithCallback(e,t,(function(e,t){e&&n(e),r(t)}))}))}requestRawWithCallback(e,t,r){let n;"string"==typeof t&&(e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8"));let o=!1,i=(e,t)=>{o||(o=!0,r(e,t))},s=e.httpModule.request(e.options,(e=>{let t=new h(e);i(null,t)}));s.on("socket",(e=>{n=e})),s.setTimeout(this._socketTimeout||18e4,(()=>{n&&n.end(),i(new Error("Request timeout: "+e.options.path),null)})),s.on("error",(function(e){i(e,null)})),t&&"string"==typeof t&&s.write(t,"utf8"),t&&"string"!=typeof t?(t.on("close",(function(){s.end()})),t.pipe(s)):s.end()}getAgent(e){let t=new URL(e);return this._getAgent(t)}_prepareRequest(e,t,r){const i={};i.parsedUrl=t;const s="https:"===i.parsedUrl.protocol;i.httpModule=s?o:n;const a=s?443:80;return i.options={},i.options.host=i.parsedUrl.hostname,i.options.port=i.parsedUrl.port?parseInt(i.parsedUrl.port):a,i.options.path=(i.parsedUrl.pathname||"")+(i.parsedUrl.search||""),i.options.method=e,i.options.headers=this._mergeHeaders(r),null!=this.userAgent&&(i.options.headers["user-agent"]=this.userAgent),i.options.agent=this._getAgent(i.parsedUrl),this.handlers&&this.handlers.forEach((e=>{e.prepareRequest(i.options)})),i}_mergeHeaders(e){const t=e=>Object.keys(e).reduce(((t,r)=>(t[r.toLowerCase()]=e[r],t)),{});return this.requestOptions&&this.requestOptions.headers?Object.assign({},t(this.requestOptions.headers),t(e)):t(e||{})}_getExistingOrDefaultHeader(e,t,r){let n;var o;return this.requestOptions&&this.requestOptions.headers&&(n=(o=this.requestOptions.headers,Object.keys(o).reduce(((e,t)=>(e[t.toLowerCase()]=o[t],e)),{}))[t]),e[t]||n||r}_getAgent(e){let t,a=i.getProxyUrl(e),u=a&&a.hostname;if(this._keepAlive&&u&&(t=this._proxyAgent),this._keepAlive&&!u&&(t=this._agent),t)return t;const c="https:"===e.protocol;let l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||n.globalAgent.maxSockets),u){s||(s=r(6149));const e={maxSockets:l,keepAlive:this._keepAlive,proxy:{...(a.username||a.password)&&{proxyAuth:`${a.username}:${a.password}`},host:a.hostname,port:a.port}};let n;const o="https:"===a.protocol;n=c?o?s.httpsOverHttps:s.httpsOverHttp:o?s.httpOverHttps:s.httpOverHttp,t=n(e),this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:l};t=c?new o.Agent(e):new n.Agent(e),this._agent=t}return t||(t=c?o.globalAgent:n.globalAgent),c&&this._ignoreSslError&&(t.options=Object.assign(t.options||{},{rejectUnauthorized:!1})),t}_performExponentialBackoff(e){e=Math.min(10,e);const t=5*Math.pow(2,e);return new Promise((e=>setTimeout((()=>e()),t)))}static dateTimeDeserializer(e,t){if("string"==typeof t){let e=new Date(t);if(!isNaN(e.valueOf()))return e}return t}async _processResponse(e,t){return new Promise((async(r,n)=>{const o=e.message.statusCode,i={statusCode:o,result:null,headers:{}};let s,u;o==a.NotFound&&r(i);try{u=await e.readBody(),u&&u.length>0&&(s=t&&t.deserializeDates?JSON.parse(u,m.dateTimeDeserializer):JSON.parse(u),i.result=s),i.headers=e.message.headers}catch(e){}if(o>299){let e;e=s&&s.message?s.message:u&&u.length>0?u:"Failed request: ("+o+")";let t=new p(e,o);t.result=i.result,n(t)}else r(i)}))}}t.HttpClient=m},1686:(e,t)=>{"use strict";function r(e){if(!e.hostname)return!1;let t,r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;e.port?t=Number(e.port):"http:"===e.protocol?t=80:"https:"===e.protocol&&(t=443);let n=[e.hostname.toUpperCase()];"number"==typeof t&&n.push(`${n[0]}:${t}`);for(let e of r.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e)))if(n.some((t=>t===e)))return!0;return!1}Object.defineProperty(t,"__esModule",{value:!0}),t.getProxyUrl=function(e){let t,n,o="https:"===e.protocol;return r(e)||(n=o?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY,n&&(t=new URL(n))),t},t.checkBypass=r},246:(e,t,r)=>{"use strict";r.r(t),r.d(t,{AssumeRoleCommand:()=>Xt,AssumeRoleRequest:()=>Me,AssumeRoleResponse:()=>Ue,AssumeRoleWithSAMLCommand:()=>Zt,AssumeRoleWithSAMLRequest:()=>Ve,AssumeRoleWithSAMLResponse:()=>Ge,AssumeRoleWithWebIdentityCommand:()=>Qt,AssumeRoleWithWebIdentityRequest:()=>Je,AssumeRoleWithWebIdentityResponse:()=>Ye,AssumedRoleUser:()=>De,Credentials:()=>je,DecodeAuthorizationMessageCommand:()=>er,DecodeAuthorizationMessageRequest:()=>Ze,DecodeAuthorizationMessageResponse:()=>Qe,ExpiredTokenException:()=>Be,FederatedUser:()=>st,GetAccessKeyInfoCommand:()=>tr,GetAccessKeyInfoRequest:()=>tt,GetAccessKeyInfoResponse:()=>rt,GetCallerIdentityCommand:()=>rr,GetCallerIdentityRequest:()=>nt,GetCallerIdentityResponse:()=>ot,GetFederationTokenCommand:()=>nr,GetFederationTokenRequest:()=>it,GetFederationTokenResponse:()=>at,GetSessionTokenCommand:()=>or,GetSessionTokenRequest:()=>ut,GetSessionTokenResponse:()=>ct,IDPCommunicationErrorException:()=>Xe,IDPRejectedClaimException:()=>Ke,InvalidAuthorizationMessageException:()=>et,InvalidIdentityTokenException:()=>We,MalformedPolicyDocumentException:()=>ze,PackedPolicyTooLargeException:()=>He,PolicyDescriptorType:()=>Le,RegionDisabledException:()=>$e,STS:()=>wi,STSClient:()=>bi,Tag:()=>Fe,decorateDefaultCredentialProvider:()=>Si,getDefaultRoleAssumer:()=>Ei,getDefaultRoleAssumerWithWebIdentity:()=>Ai});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var i=function(){return i=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&o[o.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function l(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s}function d(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o-1&&delete e.headers[i]}}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}return e},J=function(){function e(e){var t=e.applyChecksum,r=e.credentials,n=e.region,o=e.service,i=e.sha256,s=e.uriEscapePath,a=void 0===s||s;this.service=o,this.sha256=i,this.uriEscapePath=a,this.applyChecksum="boolean"!=typeof t||t,this.regionProvider=function(e){if("string"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e}(n),this.credentialProvider=function(e){if("object"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e}(r)}return e.prototype.presign=function(e,t){return void 0===t&&(t={}),a(this,void 0,void 0,(function(){var r,n,o,s,a,l,d,f,p,h,m,v,g,y,b,w,E,A,S,T,x,O,P,_;return u(this,(function(u){switch(u.label){case 0:return r=t.signingDate,n=void 0===r?new Date:r,o=t.expiresIn,s=void 0===o?3600:o,a=t.unsignableHeaders,l=t.unhoistableHeaders,d=t.signableHeaders,f=t.signingRegion,p=t.signingService,[4,this.credentialProvider()];case 1:return h=u.sent(),null==f?[3,2]:(v=f,[3,4]);case 2:return[4,this.regionProvider()];case 3:v=u.sent(),u.label=4;case 4:return m=v,g=Y(n),y=g.longDate,b=g.shortDate,s>604800?[2,Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future")]:(w=j(b,m,null!=p?p:this.service),E=function(e,t){var r,n,o;void 0===t&&(t={});var s="function"==typeof e.clone?e.clone():G(e),a=s.headers,u=s.query,l=void 0===u?{}:u;try{for(var d=c(Object.keys(a)),f=d.next();!f.done;f=d.next()){var p=f.value,h=p.toLowerCase();"x-amz-"!==h.substr(0,6)||(null===(o=t.unhoistableHeaders)||void 0===o?void 0:o.has(h))||(l[p]=a[p],delete a[p])}}catch(e){r={error:e}}finally{try{f&&!f.done&&(n=d.return)&&n.call(d)}finally{if(r)throw r.error}}return i(i({},e),{headers:a,query:l})}(W(e),{unhoistableHeaders:l}),h.sessionToken&&(E.query[R]=h.sessionToken),E.query["X-Amz-Algorithm"]="AWS4-HMAC-SHA256",E.query["X-Amz-Credential"]=h.accessKeyId+"/"+w,E.query["X-Amz-Date"]=y,E.query["X-Amz-Expires"]=s.toString(10),A=B(E,a,d),E.query["X-Amz-SignedHeaders"]=X(A),S=E.query,T=C,x=this.getSignature,O=[y,w,this.getSigningKey(h,m,b,p)],P=this.createCanonicalRequest,_=[E,A],[4,V(e,this.sha256)]);case 5:return[4,x.apply(this,O.concat([P.apply(this,_.concat([u.sent()]))]))];case 6:return S[T]=u.sent(),[2,E]}}))}))},e.prototype.sign=function(e,t){return a(this,void 0,void 0,(function(){return u(this,(function(r){return"string"==typeof e?[2,this.signString(e,t)]:e.headers&&e.payload?[2,this.signEvent(e,t)]:[2,this.signRequest(e,t)]}))}))},e.prototype.signEvent=function(e,t){var r=e.headers,n=e.payload,o=t.signingDate,i=void 0===o?new Date:o,s=t.priorSignature,c=t.signingRegion,l=t.signingService;return a(this,void 0,void 0,(function(){var e,t,o,a,d,f,p,h,m,v,g;return u(this,(function(u){switch(u.label){case 0:return null==c?[3,1]:(t=c,[3,3]);case 1:return[4,this.regionProvider()];case 2:t=u.sent(),u.label=3;case 3:return e=t,o=Y(i),a=o.shortDate,d=o.longDate,f=j(a,e,null!=l?l:this.service),[4,V({headers:{},body:n},this.sha256)];case 4:return p=u.sent(),(h=new this.sha256).update(r),v=S,[4,h.digest()];case 5:return m=v.apply(void 0,[u.sent()]),g=[D,d,f,s,m,p].join("\n"),[2,this.signString(g,{signingDate:i,signingRegion:e,signingService:l})]}}))}))},e.prototype.signString=function(e,t){var r=void 0===t?{}:t,n=r.signingDate,o=void 0===n?new Date:n,i=r.signingRegion,s=r.signingService;return a(this,void 0,void 0,(function(){var t,r,n,a,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:return[4,this.credentialProvider()];case 1:return t=u.sent(),null==i?[3,2]:(n=i,[3,4]);case 2:return[4,this.regionProvider()];case 3:n=u.sent(),u.label=4;case 4:return r=n,a=Y(o).shortDate,d=(l=this.sha256).bind,[4,this.getSigningKey(t,r,a,s)];case 5:return(c=new(d.apply(l,[void 0,u.sent()]))).update(e),f=S,[4,c.digest()];case 6:return[2,f.apply(void 0,[u.sent()])]}}))}))},e.prototype.signRequest=function(e,t){var r=void 0===t?{}:t,n=r.signingDate,o=void 0===n?new Date:n,i=r.signableHeaders,s=r.unsignableHeaders,l=r.signingRegion,d=r.signingService;return a(this,void 0,void 0,(function(){var t,r,n,a,f,p,h,m,v,g,y;return u(this,(function(u){switch(u.label){case 0:return[4,this.credentialProvider()];case 1:return t=u.sent(),null==l?[3,2]:(n=l,[3,4]);case 2:return[4,this.regionProvider()];case 3:n=u.sent(),u.label=4;case 4:return r=n,a=W(e),f=Y(o),p=f.longDate,h=f.shortDate,m=j(h,r,null!=d?d:this.service),a.headers[x]=p,t.sessionToken&&(a.headers[k]=t.sessionToken),[4,V(a,this.sha256)];case 5:return v=u.sent(),!function(e,t){var r,n;e=e.toLowerCase();try{for(var o=c(Object.keys(t)),i=o.next();!i.done;i=o.next())if(e===i.value.toLowerCase())return!0}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return!1}(_,a.headers)&&this.applyChecksum&&(a.headers[_]=v),g=B(a,s,i),[4,this.getSignature(p,m,this.getSigningKey(t,r,h,d),this.createCanonicalRequest(a,g,v))];case 6:return y=u.sent(),a.headers[T]="AWS4-HMAC-SHA256 Credential="+t.accessKeyId+"/"+m+", SignedHeaders="+X(g)+", Signature="+y,[2,a]}}))}))},e.prototype.createCanonicalRequest=function(e,t,r){var n=Object.keys(t).sort();return e.method+"\n"+this.getCanonicalPath(e)+"\n"+function(e){var t,r,n=e.query,o=void 0===n?{}:n,i=[],s={},a=function(e){if(e.toLowerCase()===P)return"continue";i.push(e);var t=o[e];"string"==typeof t?s[e]=z(e)+"="+z(t):Array.isArray(t)&&(s[e]=t.slice(0).sort().reduce((function(t,r){return t.concat([z(e)+"="+z(r)])}),[]).join("&"))};try{for(var u=c(Object.keys(o).sort()),l=u.next();!l.done;l=u.next())a(l.value)}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=u.return)&&r.call(u)}finally{if(t)throw t.error}}return i.map((function(e){return s[e]})).filter((function(e){return e})).join("&")}(e)+"\n"+n.map((function(e){return e+":"+t[e]})).join("\n")+"\n\n"+n.join(";")+"\n"+r},e.prototype.createStringToSign=function(e,t,r){return a(this,void 0,void 0,(function(){var n,o;return u(this,(function(i){switch(i.label){case 0:return(n=new this.sha256).update(r),[4,n.digest()];case 1:return o=i.sent(),[2,"AWS4-HMAC-SHA256\n"+e+"\n"+t+"\n"+S(o)]}}))}))},e.prototype.getCanonicalPath=function(e){var t=e.path;return this.uriEscapePath?"/"+encodeURIComponent(t.replace(/^\//,"")).replace(/%2F/g,"/"):t},e.prototype.getSignature=function(e,t,r,n){return a(this,void 0,void 0,(function(){var o,i,s,a,c;return u(this,(function(u){switch(u.label){case 0:return[4,this.createStringToSign(e,t,n)];case 1:return o=u.sent(),a=(s=this.sha256).bind,[4,r];case 2:return(i=new(a.apply(s,[void 0,u.sent()]))).update(o),c=S,[4,i.digest()];case 3:return[2,c.apply(void 0,[u.sent()])]}}))}))},e.prototype.getSigningKey=function(e,t,r,n){return function(e,t,r,n,o){return a(void 0,void 0,void 0,(function(){var i,s,a,l,d,f,p,h,m;return u(this,(function(u){switch(u.label){case 0:return[4,U(e,t.secretAccessKey,t.accessKeyId)];case 1:if(i=u.sent(),(s=r+":"+n+":"+o+":"+S(i)+":"+t.sessionToken)in F)return[2,F[s]];for(M.push(s);M.length>50;)delete F[M.shift()];a="AWS4"+t.secretAccessKey,u.label=2;case 2:u.trys.push([2,7,8,9]),l=c([r,n,o,L]),d=l.next(),u.label=3;case 3:return d.done?[3,6]:(f=d.value,[4,U(e,a,f)]);case 4:a=u.sent(),u.label=5;case 5:return d=l.next(),[3,3];case 6:return[3,9];case 7:return p=u.sent(),h={error:p},[3,9];case 8:try{d&&!d.done&&(m=l.return)&&m.call(l)}finally{if(h)throw h.error}return[7];case 9:return[2,F[s]=a]}}))}))}(this.sha256,e,r,t,n||this.service)},e}(),Y=function(e){var t,r=(t=e,function(e){return"number"==typeof e?new Date(1e3*e):"string"==typeof e?Number(e)?new Date(1e3*Number(e)):new Date(e):e}(t).toISOString().replace(/\.\d{3}Z$/,"Z")).replace(/[\-:]/g,"");return{longDate:r,shortDate:r.substr(0,8)}},X=function(e){return Object.keys(e).sort().join(";")},Z=function(e){if("object"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e},Q=function(){function e(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?":"!==e.protocol.substr(-1)?e.protocol+":":e.protocol:"https:",this.path=e.path?"/"!==e.path.charAt(0)?"/"+e.path:e.path:"/"}return e.isInstance=function(e){if(!e)return!1;var t=e;return"method"in t&&"protocol"in t&&"hostname"in t&&"path"in t&&"object"==typeof t.query&&"object"==typeof t.headers},e.prototype.clone=function(){var t,r=new e(i(i({},this),{headers:i({},this.headers)}));return r.query&&(r.query=(t=r.query,Object.keys(t).reduce((function(e,r){var n,o=t[r];return i(i({},e),((n={})[r]=Array.isArray(o)?d([],l(o)):o,n))}),{}))),r},e}(),ee=function(){function e(e){this.statusCode=e.statusCode,this.headers=e.headers||{},this.body=e.body}return e.isInstance=function(e){if(!e)return!1;var t=e;return"number"==typeof t.statusCode&&"object"==typeof t.headers},e}(),te=function(e){return new Date(Date.now()+e)},re=function(e,t){var r=Date.parse(e);return function(e,t){return Math.abs(te(t).getTime()-e)>=3e5}(r,t)?r-Date.now():t},ne={name:"awsAuthMiddleware",tags:["SIGNATURE","AWSAUTH"],relation:"after",toMiddleware:"retryMiddleware",override:!0},oe=function(e){return{applyToStack:function(t){t.addRelativeTo(function(e){return function(t,r){return function(n){return a(this,void 0,void 0,(function(){var o,s,a,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:return Q.isInstance(n.request)?[4,e.signer()]:[2,t(n)];case 1:return o=u.sent(),a=t,c=[i({},n)],f={},[4,o.sign(n.request,{signingDate:te(e.systemClockOffset),signingRegion:r.signing_region,signingService:r.signing_service})];case 2:return[4,a.apply(void 0,[i.apply(void 0,c.concat([(f.request=u.sent(),f)]))]).catch((function(t){throw t.ServerTime&&(e.systemClockOffset=re(t.ServerTime,e.systemClockOffset)),t}))];case 3:return s=u.sent(),l=s.response.headers,(d=l&&(l.date||l.Date))&&(e.systemClockOffset=re(d,e.systemClockOffset)),[2,s]}}))}))}}}(e),ne)}}},ie=function(){var e=[],t=[],r=new Set,n=function(r){return e.forEach((function(e){r.add(e.middleware,i({},e))})),t.forEach((function(e){r.addRelativeTo(e.middleware,i({},e))})),r},o=function(e){var t=[];return e.before.forEach((function(e){0===e.before.length&&0===e.after.length?t.push(e):t.push.apply(t,d([],l(o(e))))})),t.push(e),e.after.reverse().forEach((function(e){0===e.before.length&&0===e.after.length?t.push(e):t.push.apply(t,d([],l(o(e))))})),t},s={add:function(t,n){void 0===n&&(n={});var o=n.name,s=n.override,a=i({step:"initialize",priority:"normal",middleware:t},n);if(o){if(r.has(o)){if(!s)throw new Error("Duplicate middleware name '"+o+"'");var u=e.findIndex((function(e){return e.name===o})),c=e[u];if(c.step!==a.step||c.priority!==a.priority)throw new Error('"'+o+'" middleware with '+c.priority+" priority in "+c.step+" step cannot be overridden by same-name middleware with "+a.priority+" priority in "+a.step+" step.");e.splice(u,1)}r.add(o)}e.push(a)},addRelativeTo:function(e,n){var o=n.name,s=n.override,a=i({middleware:e},n);if(o){if(r.has(o)){if(!s)throw new Error("Duplicate middleware name '"+o+"'");var u=t.findIndex((function(e){return e.name===o})),c=t[u];if(c.toMiddleware!==a.toMiddleware||c.relation!==a.relation)throw new Error('"'+o+'" middleware '+c.relation+' "'+c.toMiddleware+'" middleware cannot be overridden by same-name middleware '+a.relation+' "'+a.toMiddleware+'" middleware.');t.splice(u,1)}r.add(o)}t.push(a)},clone:function(){return n(ie())},use:function(e){e.applyToStack(s)},remove:function(n){return"string"==typeof n?function(n){var o=!1,i=function(e){return!e.name||e.name!==n||(o=!0,r.delete(n),!1)};return e=e.filter(i),t=t.filter(i),o}(n):function(n){var o=!1,i=function(e){return e.middleware!==n||(o=!0,e.name&&r.delete(e.name),!1)};return e=e.filter(i),t=t.filter(i),o}(n)},removeByTag:function(n){var o=!1,i=function(e){var t=e.tags,i=e.name;return!t||!t.includes(n)||(i&&r.delete(i),o=!0,!1)};return e=e.filter(i),t=t.filter(i),o},concat:function(e){var t=n(ie());return t.use(e),t},applyToStack:n,resolve:function(r,n){var s,a;try{for(var u=c(function(){var r,n=[],s=[],a={};return e.forEach((function(e){var t=i(i({},e),{before:[],after:[]});t.name&&(a[t.name]=t),n.push(t)})),t.forEach((function(e){var t=i(i({},e),{before:[],after:[]});t.name&&(a[t.name]=t),s.push(t)})),s.forEach((function(e){if(e.toMiddleware){var t=a[e.toMiddleware];if(void 0===t)throw new Error(e.toMiddleware+" is not found when adding "+(e.name||"anonymous")+" middleware "+e.relation+" "+e.toMiddleware);"after"===e.relation&&t.after.push(e),"before"===e.relation&&t.before.push(e)}})),(r=n,r.sort((function(e,t){return se[t.step]-se[e.step]||ae[t.priority||"normal"]-ae[e.priority||"normal"]}))).map(o).reduce((function(e,t){return e.push.apply(e,d([],l(t))),e}),[]).map((function(e){return e.middleware}))}().reverse()),f=u.next();!f.done;f=u.next())r=(0,f.value)(r,n)}catch(e){s={error:e}}finally{try{f&&!f.done&&(a=u.return)&&a.call(u)}finally{if(s)throw s.error}}return r}};return s},se={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},ae={high:3,normal:2,low:1},ue=function(){function e(e){this.middlewareStack=ie(),this.config=e}return e.prototype.send=function(e,t,r){var n="function"!=typeof t?t:void 0,o="function"==typeof t?t:r,i=e.resolveMiddleware(this.middlewareStack,this.config,n);if(!o)return i(e).then((function(e){return e.output}));i(e).then((function(e){return o(null,e.output)}),(function(e){return o(e)})).catch((function(){}))},e.prototype.destroy=function(){this.config.requestHandler.destroy&&this.config.requestHandler.destroy()},e}(),ce=function(){this.middlewareStack=ie()},le="***SensitiveInformation***",de=Math.ceil(Math.pow(2,127)*(2-Math.pow(2,-23))),fe=function(e){var t=function(e){if(null!=e){if("number"==typeof e)return e;throw new TypeError("Expected number, got "+typeof e)}}(e);if(void 0!==t&&!Number.isNaN(t)&&t!==1/0&&t!==-1/0&&Math.abs(t)>de)throw new TypeError("Expected 32-bit float, got "+e);return t},pe=function(e){if(null!=e){if(Number.isInteger(e)&&!Number.isNaN(e))return e;throw new TypeError("Expected integer, got "+typeof e)}},he=function(e,t){var r=pe(e);if(void 0!==r&&me(r,t)!==r)throw new TypeError("Expected "+t+"-bit integer, got "+e);return r},me=function(e,t){switch(t){case 32:return Int32Array.of(e)[0];case 16:return Int16Array.of(e)[0];case 8:return Int8Array.of(e)[0]}},ve=function(e,t){if(null==e){if(t)throw new TypeError("Expected a non-null value for "+t);throw new TypeError("Expected a non-null value")}return e},ge=function(e){if(null!=e){if("object"==typeof e&&!Array.isArray(e))return e;throw new TypeError("Expected object, got "+typeof e)}},ye=function(e){if(null!=e){if("string"==typeof e)return e;throw new TypeError("Expected string, got "+typeof e)}},be=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,we=function(e){var t=e.match(be);if(null===t||t[0].length!==e.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(e)},Ee=function(e){return function(e){return he(e,32)}("string"==typeof e?we(e):e)},Ae=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Se=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),Ce=function(e){if(null!=e){if("string"!=typeof e)throw new TypeError("RFC-3339 date-times must be expressed as strings");var t=Se.exec(e);if(!t)throw new TypeError("Invalid RFC-3339 date-time value");var r=l(t,8),n=(r[0],r[1]),o=r[2],i=r[3],s=r[4],a=r[5],u=r[6],c=r[7],d=function(e){return function(e){return he(e,16)}("string"==typeof e?we(e):e)}(ke(n)),f=Pe(o,"month",1,12),p=Pe(i,"day",1,31);return Re(d,f,p,{hours:s,minutes:a,seconds:u,fractionalMilliseconds:c})}},Re=function(e,t,r,n){var o=t-1;return xe(e,o,r),new Date(Date.UTC(e,o,r,Pe(n.hours,"hour",0,23),Pe(n.minutes,"minute",0,59),Pe(n.seconds,"seconds",0,60),_e(n.fractionalMilliseconds)))},Te=[31,28,31,30,31,30,31,31,30,31,30,31],xe=function(e,t,r){var n=Te[t];if(1===t&&Oe(e)&&(n=29),r>n)throw new TypeError("Invalid day for "+Ae[t]+" in "+e+": "+r)},Oe=function(e){return e%4==0&&(e%100!=0||e%400==0)},Pe=function(e,t,r,n){var o=function(e){return function(e){return he(e,8)}("string"==typeof e?we(e):e)}(ke(e));if(on)throw new TypeError(t+" must be between "+r+" and "+n+", inclusive");return o},_e=function(e){return null==e?0:1e3*function(e){return fe("string"==typeof e?we(e):e)}("0."+e)},ke=function(e){for(var t=0;t=300?[2,mt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,AssumedRoleUser:void 0,PackedPolicySize:void 0,SourceIdentity:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.AssumedRoleUser&&(r.AssumedRoleUser=Lt(e.AssumedRoleUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),void 0!==e.SourceIdentity&&(r.SourceIdentity=ye(e.SourceIdentity)),r}(r.AssumeRoleResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),Zt=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"AssumeRoleWithSAMLCommand",inputFilterSensitiveLog:Ve.filterSensitiveLog,outputFilterSensitiveLog:Ge.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};if(void 0!==e.RoleArn&&null!==e.RoleArn&&(r.RoleArn=e.RoleArn),void 0!==e.PrincipalArn&&null!==e.PrincipalArn&&(r.PrincipalArn=e.PrincipalArn),void 0!==e.SAMLAssertion&&null!==e.SAMLAssertion&&(r.SAMLAssertion=e.SAMLAssertion),void 0!==e.PolicyArns&&null!==e.PolicyArns){var n=kt(e.PolicyArns,t);Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["PolicyArns."+n]=o}))}return void 0!==e.Policy&&null!==e.Policy&&(r.Policy=e.Policy),void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),r}(e,t)),{Action:"AssumeRoleWithSAML",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,vt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,AssumedRoleUser:void 0,PackedPolicySize:void 0,Subject:void 0,SubjectType:void 0,Issuer:void 0,Audience:void 0,NameQualifier:void 0,SourceIdentity:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.AssumedRoleUser&&(r.AssumedRoleUser=Lt(e.AssumedRoleUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),void 0!==e.Subject&&(r.Subject=ye(e.Subject)),void 0!==e.SubjectType&&(r.SubjectType=ye(e.SubjectType)),void 0!==e.Issuer&&(r.Issuer=ye(e.Issuer)),void 0!==e.Audience&&(r.Audience=ye(e.Audience)),void 0!==e.NameQualifier&&(r.NameQualifier=ye(e.NameQualifier)),void 0!==e.SourceIdentity&&(r.SourceIdentity=ye(e.SourceIdentity)),r}(r.AssumeRoleWithSAMLResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),Qt=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"AssumeRoleWithWebIdentityCommand",inputFilterSensitiveLog:Je.filterSensitiveLog,outputFilterSensitiveLog:Ye.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};if(void 0!==e.RoleArn&&null!==e.RoleArn&&(r.RoleArn=e.RoleArn),void 0!==e.RoleSessionName&&null!==e.RoleSessionName&&(r.RoleSessionName=e.RoleSessionName),void 0!==e.WebIdentityToken&&null!==e.WebIdentityToken&&(r.WebIdentityToken=e.WebIdentityToken),void 0!==e.ProviderId&&null!==e.ProviderId&&(r.ProviderId=e.ProviderId),void 0!==e.PolicyArns&&null!==e.PolicyArns){var n=kt(e.PolicyArns,t);Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["PolicyArns."+n]=o}))}return void 0!==e.Policy&&null!==e.Policy&&(r.Policy=e.Policy),void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),r}(e,t)),{Action:"AssumeRoleWithWebIdentity",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,gt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,SubjectFromWebIdentityToken:void 0,AssumedRoleUser:void 0,PackedPolicySize:void 0,Provider:void 0,Audience:void 0,SourceIdentity:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.SubjectFromWebIdentityToken&&(r.SubjectFromWebIdentityToken=ye(e.SubjectFromWebIdentityToken)),void 0!==e.AssumedRoleUser&&(r.AssumedRoleUser=Lt(e.AssumedRoleUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),void 0!==e.Provider&&(r.Provider=ye(e.Provider)),void 0!==e.Audience&&(r.Audience=ye(e.Audience)),void 0!==e.SourceIdentity&&(r.SourceIdentity=ye(e.SourceIdentity)),r}(r.AssumeRoleWithWebIdentityResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),er=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"DecodeAuthorizationMessageCommand",inputFilterSensitiveLog:Ze.filterSensitiveLog,outputFilterSensitiveLog:Qe.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};return void 0!==e.EncodedMessage&&null!==e.EncodedMessage&&(r.EncodedMessage=e.EncodedMessage),r}(e)),{Action:"DecodeAuthorizationMessage",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,yt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={DecodedMessage:void 0};return void 0!==e.DecodedMessage&&(r.DecodedMessage=ye(e.DecodedMessage)),r}(r.DecodeAuthorizationMessageResult),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),tr=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetAccessKeyInfoCommand",inputFilterSensitiveLog:tt.filterSensitiveLog,outputFilterSensitiveLog:rt.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};return void 0!==e.AccessKeyId&&null!==e.AccessKeyId&&(r.AccessKeyId=e.AccessKeyId),r}(e)),{Action:"GetAccessKeyInfo",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,bt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Account:void 0};return void 0!==e.Account&&(r.Account=ye(e.Account)),r}(r.GetAccessKeyInfoResult),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),rr=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetCallerIdentityCommand",inputFilterSensitiveLog:nt.filterSensitiveLog,outputFilterSensitiveLog:ot.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var e,r;return u(this,(function(n){return e={"content-type":"application/x-www-form-urlencoded"},r=Jt(i(i({},{}),{Action:"GetCallerIdentity",Version:"2011-06-15"})),[2,Kt(t,e,"/",void 0,r)]}))}))}(0,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,wt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={UserId:void 0,Account:void 0,Arn:void 0};return void 0!==e.UserId&&(r.UserId=ye(e.UserId)),void 0!==e.Account&&(r.Account=ye(e.Account)),void 0!==e.Arn&&(r.Arn=ye(e.Arn)),r}(r.GetCallerIdentityResult),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),nr=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetFederationTokenCommand",inputFilterSensitiveLog:it.filterSensitiveLog,outputFilterSensitiveLog:at.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};if(void 0!==e.Name&&null!==e.Name&&(r.Name=e.Name),void 0!==e.Policy&&null!==e.Policy&&(r.Policy=e.Policy),void 0!==e.PolicyArns&&null!==e.PolicyArns){var n=kt(e.PolicyArns,t);Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["PolicyArns."+n]=o}))}return void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),void 0!==e.Tags&&null!==e.Tags&&(n=Dt(e.Tags,t),Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["Tags."+n]=o}))),r}(e,t)),{Action:"GetFederationToken",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,Et(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,FederatedUser:void 0,PackedPolicySize:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.FederatedUser&&(r.FederatedUser=function(e,t){var r={FederatedUserId:void 0,Arn:void 0};return void 0!==e.FederatedUserId&&(r.FederatedUserId=ye(e.FederatedUserId)),void 0!==e.Arn&&(r.Arn=ye(e.Arn)),r}(e.FederatedUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),r}(r.GetFederationTokenResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),or=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetSessionTokenCommand",inputFilterSensitiveLog:ut.filterSensitiveLog,outputFilterSensitiveLog:ct.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};return void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),void 0!==e.SerialNumber&&null!==e.SerialNumber&&(r.SerialNumber=e.SerialNumber),void 0!==e.TokenCode&&null!==e.TokenCode&&(r.TokenCode=e.TokenCode),r}(e)),{Action:"GetSessionToken",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,At(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),r}(r.GetSessionTokenResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce);!function(e){e.ENV="env",e.CONFIG="shared config entry"}(ft||(ft={}));var ir,sr=function(e,t,r){if(t in e){if("true"===e[t])return!0;if("false"===e[t])return!1;throw new Error("Cannot load "+r+' "'+t+'". Expected "true" or "false", got '+e[t]+".")}},ar={environmentVariableSelector:function(e){return sr(e,"AWS_USE_DUALSTACK_ENDPOINT",ft.ENV)},configFileSelector:function(e){return sr(e,"use_dualstack_endpoint",ft.CONFIG)},default:!1},ur={environmentVariableSelector:function(e){return sr(e,"AWS_USE_FIPS_ENDPOINT",ft.ENV)},configFileSelector:function(e){return sr(e,"use_fips_endpoint",ft.CONFIG)},default:!1},cr=function(e){var t=e.endpoint,r=e.urlParser;if("string"==typeof t){var n=Promise.resolve(r(t));return function(){return n}}if("object"==typeof t){var o=Promise.resolve(t);return function(){return o}}return t},lr=function(e){var t,r=function(e){if("boolean"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e}(e.useDualstackEndpoint),n=e.endpoint,o=e.useFipsEndpoint;return i(i({},e),{tls:null===(t=e.tls)||void 0===t||t,endpoint:n?cr(i(i({},e),{endpoint:n})):function(){return function(e){return a(void 0,void 0,void 0,(function(){var t,r,n,o,i,s,a;return u(this,(function(u){switch(u.label){case 0:return t=e.tls,r=void 0===t||t,[4,e.region()];case 1:if(n=u.sent(),!new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/).test(n))throw new Error("Invalid region in client config");return[4,e.useDualstackEndpoint()];case 2:return o=u.sent(),[4,e.useFipsEndpoint()];case 3:return i=u.sent(),[4,e.regionInfoProvider(n,{useDualstackEndpoint:o,useFipsEndpoint:i})];case 4:if(!(s=(null!==(a=u.sent())&&void 0!==a?a:{}).hostname))throw new Error("Cannot resolve hostname from client config");return[2,e.urlParser((r?"https:":"http:")+"//"+s)]}}))}))}(i(i({},e),{useDualstackEndpoint:r,useFipsEndpoint:o}))},isCustomEndpoint:!!n,useDualstackEndpoint:r})},dr={environmentVariableSelector:function(e){return e.AWS_REGION},configFileSelector:function(e){return e.region},default:function(){throw new Error("Region is missing")}},fr={preferredFile:"credentials"},pr=function(e){return"string"==typeof e&&(e.startsWith("fips-")||e.endsWith("-fips"))},hr=function(e){return pr(e)?["fips-aws-global","aws-fips"].includes(e)?"us-east-1":e.replace(/fips-(dkr-|prod-)?|-fips/,""):e},mr=function(e){var t=e.region,r=e.useFipsEndpoint;if(!t)throw new Error("Region is missing");return i(i({},e),{region:function(){return a(void 0,void 0,void 0,(function(){var e;return u(this,(function(r){switch(r.label){case 0:return"string"==typeof t?[2,hr(t)]:[4,t()];case 1:return e=r.sent(),[2,hr(e)]}}))}))},useFipsEndpoint:function(){return a(void 0,void 0,void 0,(function(){var e;return u(this,(function(n){switch(n.label){case 0:return"string"!=typeof t?[3,1]:(e=t,[3,3]);case 1:return[4,t()];case 2:e=n.sent(),n.label=3;case 3:return pr(e)?[2,!0]:[2,"boolean"==typeof r?Promise.resolve(r):r()]}}))}))}})},vr=function(e,t){var r;void 0===e&&(e=[]);var n=t.useFipsEndpoint,o=t.useDualstackEndpoint;return null===(r=e.find((function(e){var t=e.tags;return n===t.includes("fips")&&o===t.includes("dualstack")})))||void 0===r?void 0:r.hostname},gr=function(e,t){var r,n,o,s,a,u,c=t.useFipsEndpoint,l=void 0!==c&&c,d=t.useDualstackEndpoint,f=void 0!==d&&d,p=t.signingService,h=t.regionHash,m=t.partitionHash,v=function(e,t){var r,n=t.partitionHash;return null!==(r=Object.keys(n||{}).find((function(t){return n[t].regions.includes(e)})))&&void 0!==r?r:"aws"}(e,{partitionHash:m}),g=e in h?e:null!==(n=null===(r=m[v])||void 0===r?void 0:r.endpoint)&&void 0!==n?n:e,y={useFipsEndpoint:l,useDualstackEndpoint:f},b=function(e,t){var r=t.partitionHostname;return t.regionHostname||(r?r.replace("{region}",e):void 0)}(g,{regionHostname:vr(null===(o=h[g])||void 0===o?void 0:o.variants,y),partitionHostname:vr(null===(s=m[v])||void 0===s?void 0:s.variants,y)});if(void 0===b)throw new Error("Endpoint resolution failed for: "+{resolvedRegion:g,useFipsEndpoint:l,useDualstackEndpoint:f});var w=function(e,t){var r=t.signingRegion;if(r)return r;if(t.useFipsEndpoint){var n=t.regionRegex.replace("\\\\","\\").replace(/^\^/g,"\\.").replace(/\$$/g,"\\."),o=e.match(n);if(o)return o[0].slice(1,-1)}}(b,{signingRegion:null===(a=h[g])||void 0===a?void 0:a.signingRegion,regionRegex:m[v].regionRegex,useFipsEndpoint:l});return i(i({partition:v,signingService:p,hostname:b},w&&{signingRegion:w}),(null===(u=h[g])||void 0===u?void 0:u.signingService)&&{signingService:h[g].signingService})},yr={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},br=function(e){return{applyToStack:function(t){t.add(function(e){var t=this;return function(r){return function(n){return a(t,void 0,void 0,(function(){var t,o,s,a,c;return u(this,(function(u){return t=n.request,Q.isInstance(t)&&(o=t.body,s=t.headers,o&&-1===Object.keys(s).map((function(e){return e.toLowerCase()})).indexOf("content-length")&&void 0!==(a=e(o))&&(t.headers=i(i({},t.headers),((c={})["content-length"]=String(a),c)))),[2,r(i(i({},n),{request:t}))]}))}))}}}(e.bodyLengthChecker),yr)}}},wr={name:"hostHeaderMiddleware",step:"build",priority:"low",tags:["HOST"],override:!0},Er=function(e){return{applyToStack:function(t){t.add(function(e){return function(t){return function(r){return a(void 0,void 0,void 0,(function(){var n,o;return u(this,(function(i){return Q.isInstance(r.request)?(n=r.request,(void 0===(o=(e.requestHandler.metadata||{}).handlerProtocol)?"":o).indexOf("h2")>=0&&!n.headers[":authority"]?(delete n.headers.host,n.headers[":authority"]=""):n.headers.host||(n.headers.host=n.hostname),[2,t(r)]):[2,t(r)]}))}))}}}(e),wr)}}},Ar={name:"loggerMiddleware",tags:["LOGGER"],step:"initialize",override:!0},Sr=function(e){return{applyToStack:function(e){e.add((function(e,t){return function(r){return a(void 0,void 0,void 0,(function(){var n,o,i,a,c,l,d,f,p;return u(this,(function(u){switch(u.label){case 0:return n=t.clientName,o=t.commandName,i=t.inputFilterSensitiveLog,a=t.logger,c=t.outputFilterSensitiveLog,[4,e(r)];case 1:return l=u.sent(),a?("function"==typeof a.info&&(d=l.output,f=d.$metadata,p=s(d,["$metadata"]),a.info({clientName:n,commandName:o,input:i(r.input),output:c(p),metadata:f})),[2,l]):[2,l]}}))}))}}),Ar)}}};!function(e){e.STANDARD="standard",e.ADAPTIVE="adaptive"}(ir||(ir={}));var Cr=ir.STANDARD,Rr=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],Tr=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],xr=["AbortError","TimeoutError","RequestTimeout","RequestTimeoutException"],Or=[500,502,503,504],Pr=function(e){var t,r;return 429===(null===(t=e.$metadata)||void 0===t?void 0:t.httpStatusCode)||Tr.includes(e.name)||1==(null===(r=e.$retryable)||void 0===r?void 0:r.throttling)},_r=function(){function e(e){var t,r,n,o,i;this.currentCapacity=0,this.enabled=!1,this.lastMaxRate=0,this.measuredTxRate=0,this.requestCount=0,this.lastTimestamp=0,this.timeWindow=0,this.beta=null!==(t=null==e?void 0:e.beta)&&void 0!==t?t:.7,this.minCapacity=null!==(r=null==e?void 0:e.minCapacity)&&void 0!==r?r:1,this.minFillRate=null!==(n=null==e?void 0:e.minFillRate)&&void 0!==n?n:.5,this.scaleConstant=null!==(o=null==e?void 0:e.scaleConstant)&&void 0!==o?o:.4,this.smooth=null!==(i=null==e?void 0:e.smooth)&&void 0!==i?i:.8;var s=this.getCurrentTimeInSeconds();this.lastThrottleTime=s,this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}return e.prototype.getCurrentTimeInSeconds=function(){return Date.now()/1e3},e.prototype.getSendToken=function(){return a(this,void 0,void 0,(function(){return u(this,(function(e){return[2,this.acquireTokenBucket(1)]}))}))},e.prototype.acquireTokenBucket=function(e){return a(this,void 0,void 0,(function(){var t;return u(this,(function(r){switch(r.label){case 0:return this.enabled?(this.refillTokenBucket(),e>this.currentCapacity?(t=(e-this.currentCapacity)/this.fillRate*1e3,[4,new Promise((function(e){return setTimeout(e,t)}))]):[3,2]):[2];case 1:r.sent(),r.label=2;case 2:return this.currentCapacity=this.currentCapacity-e,[2]}}))}))},e.prototype.refillTokenBucket=function(){var e=this.getCurrentTimeInSeconds();if(this.lastTimestamp){var t=(e-this.lastTimestamp)*this.fillRate;this.currentCapacity=Math.min(this.maxCapacity,this.currentCapacity+t),this.lastTimestamp=e}else this.lastTimestamp=e},e.prototype.updateClientSendingRate=function(e){var t;if(this.updateMeasuredRate(),Pr(e)){var r=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=r,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),t=this.cubicThrottle(r),this.enableTokenBucket()}else this.calculateTimeWindow(),t=this.cubicSuccess(this.getCurrentTimeInSeconds());var n=Math.min(t,2*this.measuredTxRate);this.updateTokenBucketRate(n)},e.prototype.calculateTimeWindow=function(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))},e.prototype.cubicThrottle=function(e){return this.getPrecise(e*this.beta)},e.prototype.cubicSuccess=function(e){return this.getPrecise(this.scaleConstant*Math.pow(e-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)},e.prototype.enableTokenBucket=function(){this.enabled=!0},e.prototype.updateTokenBucketRate=function(e){this.refillTokenBucket(),this.fillRate=Math.max(e,this.minFillRate),this.maxCapacity=Math.max(e,this.minCapacity),this.currentCapacity=Math.min(this.currentCapacity,this.maxCapacity)},e.prototype.updateMeasuredRate=function(){var e=this.getCurrentTimeInSeconds(),t=Math.floor(2*e)/2;if(this.requestCount++,t>this.lastTxRateBucket){var r=this.requestCount/(t-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(r*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=t}},e.prototype.getPrecise=function(e){return parseFloat(e.toFixed(8))},e}();const kr=require("crypto");var qr=r.n(kr);const Ir=new Uint8Array(256);let Nr=Ir.length;function Dr(){return Nr>Ir.length-16&&(qr().randomFillSync(Ir),Nr=0),Ir.slice(Nr,Nr+=16)}const Lr=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Fr=[];for(let e=0;e<256;++e)Fr.push((e+256).toString(16).substr(1));const Mr=function(e,t=0){const r=(Fr[e[t+0]]+Fr[e[t+1]]+Fr[e[t+2]]+Fr[e[t+3]]+"-"+Fr[e[t+4]]+Fr[e[t+5]]+"-"+Fr[e[t+6]]+Fr[e[t+7]]+"-"+Fr[e[t+8]]+Fr[e[t+9]]+"-"+Fr[e[t+10]]+Fr[e[t+11]]+Fr[e[t+12]]+Fr[e[t+13]]+Fr[e[t+14]]+Fr[e[t+15]]).toLowerCase();if(!function(e){return"string"==typeof e&&Lr.test(e)}(r))throw TypeError("Stringified UUID is invalid");return r},jr=function(e,t,r){const n=(e=e||{}).random||(e.rng||Dr)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=n[e];return t}return Mr(n)};var Ur=function(e,t){return Math.floor(Math.min(2e4,Math.random()*Math.pow(2,t)*e))},Br=function(e){return!!e&&(function(e){return void 0!==e.$retryable}(e)||function(e){return Rr.includes(e.name)}(e)||Pr(e)||function(e){var t;return xr.includes(e.name)||Or.includes((null===(t=e.$metadata)||void 0===t?void 0:t.httpStatusCode)||0)}(e))},zr=function(){function e(e,t){var r,n,o,i,s,a,u,c,l;this.maxAttemptsProvider=e,this.mode=ir.STANDARD,this.retryDecider=null!==(r=null==t?void 0:t.retryDecider)&&void 0!==r?r:Br,this.delayDecider=null!==(n=null==t?void 0:t.delayDecider)&&void 0!==n?n:Ur,this.retryQuota=null!==(o=null==t?void 0:t.retryQuota)&&void 0!==o?o:(i=1,s=5,a=10,u=500,c=function(e){return"TimeoutError"===e.name?a:s},l=function(e){return c(e)<=u},Object.freeze({hasRetryTokens:l,retrieveRetryTokens:function(e){if(!l(e))throw new Error("No retry token available");var t=c(e);return u-=t,t},releaseRetryTokens:function(e){u+=null!=e?e:i,u=Math.min(u,500)}}))}return e.prototype.shouldRetry=function(e,t,r){return t0})).map((function(e){return null==e?void 0:e.replace(rn,"_")})).join("/")},on={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0},sn=function(e){return{applyToStack:function(t){var r;t.add((r=e,function(e,t){return function(n){return a(void 0,void 0,void 0,(function(){var o,s,a,c,f,p,h,m,v;return u(this,(function(u){switch(u.label){case 0:return o=n.request,Q.isInstance(o)?(s=o.headers,a=(null===(m=null==t?void 0:t.userAgent)||void 0===m?void 0:m.map(nn))||[],[4,r.defaultUserAgentProvider()]):[2,e(n)];case 1:return c=u.sent().map(nn),f=(null===(v=null==r?void 0:r.customUserAgent)||void 0===v?void 0:v.map(nn))||[],p=d(d(d([],l(c)),l(a)),l(f)).join(" "),h=d(d([],l(c.filter((function(e){return e.startsWith("aws-sdk-")})))),l(f)).join(" "),"browser"!==r.runtime?(h&&(s[tn]=s[tn]?s[en]+" "+h:h),s[en]=p):s[tn]=p,[2,e(i(i({},n),{request:o}))]}}))}))}}),on)}}};var an="us-east-1",un=function(e){return"function"!=typeof e?void 0===e?an:e:function(){return a(void 0,void 0,void 0,(function(){return u(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,e()];case 1:return[2,t.sent()];case 2:return t.sent(),[2,an];case 3:return[2]}}))}))}},cn=function(e,t){var r,n;return function(o,s){return a(void 0,void 0,void 0,(function(){var c,l,d,f;return u(this,(function(p){switch(p.label){case 0:return n=o,r||(c=e.logger,l=e.region,d=e.requestHandler,r=new t(i({logger:c,credentialDefaultProvider:function(){return function(){return a(void 0,void 0,void 0,(function(){return u(this,(function(e){return[2,n]}))}))}},region:un(l||e.region)},d?{requestHandler:d}:{}))),[4,r.send(new Xt(s))];case 1:if(!(f=p.sent().Credentials)||!f.AccessKeyId||!f.SecretAccessKey)throw new Error("Invalid response from STS.assumeRole call with role "+s.RoleArn);return[2,{accessKeyId:f.AccessKeyId,secretAccessKey:f.SecretAccessKey,sessionToken:f.SessionToken,expiration:f.Expiration}]}}))}))}},ln=function(e,t){var r;return function(n){return a(void 0,void 0,void 0,(function(){var o,s,a,c;return u(this,(function(u){switch(u.label){case 0:return r||(o=e.logger,s=e.region,a=e.requestHandler,r=new t(i({logger:o,region:un(s||e.region)},a?{requestHandler:a}:{}))),[4,r.send(new Qt(n))];case 1:if(!(c=u.sent().Credentials)||!c.AccessKeyId||!c.SecretAccessKey)throw new Error("Invalid response from STS.assumeRoleWithWebIdentity call with role "+n.RoleArn);return[2,{accessKeyId:c.AccessKeyId,secretAccessKey:c.SecretAccessKey,sessionToken:c.SessionToken,expiration:c.Expiration}]}}))}))}};function dn(){return function(){var e=process.env.AWS_ACCESS_KEY_ID,t=process.env.AWS_SECRET_ACCESS_KEY,r=process.env.AWS_CREDENTIAL_EXPIRATION;return e&&t?Promise.resolve({accessKeyId:e,secretAccessKey:t,sessionToken:process.env.AWS_SESSION_TOKEN,expiration:r?new Date(r):void 0}):Promise.reject(new v("Unable to find environment variable credentials."))}}var fn=r(7310);const pn=require("buffer");var hn=r(3685);function mn(e){return new Promise((function(t,r){var n,o=(0,hn.request)(i(i({method:"GET"},e),{hostname:null===(n=e.hostname)||void 0===n?void 0:n.replace(/^\[(.+)\]$/,"$1")}));o.on("error",(function(e){r(Object.assign(new m("Unable to connect to instance metadata service"),e)),o.destroy()})),o.on("timeout",(function(){r(new m("TimeoutError from instance metadata service")),o.destroy()})),o.on("response",(function(e){var n=e.statusCode,i=void 0===n?400:n;(i<200||300<=i)&&(r(Object.assign(new m("Error response received from instance metadata service"),{statusCode:i})),o.destroy());var s=[];e.on("data",(function(e){s.push(e)})),e.on("end",(function(){t(pn.Buffer.concat(s)),o.destroy()}))})),o.end()}))}var vn,gn=function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.AccessKeyId&&"string"==typeof e.SecretAccessKey&&"string"==typeof e.Token&&"string"==typeof e.Expiration},yn=function(e){return{accessKeyId:e.AccessKeyId,secretAccessKey:e.SecretAccessKey,sessionToken:e.Token,expiration:new Date(e.Expiration)}},bn=function(e){var t=e.maxRetries,r=void 0===t?0:t,n=e.timeout;return{maxRetries:r,timeout:void 0===n?1e3:n}},wn=function(e,t){for(var r=e(),n=0;n0&&!t)return o[0];var i=(0,uo.connect)(e),s=function(){r.destroySession(i),r.deleteSessionFromCache(e,i)};i.on("goaway",s),i.on("error",s),i.on("frameError",s);var a=this.sessionTimeout;return a&&i.setTimeout(a,s),o.push(i),n.set(e,o),i},e.prototype.destroySession=function(e){e.destroyed||e.destroy()},e.prototype.deleteSessionFromCache=function(e,t){var r=this.sessionCache.get(e)||[];r.includes(t)&&this.sessionCache.set(e,r.filter((function(e){return e!==t})))}}();var co=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.bufferedBytes=[],t}return o(t,e),t.prototype._write=function(e,t,r){this.bufferedBytes.push(e),r()},t}(oo.Writable),lo=function(e){return new Promise((function(t,r){var n=new co;e.pipe(n),e.on("error",(function(e){n.end(),r(e)})),n.on("error",r),n.on("finish",(function(){var e=new Uint8Array(Buffer.concat(this.bufferedBytes));t(e)}))}))},fo=/^[A-Za-z0-9+/]*={0,2}$/;function po(e){if(3*e.length%4!=0)throw new TypeError("Incorrect padding on base64 string.");if(!fo.exec(e))throw new TypeError("Invalid base64 string.");var t=Xn(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}function ho(e){return Yn(e.buffer,e.byteOffset,e.byteLength).toString("base64")}function mo(e){return e?"string"==typeof e?Buffer.from(e).length:"number"==typeof e.byteLength?e.byteLength:"number"==typeof e.size?e.size:"string"==typeof e.path?(0,Pn.lstatSync)(e.path).size:void 0:0}const vo=require("process");var go,yo,bo,wo,Eo,Ao,So,Co,Ro,To,xo,Oo,Po,_o,ko=r(890),qo=function(e){var t=e.serviceId,r=e.clientVersion,n=[["aws-sdk-js",r],["os/"+(0,_n.platform)(),(0,_n.release)()],["lang/js"],["md/nodejs",""+vo.versions.node]],o=(0,ko.E)();o&&n.push(o),t&&n.push(["api/"+t,r]),vo.env.AWS_EXECUTION_ENV&&n.push(["exec-env/"+vo.env.AWS_EXECUTION_ENV]);var i=Un({environmentVariableSelector:function(e){return e.AWS_SDK_UA_APP_ID},configFileSelector:function(e){return e["sdk-ua-app-id"]},default:void 0})(),s=void 0;return function(){return a(void 0,void 0,void 0,(function(){var e;return u(this,(function(t){switch(t.label){case 0:return s?[3,2]:[4,i];case 1:e=t.sent(),s=e?d(d([],l(n)),[["app/"+e]]):d([],l(n)),t.label=2;case 2:return[2,s]}}))}))}},Io=function(e){var t=Xn(e,"utf8");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT)},No=function(e){return Yn(e.buffer,e.byteOffset,e.byteLength).toString("utf8")},Do={"ap-northeast-1":{variants:[{hostname:"portal.sso.ap-northeast-1.amazonaws.com",tags:[]}],signingRegion:"ap-northeast-1"},"ap-northeast-2":{variants:[{hostname:"portal.sso.ap-northeast-2.amazonaws.com",tags:[]}],signingRegion:"ap-northeast-2"},"ap-south-1":{variants:[{hostname:"portal.sso.ap-south-1.amazonaws.com",tags:[]}],signingRegion:"ap-south-1"},"ap-southeast-1":{variants:[{hostname:"portal.sso.ap-southeast-1.amazonaws.com",tags:[]}],signingRegion:"ap-southeast-1"},"ap-southeast-2":{variants:[{hostname:"portal.sso.ap-southeast-2.amazonaws.com",tags:[]}],signingRegion:"ap-southeast-2"},"ca-central-1":{variants:[{hostname:"portal.sso.ca-central-1.amazonaws.com",tags:[]}],signingRegion:"ca-central-1"},"eu-central-1":{variants:[{hostname:"portal.sso.eu-central-1.amazonaws.com",tags:[]}],signingRegion:"eu-central-1"},"eu-north-1":{variants:[{hostname:"portal.sso.eu-north-1.amazonaws.com",tags:[]}],signingRegion:"eu-north-1"},"eu-west-1":{variants:[{hostname:"portal.sso.eu-west-1.amazonaws.com",tags:[]}],signingRegion:"eu-west-1"},"eu-west-2":{variants:[{hostname:"portal.sso.eu-west-2.amazonaws.com",tags:[]}],signingRegion:"eu-west-2"},"eu-west-3":{variants:[{hostname:"portal.sso.eu-west-3.amazonaws.com",tags:[]}],signingRegion:"eu-west-3"},"sa-east-1":{variants:[{hostname:"portal.sso.sa-east-1.amazonaws.com",tags:[]}],signingRegion:"sa-east-1"},"us-east-1":{variants:[{hostname:"portal.sso.us-east-1.amazonaws.com",tags:[]}],signingRegion:"us-east-1"},"us-east-2":{variants:[{hostname:"portal.sso.us-east-2.amazonaws.com",tags:[]}],signingRegion:"us-east-2"},"us-gov-west-1":{variants:[{hostname:"portal.sso.us-gov-west-1.amazonaws.com",tags:[]}],signingRegion:"us-gov-west-1"},"us-west-2":{variants:[{hostname:"portal.sso.us-west-2.amazonaws.com",tags:[]}],signingRegion:"us-west-2"}},Lo={aws:{regions:["af-south-1","ap-east-1","ap-northeast-1","ap-northeast-2","ap-northeast-3","ap-south-1","ap-southeast-1","ap-southeast-2","ap-southeast-3","ca-central-1","eu-central-1","eu-north-1","eu-south-1","eu-west-1","eu-west-2","eu-west-3","me-south-1","sa-east-1","us-east-1","us-east-2","us-west-1","us-west-2"],regionRegex:"^(us|eu|ap|sa|ca|me|af)\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.amazonaws.com",tags:[]},{hostname:"portal.sso-fips.{region}.amazonaws.com",tags:["fips"]},{hostname:"portal.sso-fips.{region}.api.aws",tags:["dualstack","fips"]},{hostname:"portal.sso.{region}.api.aws",tags:["dualstack"]}]},"aws-cn":{regions:["cn-north-1","cn-northwest-1"],regionRegex:"^cn\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.amazonaws.com.cn",tags:[]},{hostname:"portal.sso-fips.{region}.amazonaws.com.cn",tags:["fips"]},{hostname:"portal.sso-fips.{region}.api.amazonwebservices.com.cn",tags:["dualstack","fips"]},{hostname:"portal.sso.{region}.api.amazonwebservices.com.cn",tags:["dualstack"]}]},"aws-iso":{regions:["us-iso-east-1","us-iso-west-1"],regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.c2s.ic.gov",tags:[]},{hostname:"portal.sso-fips.{region}.c2s.ic.gov",tags:["fips"]}]},"aws-iso-b":{regions:["us-isob-east-1"],regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.sc2s.sgov.gov",tags:[]},{hostname:"portal.sso-fips.{region}.sc2s.sgov.gov",tags:["fips"]}]},"aws-us-gov":{regions:["us-gov-east-1","us-gov-west-1"],regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.amazonaws.com",tags:[]},{hostname:"portal.sso-fips.{region}.amazonaws.com",tags:["fips"]},{hostname:"portal.sso-fips.{region}.api.aws",tags:["dualstack","fips"]},{hostname:"portal.sso.{region}.api.aws",tags:["dualstack"]}]}},Fo=function(e,t){return a(void 0,void 0,void 0,(function(){return u(this,(function(r){return[2,gr(e,i(i({},t),{signingService:"awsssoportal",regionHash:Do,partitionHash:Lo}))]}))}))},Mo=function(e){function t(t){var r=this,n=function(e){var t,r,n,o,s,a,u,c,l,d,f,p,h,m;Ie(process.version);var v=function(e){var t,r,n,o,i;return{apiVersion:"2019-06-10",disableHostPrefix:null!==(t=null==e?void 0:e.disableHostPrefix)&&void 0!==t&&t,logger:null!==(r=null==e?void 0:e.logger)&&void 0!==r?r:{},regionInfoProvider:null!==(n=null==e?void 0:e.regionInfoProvider)&&void 0!==n?n:Fo,serviceId:null!==(o=null==e?void 0:e.serviceId)&&void 0!==o?o:"SSO",urlParser:null!==(i=null==e?void 0:e.urlParser)&&void 0!==i?i:Bn}}(e);return i(i(i({},v),e),{runtime:"node",base64Decoder:null!==(t=null==e?void 0:e.base64Decoder)&&void 0!==t?t:po,base64Encoder:null!==(r=null==e?void 0:e.base64Encoder)&&void 0!==r?r:ho,bodyLengthChecker:null!==(n=null==e?void 0:e.bodyLengthChecker)&&void 0!==n?n:mo,defaultUserAgentProvider:null!==(o=null==e?void 0:e.defaultUserAgentProvider)&&void 0!==o?o:qo({serviceId:v.serviceId,clientVersion:"3.45.0"}),maxAttempts:null!==(s=null==e?void 0:e.maxAttempts)&&void 0!==s?s:Un(Vr),region:null!==(a=null==e?void 0:e.region)&&void 0!==a?a:Un(dr,fr),requestHandler:null!==(u=null==e?void 0:e.requestHandler)&&void 0!==u?u:new ao,retryMode:null!==(c=null==e?void 0:e.retryMode)&&void 0!==c?c:Un(Jr),sha256:null!==(l=null==e?void 0:e.sha256)&&void 0!==l?l:Zn.bind(null,"sha256"),streamCollector:null!==(d=null==e?void 0:e.streamCollector)&&void 0!==d?d:lo,useDualstackEndpoint:null!==(f=null==e?void 0:e.useDualstackEndpoint)&&void 0!==f?f:Un(ar),useFipsEndpoint:null!==(p=null==e?void 0:e.useFipsEndpoint)&&void 0!==p?p:Un(ur),utf8Decoder:null!==(h=null==e?void 0:e.utf8Decoder)&&void 0!==h?h:Io,utf8Encoder:null!==(m=null==e?void 0:e.utf8Encoder)&&void 0!==m?m:No})}(t),o=mr(n),s=lr(o),a=Qr(Gr(s));return(r=e.call(this,a)||this).config=a,r.middlewareStack.use(Xr(r.config)),r.middlewareStack.use(br(r.config)),r.middlewareStack.use(Er(r.config)),r.middlewareStack.use(Sr(r.config)),r.middlewareStack.use(sn(r.config)),r}return o(t,e),t.prototype.destroy=function(){e.prototype.destroy.call(this)},t}(ue);!function(e){e.filterSensitiveLog=function(e){return i({},e)}}(go||(go={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(yo||(yo={})),function(e){e.filterSensitiveLog=function(e){return i(i(i({},e),e.secretAccessKey&&{secretAccessKey:le}),e.sessionToken&&{sessionToken:le})}}(bo||(bo={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.roleCredentials&&{roleCredentials:bo.filterSensitiveLog(e.roleCredentials)})}}(wo||(wo={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Eo||(Eo={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Ao||(Ao={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(So||(So={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Co||(Co={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(Ro||(Ro={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(To||(To={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(xo||(xo={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(Oo||(Oo={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Po||(Po={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(_o||(_o={}));var jo=function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o,s,a,c,l,d,f,p,h;return u(this,(function(u){switch(u.label){case 0:return n=[i({},e)],h={},[4,Vo(e.body,t)];case 1:switch(r=i.apply(void 0,n.concat([(h.body=u.sent(),h)])),s="UnknownError",s=Go(e,r.body)){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":return[3,2];case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":return[3,4];case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":return[3,6];case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":return[3,8]}return[3,10];case 2:return a=[{}],[4,Uo(r,t)];case 3:return o=i.apply(void 0,[i.apply(void 0,a.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 4:return c=[{}],[4,Bo(r,t)];case 5:return o=i.apply(void 0,[i.apply(void 0,c.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 6:return l=[{}],[4,zo(r,t)];case 7:return o=i.apply(void 0,[i.apply(void 0,l.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 8:return d=[{}],[4,Ho(r,t)];case 9:return o=i.apply(void 0,[i.apply(void 0,d.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 10:f=r.body,s=f.code||f.Code||s,o=i(i({},f),{name:""+s,message:f.message||f.Message||s,$fault:"client",$metadata:$o(e)}),u.label=11;case 11:return p=o.message||o.Message||s,o.message=p,delete o.Message,[2,Promise.reject(Object.assign(new Error(p),o))]}}))}))},Uo=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"InvalidRequestException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},Bo=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"ResourceNotFoundException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},zo=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"TooManyRequestsException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},Ho=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"UnauthorizedException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},$o=function(e){var t;return{httpStatusCode:e.statusCode,requestId:null!==(t=e.headers["x-amzn-requestid"])&&void 0!==t?t:e.headers["x-amzn-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}},Vo=function(e,t){return function(e,t){return function(e,t){return void 0===e&&(e=new Uint8Array),e instanceof Uint8Array?Promise.resolve(e):t.streamCollector(e)||Promise.resolve(new Uint8Array)}(e,t).then((function(e){return t.utf8Encoder(e)}))}(e,t).then((function(e){return e.length?JSON.parse(e):{}}))},Go=function(e,t){var r,n=function(e){var t=e;return t.indexOf(":")>=0&&(t=t.split(":")[0]),t.indexOf("#")>=0&&(t=t.split("#")[1]),t},o=(r=e.headers,"x-amzn-errortype",Object.keys(r).find((function(e){return e.toLowerCase()==="x-amzn-errortype".toLowerCase()})));return void 0!==o?n(e.headers[o]):void 0!==t.code?n(t.code):void 0!==t.__type?n(t.__type):""},Ko=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"SSOClient",commandName:"GetRoleCredentialsCommand",inputFilterSensitiveLog:yo.filterSensitiveLog,outputFilterSensitiveLog:wo.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o,s,a,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:return[4,t.endpoint()];case 1:return r=u.sent(),n=r.hostname,o=r.protocol,s=void 0===o?"https":o,a=r.port,c=r.path,l=i({},!(null==(p=e.accessToken)||""===p||Object.getOwnPropertyNames(p).includes("length")&&0==p.length||Object.getOwnPropertyNames(p).includes("size")&&0==p.size)&&{"x-amz-sso_bearer_token":e.accessToken}),d=((null==c?void 0:c.endsWith("/"))?c.slice(0,-1):c||"")+"/federation/credentials",f=i(i({},void 0!==e.roleName&&{role_name:e.roleName}),void 0!==e.accountId&&{account_id:e.accountId}),[2,new Q({protocol:s,hostname:n,port:a,method:"GET",headers:l,path:d,query:f,body:void 0})]}var p}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o,i;return u(this,(function(s){switch(s.label){case 0:return 200!==e.statusCode&&e.statusCode>=300?[2,jo(e,t)]:(r={$metadata:$o(e),roleCredentials:void 0},o=ve,i=ge,[4,Vo(e.body,t)]);case 1:return void 0!==(n=o.apply(void 0,[i.apply(void 0,[s.sent()]),"body"])).roleCredentials&&null!==n.roleCredentials&&(r.roleCredentials=function(e,t){return{accessKeyId:ye(e.accessKeyId),expiration:pe(e.expiration),secretAccessKey:ye(e.secretAccessKey),sessionToken:ye(e.sessionToken)}}(n.roleCredentials)),[2,Promise.resolve(r)]}}))}))}(e,t)},t}(ce),Wo=function(e){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){switch(n.label){case 0:return[4,void 0===(t=e.loadedConfig)?In(e):t];case 1:return r=n.sent(),[2,i(i({},r.configFile),r.credentialsFile)]}}))}))},Jo=function(e){return e.profile||process.env.AWS_PROFILE||"default"},Yo=!1,Xo=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){var t,r,n,o,i,s,a,c,l,d,f,p,h;return u(this,(function(u){switch(u.label){case 0:return t=e.ssoStartUrl,r=e.ssoAccountId,n=e.ssoRegion,o=e.ssoRoleName,i=e.ssoClient,t||r||n||o?[3,2]:[4,Wo(e)];case 1:if(s=u.sent(),a=Jo(e),c=s[a],!ei(c))throw new v("Profile "+a+" is not configured with SSO credentials.");return l=Qo(c),d=l.sso_start_url,f=l.sso_account_id,p=l.sso_region,h=l.sso_role_name,[2,Zo({ssoStartUrl:d,ssoAccountId:f,ssoRegion:p,ssoRoleName:h,ssoClient:i})];case 2:if(t&&r&&n&&o)return[2,Zo({ssoStartUrl:t,ssoAccountId:r,ssoRegion:n,ssoRoleName:o,ssoClient:i})];throw new v('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"');case 3:return[2]}}))}))}},Zo=function(e){var t=e.ssoStartUrl,r=e.ssoAccountId,n=e.ssoRegion,o=e.ssoRoleName,i=e.ssoClient;return a(void 0,void 0,void 0,(function(){var e,s,a,c,l,d,f,p,h,m,g,y,b,w;return u(this,(function(u){switch(u.label){case 0:e=(0,kr.createHash)("sha1"),s=e.update(t).digest("hex"),a=(0,kn.join)(jn(),".aws","sso","cache",s+".json");try{if(c=JSON.parse((0,Pn.readFileSync)(a,{encoding:"utf-8"})),new Date(c.expiresAt).getTime()-Date.now()<=9e5)throw new Error("SSO token is expired.")}catch(e){throw new v("The SSO session associated with this profile has expired or is otherwise invalid. To refresh this SSO session run aws sso login with the corresponding profile.",Yo)}l=c.accessToken,d=i||new Mo({region:n}),u.label=1;case 1:return u.trys.push([1,3,,4]),[4,d.send(new Ko({accountId:r,roleName:o,accessToken:l}))];case 2:return f=u.sent(),[3,4];case 3:throw p=u.sent(),v.from(p,Yo);case 4:if(h=f.roleCredentials,g=(m=void 0===h?{}:h).accessKeyId,y=m.secretAccessKey,b=m.sessionToken,w=m.expiration,!(g&&y&&b&&w))throw new v("SSO returns an invalid temporary credential.",Yo);return[2,{accessKeyId:g,secretAccessKey:y,sessionToken:b,expiration:new Date(w)}]}}))}))},Qo=function(e){var t=e.sso_start_url,r=e.sso_account_id,n=e.sso_region,o=e.sso_role_name;if(!(t&&r&&n&&o))throw new v('Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got '+Object.keys(e).join(", ")+"\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html",Yo);return e},ei=function(e){return e&&("string"==typeof e.sso_start_url||"string"==typeof e.sso_account_id||"string"==typeof e.sso_region||"string"==typeof e.sso_role_name)},ti=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){return u(this,(function(t){return[2,ri(e)]}))}))}},ri=function(e){var t,r,n,o=null!==(t=null==e?void 0:e.webIdentityTokenFile)&&void 0!==t?t:process.env.AWS_WEB_IDENTITY_TOKEN_FILE,s=null!==(r=null==e?void 0:e.roleArn)&&void 0!==r?r:process.env.AWS_ROLE_ARN,a=null!==(n=null==e?void 0:e.roleSessionName)&&void 0!==n?n:process.env.AWS_ROLE_SESSION_NAME;if(!o||!s)throw new v("Web identity configuration not specified");return function(e){return function(){var t=e.roleArn,r=e.roleSessionName,n=e.webIdentityToken,o=e.providerId,i=e.policyArns,s=e.policy,a=e.durationSeconds,u=e.roleAssumerWithWebIdentity;if(!u)throw new v("Role Arn '"+t+"' needs to be assumed with web identity, but no role assumption callback was provided.",!1);return u({RoleArn:t,RoleSessionName:null!=r?r:"aws-sdk-js-session-"+Date.now(),WebIdentityToken:n,ProviderId:o,PolicyArns:i,Policy:s,DurationSeconds:a})}}(i(i({},e),{webIdentityToken:(0,Pn.readFileSync)(o,{encoding:"ascii"}),roleArn:s,roleSessionName:a}))()},ni=function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.aws_access_key_id&&"string"==typeof e.aws_secret_access_key&&["undefined","string"].indexOf(typeof e.aws_session_token)>-1},oi=function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.role_arn&&["undefined","string"].indexOf(typeof e.role_session_name)>-1&&["undefined","string"].indexOf(typeof e.external_id)>-1&&["undefined","string"].indexOf(typeof e.mfa_serial)>-1},ii=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){var t;return u(this,(function(r){switch(r.label){case 0:return[4,Wo(e)];case 1:return t=r.sent(),[2,si(Jo(e),t,e)]}}))}))}},si=function(e,t,r,n){return void 0===n&&(n={}),a(void 0,void 0,void 0,(function(){var o,s,a,c,l,d,f,p,h,m,g,y,b,w,E,A,S,C,R;return u(this,(function(u){switch(u.label){case 0:if(o=t[e],Object.keys(n).length>0&&ni(o))return[2,ui(o)];if(!(oi(T=o)&&"string"==typeof T.source_profile&&void 0===T.credential_source||function(e){return oi(e)&&"string"==typeof e.credential_source&&void 0===e.source_profile}(o)))return[3,4];if(s=o.external_id,a=o.mfa_serial,c=o.role_arn,l=o.role_session_name,d=void 0===l?"aws-sdk-js-"+Date.now():l,f=o.source_profile,p=o.credential_source,!r.roleAssumer)throw new v("Profile "+e+" requires a role to be assumed, but no role assumption callback was provided.",!1);if(f&&f in n)throw new v("Detected a cycle attempting to resolve credentials for profile "+Jo(r)+". Profiles visited: "+Object.keys(n).join(", "),!1);if(h=f?si(f,t,r,i(i({},n),((R={})[f]=!0,R))):ai(p,e)(),m={RoleArn:c,RoleSessionName:d,ExternalId:s},!a)return[3,2];if(!r.mfaCodeProvider)throw new v("Profile "+e+" requires multi-factor authentication, but no MFA code callback was provided.",!1);return m.SerialNumber=a,g=m,[4,r.mfaCodeProvider(a)];case 1:g.TokenCode=u.sent(),u.label=2;case 2:return b=(y=r).roleAssumer,[4,h];case 3:return[2,b.apply(y,[u.sent(),m])];case 4:if(ni(o))return[2,ui(o)];if(function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.web_identity_token_file&&"string"==typeof e.role_arn&&["undefined","string"].indexOf(typeof e.role_session_name)>-1}(o))return[2,ci(o,r)];if(ei(o))return w=Qo(o),E=w.sso_start_url,A=w.sso_account_id,S=w.sso_region,C=w.sso_role_name,[2,Xo({ssoStartUrl:E,ssoAccountId:A,ssoRegion:S,ssoRoleName:C})()];throw new v("Profile "+e+" could not be found or parsed in shared credentials file.")}var T}))}))},ai=function(e,t){var r={EcsContainer:Cn,Ec2InstanceMetadata:Gn,Environment:dn};if(e in r)return r[e]();throw new v("Unsupported credential source in profile "+t+". Got "+e+", expected EcsContainer or Ec2InstanceMetadata or Environment.")},ui=function(e){return Promise.resolve({accessKeyId:e.aws_access_key_id,secretAccessKey:e.aws_secret_access_key,sessionToken:e.aws_session_token})},ci=function(e,t){return a(void 0,void 0,void 0,(function(){return u(this,(function(r){return[2,ti({webIdentityTokenFile:e.web_identity_token_file,roleArn:e.role_arn,roleSessionName:e.role_session_name,roleAssumerWithWebIdentity:t.roleAssumerWithWebIdentity})()]}))}))};const li=require("child_process");var di=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){var t;return u(this,(function(r){switch(r.label){case 0:return[4,Wo(e)];case 1:return t=r.sent(),[2,fi(Jo(e),t)]}}))}))}},fi=function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){switch(o.label){case 0:return r=t[e],t[e]?void 0===(n=r.credential_process)?[3,2]:[4,pi(n).then((function(t){var r;try{r=JSON.parse(t)}catch(t){throw Error("Profile "+e+" credential_process returned invalid JSON.")}var n,o=r.Version,i=r.AccessKeyId,s=r.SecretAccessKey,a=r.SessionToken,u=r.Expiration;if(1!==o)throw Error("Profile "+e+" credential_process did not return Version 1.");if(void 0===i||void 0===s)throw Error("Profile "+e+" credential_process returned invalid credentials.");if(u){var c=new Date;if(new Date(u){"use strict";r.d(t,{E:()=>n}),e=r.hmd(e);var n=function(){try{return e.require&&r(Object(function(){var e=new Error("Cannot find module 'aws-crt'");throw e.code="MODULE_NOT_FOUND",e}()))?["md/crt-avail"]:null}catch(e){return null}}},9669:(e,t,r)=>{e.exports=r(1609)},7970:(e,t,r)=>{"use strict";var n=r(4867),o=r(6026),i=r(4097),s=r(5327),a=r(3685),u=r(5687),c=r(938).http,l=r(938).https,d=r(7310),f=r(9796),p=r(7288).version,h=r(5061),m=r(481),v=r(5655),g=r(5263),y=/https:?/;function b(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(e){e.headers.host=e.host,b(e,t,e.href)}}e.exports=function(e){return new Promise((function(t,r){var w;function E(){e.cancelToken&&e.cancelToken.unsubscribe(w),e.signal&&e.signal.removeEventListener("abort",w)}var A=function(e){E(),t(e)},S=function(e){E(),r(e)},C=e.data,R=e.headers,T={};if(Object.keys(R).forEach((function(e){T[e.toLowerCase()]=e})),"user-agent"in T?R[T["user-agent"]]||delete R[T["user-agent"]]:R["User-Agent"]="axios/"+p,C&&!n.isStream(C)){if(Buffer.isBuffer(C));else if(n.isArrayBuffer(C))C=Buffer.from(new Uint8Array(C));else{if(!n.isString(C))return S(h("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",e));C=Buffer.from(C,"utf-8")}T["content-length"]||(R["Content-Length"]=C.length)}var x=void 0;e.auth&&(x=(e.auth.username||"")+":"+(e.auth.password||""));var O=i(e.baseURL,e.url),P=d.parse(O),_=P.protocol||"http:";if(!x&&P.auth){var k=P.auth.split(":");x=(k[0]||"")+":"+(k[1]||"")}x&&T.authorization&&delete R[T.authorization];var q=y.test(_),I=q?e.httpsAgent:e.httpAgent,N={path:s(P.path,e.params,e.paramsSerializer).replace(/^\?/,""),method:e.method.toUpperCase(),headers:R,agent:I,agents:{http:e.httpAgent,https:e.httpsAgent},auth:x};e.socketPath?N.socketPath=e.socketPath:(N.hostname=P.hostname,N.port=P.port);var D,L=e.proxy;if(!L&&!1!==L){var F=_.slice(0,-1)+"_proxy",M=process.env[F]||process.env[F.toUpperCase()];if(M){var j=d.parse(M),U=process.env.no_proxy||process.env.NO_PROXY,B=!0;if(U&&(B=!U.split(",").map((function(e){return e.trim()})).some((function(e){return!!e&&("*"===e||"."===e[0]&&P.hostname.substr(P.hostname.length-e.length)===e||P.hostname===e)}))),B&&(L={host:j.hostname,port:j.port,protocol:j.protocol},j.auth)){var z=j.auth.split(":");L.auth={username:z[0],password:z[1]}}}}L&&(N.headers.host=P.hostname+(P.port?":"+P.port:""),b(N,L,_+"//"+P.hostname+(P.port?":"+P.port:"")+N.path));var H=q&&(!L||y.test(L.protocol));e.transport?D=e.transport:0===e.maxRedirects?D=H?u:a:(e.maxRedirects&&(N.maxRedirects=e.maxRedirects),D=H?l:c),e.maxBodyLength>-1&&(N.maxBodyLength=e.maxBodyLength),e.insecureHTTPParser&&(N.insecureHTTPParser=e.insecureHTTPParser);var $=D.request(N,(function(t){if(!$.aborted){var r=t,i=t.req||$;if(204!==t.statusCode&&"HEAD"!==i.method&&!1!==e.decompress)switch(t.headers["content-encoding"]){case"gzip":case"compress":case"deflate":r=r.pipe(f.createUnzip()),delete t.headers["content-encoding"]}var s={status:t.statusCode,statusText:t.statusMessage,headers:t.headers,config:e,request:i};if("stream"===e.responseType)s.data=r,o(A,S,s);else{var a=[],u=0;r.on("data",(function(t){a.push(t),u+=t.length,e.maxContentLength>-1&&u>e.maxContentLength&&(r.destroy(),S(h("maxContentLength size of "+e.maxContentLength+" exceeded",e,null,i)))})),r.on("error",(function(t){$.aborted||S(m(t,e,null,i))})),r.on("end",(function(){var t=Buffer.concat(a);"arraybuffer"!==e.responseType&&(t=t.toString(e.responseEncoding),e.responseEncoding&&"utf8"!==e.responseEncoding||(t=n.stripBOM(t))),s.data=t,o(A,S,s)}))}}}));if($.on("error",(function(t){$.aborted&&"ERR_FR_TOO_MANY_REDIRECTS"!==t.code||S(m(t,e,null,$))})),e.timeout){var V=parseInt(e.timeout,10);if(isNaN(V))return void S(h("error trying to parse `config.timeout` to int",e,"ERR_PARSE_TIMEOUT",$));$.setTimeout(V,(function(){$.abort();var t=e.transitional||v.transitional;S(h("timeout of "+V+"ms exceeded",e,t.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",$))}))}(e.cancelToken||e.signal)&&(w=function(e){$.aborted||($.abort(),S(!e||e&&e.type?new g("canceled"):e))},e.cancelToken&&e.cancelToken.subscribe(w),e.signal&&(e.signal.aborted?w():e.signal.addEventListener("abort",w))),n.isStream(C)?C.on("error",(function(t){S(m(t,e,null,$))})).pipe($):$.end(C)}))}},5448:(e,t,r)=>{"use strict";var n=r(4867),o=r(6026),i=r(4372),s=r(5327),a=r(4097),u=r(4109),c=r(7985),l=r(5061),d=r(5655),f=r(5263);e.exports=function(e){return new Promise((function(t,r){var p,h=e.data,m=e.headers,v=e.responseType;function g(){e.cancelToken&&e.cancelToken.unsubscribe(p),e.signal&&e.signal.removeEventListener("abort",p)}n.isFormData(h)&&delete m["Content-Type"];var y=new XMLHttpRequest;if(e.auth){var b=e.auth.username||"",w=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";m.Authorization="Basic "+btoa(b+":"+w)}var E=a(e.baseURL,e.url);function A(){if(y){var n="getAllResponseHeaders"in y?u(y.getAllResponseHeaders()):null,i={data:v&&"text"!==v&&"json"!==v?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:n,config:e,request:y};o((function(e){t(e),g()}),(function(e){r(e),g()}),i),y=null}}if(y.open(e.method.toUpperCase(),s(E,e.params,e.paramsSerializer),!0),y.timeout=e.timeout,"onloadend"in y?y.onloadend=A:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(A)},y.onabort=function(){y&&(r(l("Request aborted",e,"ECONNABORTED",y)),y=null)},y.onerror=function(){r(l("Network Error",e,null,y)),y=null},y.ontimeout=function(){var t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",n=e.transitional||d.transitional;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(l(t,e,n.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",y)),y=null},n.isStandardBrowserEnv()){var S=(e.withCredentials||c(E))&&e.xsrfCookieName?i.read(e.xsrfCookieName):void 0;S&&(m[e.xsrfHeaderName]=S)}"setRequestHeader"in y&&n.forEach(m,(function(e,t){void 0===h&&"content-type"===t.toLowerCase()?delete m[t]:y.setRequestHeader(t,e)})),n.isUndefined(e.withCredentials)||(y.withCredentials=!!e.withCredentials),v&&"json"!==v&&(y.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&y.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&y.upload&&y.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(p=function(e){y&&(r(!e||e&&e.type?new f("canceled"):e),y.abort(),y=null)},e.cancelToken&&e.cancelToken.subscribe(p),e.signal&&(e.signal.aborted?p():e.signal.addEventListener("abort",p))),h||(h=null),y.send(h)}))}},1609:(e,t,r)=>{"use strict";var n=r(4867),o=r(1849),i=r(321),s=r(7185),a=function e(t){var r=new i(t),a=o(i.prototype.request,r);return n.extend(a,i.prototype,r),n.extend(a,r),a.create=function(r){return e(s(t,r))},a}(r(5655));a.Axios=i,a.Cancel=r(5263),a.CancelToken=r(4972),a.isCancel=r(6502),a.VERSION=r(7288).version,a.all=function(e){return Promise.all(e)},a.spread=r(8713),a.isAxiosError=r(6268),e.exports=a,e.exports.default=a},5263:e=>{"use strict";function t(e){this.message=e}t.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},t.prototype.__CANCEL__=!0,e.exports=t},4972:(e,t,r)=>{"use strict";var n=r(5263);function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var r=this;this.promise.then((function(e){if(r._listeners){var t,n=r._listeners.length;for(t=0;t{"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},321:(e,t,r)=>{"use strict";var n=r(4867),o=r(5327),i=r(782),s=r(3572),a=r(7185),u=r(4875),c=u.validators;function l(e){this.defaults=e,this.interceptors={request:new i,response:new i}}l.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=a(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=e.transitional;void 0!==t&&u.assertOptions(t,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var r=[],n=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(n=n&&t.synchronous,r.unshift(t.fulfilled,t.rejected))}));var o,i=[];if(this.interceptors.response.forEach((function(e){i.push(e.fulfilled,e.rejected)})),!n){var l=[s,void 0];for(Array.prototype.unshift.apply(l,r),l=l.concat(i),o=Promise.resolve(e);l.length;)o=o.then(l.shift(),l.shift());return o}for(var d=e;r.length;){var f=r.shift(),p=r.shift();try{d=f(d)}catch(e){p(e);break}}try{o=s(d)}catch(e){return Promise.reject(e)}for(;i.length;)o=o.then(i.shift(),i.shift());return o},l.prototype.getUri=function(e){return e=a(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},n.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,r){return this.request(a(r||{},{method:e,url:t,data:(r||{}).data}))}})),n.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,r,n){return this.request(a(n||{},{method:e,url:t,data:r}))}})),e.exports=l},782:(e,t,r)=>{"use strict";var n=r(4867);function o(){this.handlers=[]}o.prototype.use=function(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(e){n.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=o},4097:(e,t,r)=>{"use strict";var n=r(1793),o=r(7303);e.exports=function(e,t){return e&&!n(t)?o(e,t):t}},5061:(e,t,r)=>{"use strict";var n=r(481);e.exports=function(e,t,r,o,i){var s=new Error(e);return n(s,t,r,o,i)}},3572:(e,t,r)=>{"use strict";var n=r(4867),o=r(8527),i=r(6502),s=r(5655),a=r(5263);function u(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new a("canceled")}e.exports=function(e){return u(e),e.headers=e.headers||{},e.data=o.call(e,e.data,e.headers,e.transformRequest),e.headers=n.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||s.adapter)(e).then((function(t){return u(e),t.data=o.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return i(t)||(u(e),t&&t.response&&(t.response.data=o.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},481:e=>{"use strict";e.exports=function(e,t,r,n,o){return e.config=t,r&&(e.code=r),e.request=n,e.response=o,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},e}},7185:(e,t,r)=>{"use strict";var n=r(4867);e.exports=function(e,t){t=t||{};var r={};function o(e,t){return n.isPlainObject(e)&&n.isPlainObject(t)?n.merge(e,t):n.isPlainObject(t)?n.merge({},t):n.isArray(t)?t.slice():t}function i(r){return n.isUndefined(t[r])?n.isUndefined(e[r])?void 0:o(void 0,e[r]):o(e[r],t[r])}function s(e){if(!n.isUndefined(t[e]))return o(void 0,t[e])}function a(r){return n.isUndefined(t[r])?n.isUndefined(e[r])?void 0:o(void 0,e[r]):o(void 0,t[r])}function u(r){return r in t?o(e[r],t[r]):r in e?o(void 0,e[r]):void 0}var c={url:s,method:s,data:s,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:u};return n.forEach(Object.keys(e).concat(Object.keys(t)),(function(e){var t=c[e]||i,o=t(e);n.isUndefined(o)&&t!==u||(r[e]=o)})),r}},6026:(e,t,r)=>{"use strict";var n=r(5061);e.exports=function(e,t,r){var o=r.config.validateStatus;r.status&&o&&!o(r.status)?t(n("Request failed with status code "+r.status,r.config,null,r.request,r)):e(r)}},8527:(e,t,r)=>{"use strict";var n=r(4867),o=r(5655);e.exports=function(e,t,r){var i=this||o;return n.forEach(r,(function(r){e=r.call(i,e,t)})),e}},5655:(e,t,r)=>{"use strict";var n=r(4867),o=r(6016),i=r(481),s={"Content-Type":"application/x-www-form-urlencoded"};function a(e,t){!n.isUndefined(e)&&n.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var u,c={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:("undefined"!=typeof XMLHttpRequest?u=r(5448):"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process)&&(u=r(7970)),u),transformRequest:[function(e,t){return o(t,"Accept"),o(t,"Content-Type"),n.isFormData(e)||n.isArrayBuffer(e)||n.isBuffer(e)||n.isStream(e)||n.isFile(e)||n.isBlob(e)?e:n.isArrayBufferView(e)?e.buffer:n.isURLSearchParams(e)?(a(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):n.isObject(e)||t&&"application/json"===t["Content-Type"]?(a(t,"application/json"),function(e,t,r){if(n.isString(e))try{return(0,JSON.parse)(e),n.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||c.transitional,r=t&&t.silentJSONParsing,o=t&&t.forcedJSONParsing,s=!r&&"json"===this.responseType;if(s||o&&n.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(s){if("SyntaxError"===e.name)throw i(e,this,"E_JSON_PARSE");throw e}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};n.forEach(["delete","get","head"],(function(e){c.headers[e]={}})),n.forEach(["post","put","patch"],(function(e){c.headers[e]=n.merge(s)})),e.exports=c},7288:e=>{e.exports={version:"0.24.0"}},1849:e=>{"use strict";e.exports=function(e,t){return function(){for(var r=new Array(arguments.length),n=0;n{"use strict";var n=r(4867);function o(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,r){if(!t)return e;var i;if(r)i=r(t);else if(n.isURLSearchParams(t))i=t.toString();else{var s=[];n.forEach(t,(function(e,t){null!=e&&(n.isArray(e)?t+="[]":e=[e],n.forEach(e,(function(e){n.isDate(e)?e=e.toISOString():n.isObject(e)&&(e=JSON.stringify(e)),s.push(o(t)+"="+o(e))})))})),i=s.join("&")}if(i){var a=e.indexOf("#");-1!==a&&(e=e.slice(0,a)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}},7303:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},4372:(e,t,r)=>{"use strict";var n=r(4867);e.exports=n.isStandardBrowserEnv()?{write:function(e,t,r,o,i,s){var a=[];a.push(e+"="+encodeURIComponent(t)),n.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),n.isString(o)&&a.push("path="+o),n.isString(i)&&a.push("domain="+i),!0===s&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},1793:e=>{"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},6268:e=>{"use strict";e.exports=function(e){return"object"==typeof e&&!0===e.isAxiosError}},7985:(e,t,r)=>{"use strict";var n=r(4867);e.exports=n.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");function o(e){var n=e;return t&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}return e=o(window.location.href),function(t){var r=n.isString(t)?o(t):t;return r.protocol===e.protocol&&r.host===e.host}}():function(){return!0}},6016:(e,t,r)=>{"use strict";var n=r(4867);e.exports=function(e,t){n.forEach(e,(function(r,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=r,delete e[n])}))}},4109:(e,t,r)=>{"use strict";var n=r(4867),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,r,i,s={};return e?(n.forEach(e.split("\n"),(function(e){if(i=e.indexOf(":"),t=n.trim(e.substr(0,i)).toLowerCase(),r=n.trim(e.substr(i+1)),t){if(s[t]&&o.indexOf(t)>=0)return;s[t]="set-cookie"===t?(s[t]?s[t]:[]).concat([r]):s[t]?s[t]+", "+r:r}})),s):s}},8713:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},4875:(e,t,r)=>{"use strict";var n=r(7288).version,o={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){o[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));var i={};o.transitional=function(e,t,r){function o(e,t){return"[Axios v"+n+"] Transitional option '"+e+"'"+t+(r?". "+r:"")}return function(r,n,s){if(!1===e)throw new Error(o(n," has been removed"+(t?" in "+t:"")));return t&&!i[n]&&(i[n]=!0,console.warn(o(n," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,n,s)}},e.exports={assertOptions:function(e,t,r){if("object"!=typeof e)throw new TypeError("options must be an object");for(var n=Object.keys(e),o=n.length;o-- >0;){var i=n[o],s=t[i];if(s){var a=e[i],u=void 0===a||s(a,i,e);if(!0!==u)throw new TypeError("option "+i+" must be "+u)}else if(!0!==r)throw Error("Unknown option "+i)}},validators:o}},4867:(e,t,r)=>{"use strict";var n=r(1849),o=Object.prototype.toString;function i(e){return"[object Array]"===o.call(e)}function s(e){return void 0===e}function a(e){return null!==e&&"object"==typeof e}function u(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function c(e){return"[object Function]"===o.call(e)}function l(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),i(e))for(var r=0,n=e.length;r{t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const r="color: "+this.color;t.splice(1,0,r,"color: inherit");let n=0,o=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{"%%"!==e&&(n++,"%c"===e&&(o=n))})),t.splice(o,0,r)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=r(2447)(t);const{formatters:n}=e.exports;n.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},2447:(e,t,r)=>{e.exports=function(e){function t(e){let r,o,i,s=null;function a(...e){if(!a.enabled)return;const n=a,o=Number(new Date),i=o-(r||o);n.diff=i,n.prev=r,n.curr=o,r=o,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let s=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((r,o)=>{if("%%"===r)return"%";s++;const i=t.formatters[o];if("function"==typeof i){const t=e[s];r=i.call(n,t),e.splice(s,1),s--}return r})),t.formatArgs.call(n,e),(n.log||t.log).apply(n,e)}return a.namespace=e,a.useColors=t.useColors(),a.color=t.selectColor(e),a.extend=n,a.destroy=t.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(o!==t.namespaces&&(o=t.namespaces,i=t.enabled(e)),i),set:e=>{s=e}}),"function"==typeof t.init&&t.init(a),a}function n(e,r){const n=t(this.namespace+(void 0===r?":":r)+e);return n.log=this.log,n}function o(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names.map(o),...t.skips.map(o).map((e=>"-"+e))].join(",");return t.enable(""),e},t.enable=function(e){let r;t.save(e),t.namespaces=e,t.names=[],t.skips=[];const n=("string"==typeof e?e:"").split(/[\s,]+/),o=n.length;for(r=0;r{t[r]=e[r]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let r=0;for(let t=0;t{"undefined"==typeof process||"renderer"===process.type||!0===process.browser||process.__nwjs?e.exports=r(1227):e.exports=r(39)},39:(e,t,r)=>{const n=r(6224),o=r(3837);t.init=function(e){e.inspectOpts={};const r=Object.keys(t.inspectOpts);for(let n=0;n{}),"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),t.colors=[6,2,3,4,5,1];try{const e=r(2130);e&&(e.stderr||e).level>=2&&(t.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(e){}t.inspectOpts=Object.keys(process.env).filter((e=>/^debug_/i.test(e))).reduce(((e,t)=>{const r=t.substring(6).toLowerCase().replace(/_([a-z])/g,((e,t)=>t.toUpperCase()));let n=process.env[t];return n=!!/^(yes|on|true|enabled)$/i.test(n)||!/^(no|off|false|disabled)$/i.test(n)&&("null"===n?null:Number(n)),e[r]=n,e}),{}),e.exports=r(2447)(t);const{formatters:i}=e.exports;i.o=function(e){return this.inspectOpts.colors=this.useColors,o.inspect(e,this.inspectOpts).split("\n").map((e=>e.trim())).join(" ")},i.O=function(e){return this.inspectOpts.colors=this.useColors,o.inspect(e,this.inspectOpts)}},4076:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeHTML=t.decodeHTMLStrict=t.decodeXML=void 0;var o=n(r(9323)),i=n(r(9591)),s=n(r(2586)),a=n(r(26)),u=/&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;function c(e){var t=d(e);return function(e){return String(e).replace(u,t)}}t.decodeXML=c(s.default),t.decodeHTMLStrict=c(o.default);var l=function(e,t){return e65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+String.fromCharCode(e)};t.default=function(e){return e>=55296&&e<=57343||e>1114111?"�":(e in o.default&&(e=o.default[e]),i(e))}},7322:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.escapeUTF8=t.escape=t.encodeNonAsciiHTML=t.encodeHTML=t.encodeXML=void 0;var o=l(n(r(2586)).default),i=d(o);t.encodeXML=v(o);var s,a,u=l(n(r(9323)).default),c=d(u);function l(e){return Object.keys(e).sort().reduce((function(t,r){return t[e[r]]="&"+r+";",t}),{})}function d(e){for(var t=[],r=[],n=0,o=Object.keys(e);n1?p(e):e.charCodeAt(0)).toString(16).toUpperCase()+";"}var m=new RegExp(i.source+"|"+f.source,"g");function v(e){return function(t){return t.replace(m,(function(t){return e[t]||h(t)}))}}t.escape=function(e){return e.replace(m,h)},t.escapeUTF8=function(e){return e.replace(i,h)}},5863:(e,t,r)=>{"use strict";t.p1=void 0;r(4076),r(7322),r(7322);var n=r(4076);Object.defineProperty(t,"p1",{enumerable:!0,get:function(){return n.decodeHTML}})},259:(e,t,r)=>{"use strict";const n=r(7849).buildOptions,o={attributeNamePrefix:"@_",attrNodeName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataTagName:!1,cdataPositionChar:"\\c",format:!1,indentBy:" ",supressEmptyNode:!1,tagValueProcessor:function(e){return e},attrValueProcessor:function(e){return e}},i=["attributeNamePrefix","attrNodeName","textNodeName","ignoreAttributes","cdataTagName","cdataPositionChar","format","indentBy","supressEmptyNode","tagValueProcessor","attrValueProcessor"];function s(e){this.options=n(e,o,i),this.options.ignoreAttributes||this.options.attrNodeName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=h),this.options.cdataTagName?this.isCDATA=m:this.isCDATA=function(){return!1},this.replaceCDATAstr=a,this.replaceCDATAarr=u,this.options.format?(this.indentate=p,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine=""),this.options.supressEmptyNode?(this.buildTextNode=f,this.buildObjNode=l):(this.buildTextNode=d,this.buildObjNode=c),this.buildTextValNode=d,this.buildObjectNode=c}function a(e,t){return e=this.options.tagValueProcessor(""+e),""===this.options.cdataPositionChar||""===e?e+"");return e+this.newLine}function c(e,t,r,n){return r&&!e.includes("<")?this.indentate(n)+"<"+t+r+">"+e+""+t+this.tagEndChar:this.indentate(n)+"<"+t+r+this.tagEndChar+e+this.indentate(n)+""+t+this.tagEndChar}function l(e,t,r,n){return""!==e?this.buildObjectNode(e,t,r,n):this.indentate(n)+"<"+t+r+"/"+this.tagEndChar}function d(e,t,r,n){return this.indentate(n)+"<"+t+r+">"+this.options.tagValueProcessor(e)+""+t+this.tagEndChar}function f(e,t,r,n){return""!==e?this.buildTextValNode(e,t,r,n):this.indentate(n)+"<"+t+r+"/"+this.tagEndChar}function p(e){return this.options.indentBy.repeat(e)}function h(e){return!!e.startsWith(this.options.attributeNamePrefix)&&e.substr(this.attrPrefixLen)}function m(e){return e===this.options.cdataTagName}s.prototype.parse=function(e){return this.j2x(e,0).val},s.prototype.j2x=function(e,t){let r="",n="";const o=Object.keys(e),i=o.length;for(let s=0;s{"use strict";const n=function(e){return String.fromCharCode(e)},o={nilChar:n(176),missingChar:n(201),nilPremitive:n(175),missingPremitive:n(200),emptyChar:n(178),emptyValue:n(177),boundryChar:n(179),objStart:n(198),arrStart:n(204),arrayEnd:n(185)},i=[o.nilChar,o.nilPremitive,o.missingChar,o.missingPremitive,o.boundryChar,o.emptyChar,o.emptyValue,o.arrayEnd,o.objStart,o.arrStart],s=function(e,t,r){if("string"==typeof t)return e&&e[0]&&void 0!==e[0].val?a(e[0].val,t):a(e,t);{const i=void 0===(n=e)?o.missingChar:null===n?o.nilChar:!(n.child&&0===Object.keys(n.child).length&&(!n.attrsMap||0===Object.keys(n.attrsMap).length))||o.emptyChar;if(!0===i){let n="";if(Array.isArray(t)){n+=o.arrStart;const i=t[0],c=e.length;if("string"==typeof i)for(let t=0;t{"use strict";const n=r(7849),o=function(e,t,r){const i={};if((!e.child||n.isEmptyObject(e.child))&&(!e.attrsMap||n.isEmptyObject(e.attrsMap)))return n.isExist(e.val)?e.val:"";if(n.isExist(e.val)&&("string"!=typeof e.val||""!==e.val&&e.val!==t.cdataPositionChar)){const o=n.isTagNameInArrayMode(e.tagname,t.arrayMode,r);i[t.textNodeName]=o?[e.val]:e.val}n.merge(i,e.attrsMap,t.arrayMode);const s=Object.keys(e.child);for(let a=0;a1){i[u]=[];for(let r in e.child[u])e.child[u].hasOwnProperty(r)&&i[u].push(o(e.child[u][r],t,u))}else{const s=o(e.child[u][0],t,u),a=!0===t.arrayMode&&"object"==typeof s||n.isTagNameInArrayMode(u,t.arrayMode,r);i[u]=a?[s]:s}}return i};t.convertToJson=o},7702:(e,t,r)=>{"use strict";const n=r(7849),o=r(7849).buildOptions,i=r(3543),s=function(e,t,r){let o="{";const i=Object.keys(e.child);for(let r=0;r1){for(var u in o+='"'+a+'" : [ ',e.child[a])o+=s(e.child[a][u],t)+" , ";o=o.substr(0,o.length-1)+" ] "}else o+='"'+a+'" : '+s(e.child[a][0],t)+" ,"}return n.merge(o,e.attrsMap),n.isEmptyObject(o)?n.isExist(e.val)?e.val:"":(n.isExist(e.val)&&("string"!=typeof e.val||""!==e.val&&e.val!==t.cdataPositionChar)&&(o+='"'+t.textNodeName+'" : '+(!0!==(c=e.val)&&!1!==c&&isNaN(c)?'"'+c+'"':c)),","===o[o.length-1]&&(o=o.substr(0,o.length-2)),o+"}");var c};t.convertToJsonString=function(e,t){return(t=o(t,i.defaultOptions,i.props)).indentBy=t.indentBy||"",s(e,t,0)}},6965:(e,t,r)=>{"use strict";const n=r(284),o=r(3543),i=r(3543),s=r(7849).buildOptions,a=r(8501);t.parse=function(e,t,r){if(r){!0===r&&(r={});const t=a.validate(e,r);if(!0!==t)throw Error(t.err.msg)}t=s(t,i.defaultOptions,i.props);const u=o.getTraversalObj(e,t);return n.convertToJson(u,t)},t.convertTonimn=r(8398).convert2nimn,t.getTraversalObj=o.getTraversalObj,t.convertToJson=n.convertToJson,t.convertToJsonString=r(7702).convertToJsonString,t.validate=a.validate,t.j2xParser=r(259),t.parseToNimn=function(e,r,n){return t.convertTonimn(t.getTraversalObj(e,n),r,n)}},7849:(e,t)=>{"use strict";const r="[: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][: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\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",n=new RegExp("^"+r+"$");t.isExist=function(e){return void 0!==e},t.isEmptyObject=function(e){return 0===Object.keys(e).length},t.merge=function(e,t,r){if(t){const n=Object.keys(t),o=n.length;for(let i=0;i{"use strict";const n=r(7849),o={allowBooleanAttributes:!1},i=["allowBooleanAttributes"];function s(e,t){for(var r=t;t5&&"xml"===n)return f("InvalidXml","XML declaration allowed only at the start of the document.",h(e,t));if("?"==e[t]&&">"==e[t+1]){t++;break}}return t}function a(e,t){if(e.length>t+5&&"-"===e[t+1]&&"-"===e[t+2]){for(t+=3;t"===e[t+2]){t+=2;break}}else if(e.length>t+8&&"D"===e[t+1]&&"O"===e[t+2]&&"C"===e[t+3]&&"T"===e[t+4]&&"Y"===e[t+5]&&"P"===e[t+6]&&"E"===e[t+7]){let r=1;for(t+=8;t"===e[t]&&(r--,0===r))break}else if(e.length>t+9&&"["===e[t+1]&&"C"===e[t+2]&&"D"===e[t+3]&&"A"===e[t+4]&&"T"===e[t+5]&&"A"===e[t+6]&&"["===e[t+7])for(t+=8;t"===e[t+2]){t+=2;break}return t}function u(e,t){let r="",n="",o=!1;for(;t"===e[t]&&""===n){o=!0;break}r+=e[t]}return""===n&&{value:r,index:t,tagClosed:o}}t.validate=function(e,t){t=n.buildOptions(t,o,i);const r=[];let c=!1,p=!1;"\ufeff"===e[0]&&(e=e.substr(1));for(let o=0;o"!==e[o]&&" "!==e[o]&&"\t"!==e[o]&&"\n"!==e[o]&&"\r"!==e[o];o++)v+=e[o];if(v=v.trim(),"/"===v[v.length-1]&&(v=v.substring(0,v.length-1),o--),m=v,!n.isName(m)){let t;return t=0===v.trim().length?"There is an unnecessary space between tag name and backward slash ' ..'.":"Tag '"+v+"' is an invalid name.",f("InvalidTag",t,h(e,o))}const g=u(e,o);if(!1===g)return f("InvalidAttr","Attributes for '"+v+"' have open quote.",h(e,o));let y=g.value;if(o=g.index,"/"===y[y.length-1]){y=y.substring(0,y.length-1);const r=l(y,t);if(!0!==r)return f(r.err.code,r.err.msg,h(e,o-y.length+r.err.line));c=!0}else if(i){if(!g.tagClosed)return f("InvalidTag","Closing tag '"+v+"' doesn't have proper closing.",h(e,o));if(y.trim().length>0)return f("InvalidTag","Closing tag '"+v+"' can't have attributes or invalid starting.",h(e,o));{const t=r.pop();if(v!==t)return f("InvalidTag","Closing tag '"+t+"' is expected inplace of '"+v+"'.",h(e,o));0==r.length&&(p=!0)}}else{const n=l(y,t);if(!0!==n)return f(n.err.code,n.err.msg,h(e,o-y.length+n.err.line));if(!0===p)return f("InvalidXml","Multiple possible root nodes found.",h(e,o));r.push(v),c=!0}for(o++;o0)||f("InvalidXml","Invalid '"+JSON.stringify(r,null,4).replace(/\r?\n/g,"")+"' found.",1):f("InvalidXml","Start tag expected.",1)};const c=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function l(e,t){const r=n.getAllMatches(e,c),o={};for(let n=0;n{"use strict";e.exports=function(e,t,r){this.tagname=e,this.parent=t,this.child={},this.attrsMap={},this.val=r,this.addChild=function(e){Array.isArray(this.child[e.tagname])?this.child[e.tagname].push(e):this.child[e.tagname]=[e]}}},3543:(e,t,r)=>{"use strict";const n=r(7849),o=r(7849).buildOptions,i=r(6468);"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,n.nameRegexp),!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const s={attributeNamePrefix:"@_",attrNodeName:!1,textNodeName:"#text",ignoreAttributes:!0,ignoreNameSpace:!1,allowBooleanAttributes:!1,parseNodeValue:!0,parseAttributeValue:!1,arrayMode:!1,trimValues:!0,cdataTagName:!1,cdataPositionChar:"\\c",tagValueProcessor:function(e,t){return e},attrValueProcessor:function(e,t){return e},stopNodes:[]};t.defaultOptions=s;const a=["attributeNamePrefix","attrNodeName","textNodeName","ignoreAttributes","ignoreNameSpace","allowBooleanAttributes","parseNodeValue","parseAttributeValue","arrayMode","trimValues","cdataTagName","cdataPositionChar","tagValueProcessor","attrValueProcessor","parseTrueNumberOnly","stopNodes"];function u(e,t,r){return t&&(r.trimValues&&(t=t.trim()),t=l(t=r.tagValueProcessor(t,e),r.parseNodeValue,r.parseTrueNumberOnly)),t}function c(e,t){if(t.ignoreNameSpace){const t=e.split(":"),r="/"===e.charAt(0)?"/":"";if("xmlns"===t[0])return"";2===t.length&&(e=r+t[1])}return e}function l(e,t,r){if(t&&"string"==typeof e){let t;return""===e.trim()||isNaN(e)?t="true"===e||"false"!==e&&e:(-1!==e.indexOf("0x")?t=Number.parseInt(e,16):-1!==e.indexOf(".")?(t=Number.parseFloat(e),e=e.replace(/\.?0+$/,"")):t=Number.parseInt(e,10),r&&(t=String(t)===e?t:e)),t}return n.isExist(e)?e:""}t.props=a;const d=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])(.*?)\\3)?","g");function f(e,t){if(!t.ignoreAttributes&&"string"==typeof e){e=e.replace(/\r?\n/g," ");const r=n.getAllMatches(e,d),o=r.length,i={};for(let e=0;e"===t)return{data:n,index:o};"\t"===t&&(t=" ")}n+=t}}function h(e,t,r,n){const o=e.indexOf(t,r);if(-1===o)throw new Error(n);return o+t.length-1}t.getTraversalObj=function(e,t){e=e.replace(/\r\n?/g,"\n"),t=o(t,s,a);const r=new i("!xml");let c=r,l="";for(let r=0;r",r,"Closing Tag is not closed.");let i=e.substring(r+2,o).trim();if(t.ignoreNameSpace){const e=i.indexOf(":");-1!==e&&(i=i.substr(e+1))}c&&(c.val?c.val=n.getValue(c.val)+""+u(i,l,t):c.val=u(i,l,t)),t.stopNodes.length&&t.stopNodes.includes(c.tagname)&&(c.child=[],null==c.attrsMap&&(c.attrsMap={}),c.val=e.substr(c.startIndex+1,r-c.startIndex-1)),c=c.parent,l="",r=o}else if("?"===e[r+1])r=h(e,"?>",r,"Pi Tag is not closed.");else if("!--"===e.substr(r+1,3))r=h(e,"--\x3e",r,"Comment is not closed.");else if("!D"===e.substr(r+1,2)){const t=h(e,">",r,"DOCTYPE is not closed.");r=e.substring(r,t).indexOf("[")>=0?e.indexOf("]>",r)+1:t}else if("!["===e.substr(r+1,2)){const o=h(e,"]]>",r,"CDATA is not closed.")-2,s=e.substring(r+9,o);if(l&&(c.val=n.getValue(c.val)+""+u(c.tagname,l,t),l=""),t.cdataTagName){const e=new i(t.cdataTagName,c,s);c.addChild(e),c.val=n.getValue(c.val)+t.cdataPositionChar,s&&(e.val=s)}else c.val=(c.val||"")+(s||"");r=o+2}else{const o=p(e,r+1);let s=o.data;const a=o.index,d=s.indexOf(" ");let h=s,m=!0;if(-1!==d&&(h=s.substr(0,d).replace(/\s\s*$/,""),s=s.substr(d+1)),t.ignoreNameSpace){const e=h.indexOf(":");-1!==e&&(h=h.substr(e+1),m=h!==o.data.substr(e+1))}if(c&&l&&"!xml"!==c.tagname&&(c.val=n.getValue(c.val)+""+u(c.tagname,l,t)),s.length>0&&s.lastIndexOf("/")===s.length-1){"/"===h[h.length-1]?(h=h.substr(0,h.length-1),s=h):s=s.substr(0,s.length-1);const e=new i(h,c,"");h!==s&&(e.attrsMap=f(s,t)),c.addChild(e)}else{const e=new i(h,c);t.stopNodes.length&&t.stopNodes.includes(e.tagname)&&(e.startIndex=a),h!==s&&m&&(e.attrsMap=f(s,t)),c.addChild(e),c=e}l="",r=a}else l+=e[r];return r}},2261:(e,t,r)=>{var n;e.exports=function(){if(!n){try{n=r(5158)("follow-redirects")}catch(e){}"function"!=typeof n&&(n=function(){})}n.apply(null,arguments)}},938:(e,t,r)=>{var n=r(7310),o=n.URL,i=r(3685),s=r(5687),a=r(2781).Writable,u=r(9491),c=r(2261),l=["abort","aborted","connect","error","socket","timeout"],d=Object.create(null);l.forEach((function(e){d[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}}));var f=E("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),p=E("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded"),h=E("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),m=E("ERR_STREAM_WRITE_AFTER_END","write after end");function v(e,t){a.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(e){r._processResponse(e)},this._performRequest()}function g(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach((function(i){var s=i+":",a=r[s]=e[i],l=t[i]=Object.create(a);Object.defineProperties(l,{request:{value:function(e,i,a){if("string"==typeof e){var l=e;try{e=b(new o(l))}catch(t){e=n.parse(l)}}else o&&e instanceof o?e=b(e):(a=i,i=e,e={protocol:s});return"function"==typeof i&&(a=i,i=null),(i=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},e,i)).nativeProtocols=r,u.equal(i.protocol,s,"protocol mismatch"),c("options",i),new v(i,a)},configurable:!0,enumerable:!0,writable:!0},get:{value:function(e,t,r){var n=l.request(e,t,r);return n.end(),n},configurable:!0,enumerable:!0,writable:!0}})})),t}function y(){}function b(e){var t={protocol:e.protocol,hostname:e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,hash:e.hash,search:e.search,pathname:e.pathname,path:e.pathname+e.search,href:e.href};return""!==e.port&&(t.port=Number(e.port)),t}function w(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return null==r?void 0:String(r).trim()}function E(e,t){function r(e){Error.captureStackTrace(this,this.constructor),e?(this.message=t+": "+e.message,this.cause=e):this.message=t}return r.prototype=new Error,r.prototype.constructor=r,r.prototype.name="Error ["+e+"]",r.prototype.code=e,r}function A(e){for(var t=0;t=300&&t<400){if(A(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)return void this.emit("error",new p);((301===t||302===t)&&"POST"===this._options.method||303===t&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],w(/^content-/i,this._options.headers));var o,i=w(/^host$/i,this._options.headers),s=n.parse(this._currentUrl),a=i||s.host,u=/^\w+:/.test(r)?this._currentUrl:n.format(Object.assign(s,{host:a}));try{o=n.resolve(u,r)}catch(e){return void this.emit("error",new f(e))}c("redirecting to",o),this._isRedirect=!0;var l=n.parse(o);if(Object.assign(this._options,l),l.host===a||function(e,t){const r=e.length-t.length-1;return r>0&&"."===e[r]&&e.endsWith(t)}(l.host,a)||w(/^authorization$/i,this._options.headers),"function"==typeof this._options.beforeRedirect){var d={headers:e.headers};try{this._options.beforeRedirect.call(null,this._options,d)}catch(e){return void this.emit("error",e)}this._sanitizeOptions(this._options)}try{this._performRequest()}catch(e){this.emit("error",new f(e))}}else e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[]},e.exports=g({http:i,https:s}),e.exports.wrap=g},6560:e=>{"use strict";e.exports=(e,t=process.argv)=>{const r=e.startsWith("-")?"":1===e.length?"-":"--",n=t.indexOf(r+e),o=t.indexOf("--");return-1!==n&&(-1===o||n{var t=1e3,r=60*t,n=60*r,o=24*n;function i(e,t,r,n){var o=t>=1.5*r;return Math.round(e/r)+" "+n+(o?"s":"")}e.exports=function(e,s){s=s||{};var a,u,c=typeof e;if("string"===c&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var i=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(i){var s=parseFloat(i[1]);switch((i[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*s;case"weeks":case"week":case"w":return 6048e5*s;case"days":case"day":case"d":return s*o;case"hours":case"hour":case"hrs":case"hr":case"h":return s*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(e);if("number"===c&&isFinite(e))return s.long?(a=e,(u=Math.abs(a))>=o?i(a,u,o,"day"):u>=n?i(a,u,n,"hour"):u>=r?i(a,u,r,"minute"):u>=t?i(a,u,t,"second"):a+" ms"):function(e){var i=Math.abs(e);return i>=o?Math.round(e/o)+"d":i>=n?Math.round(e/n)+"h":i>=r?Math.round(e/r)+"m":i>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},2130:(e,t,r)=>{"use strict";const n=r(2037),o=r(6224),i=r(6560),{env:s}=process;let a;function u(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function c(e,t){if(0===a)return 0;if(i("color=16m")||i("color=full")||i("color=truecolor"))return 3;if(i("color=256"))return 2;if(e&&!t&&void 0===a)return 0;const r=a||0;if("dumb"===s.TERM)return r;if("win32"===process.platform){const e=n.release().split(".");return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in s)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some((e=>e in s))||"codeship"===s.CI_NAME?1:r;if("TEAMCITY_VERSION"in s)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(s.TEAMCITY_VERSION)?1:0;if("truecolor"===s.COLORTERM)return 3;if("TERM_PROGRAM"in s){const e=parseInt((s.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(s.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(s.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(s.TERM)||"COLORTERM"in s?1:r}i("no-color")||i("no-colors")||i("color=false")||i("color=never")?a=0:(i("color")||i("colors")||i("color=true")||i("color=always"))&&(a=1),"FORCE_COLOR"in s&&(a="true"===s.FORCE_COLOR?1:"false"===s.FORCE_COLOR?0:0===s.FORCE_COLOR.length?1:Math.min(parseInt(s.FORCE_COLOR,10),3)),e.exports={supportsColor:function(e){return u(c(e,e&&e.isTTY))},stdout:u(c(!0,o.isatty(1))),stderr:u(c(!0,o.isatty(2)))}},6703:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.IDPApi=t.IDPApiFactory=t.IDPApiFp=t.IDPApiAxiosParamCreator=t.HealthApi=t.HealthApiFactory=t.HealthApiFp=t.HealthApiAxiosParamCreator=t.GithubSlsRestApiSupportedVersions=t.GithubSlsRestApiNameIdFormatV1=t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum=t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum=void 0;const o=n(r(9669)),i=r(476),s=r(3347);var a,u;(t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum||(t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum={})).GithubLoginTokenEvent="GithubLoginTokenEvent",(u=t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum||(t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum={}))[u.NUMBER_1=1]="NUMBER_1",(a=t.GithubSlsRestApiNameIdFormatV1||(t.GithubSlsRestApiNameIdFormatV1={})).Id="id",a.Login="login",a.Email="email",a.EmailV2="emailV2",(t.GithubSlsRestApiSupportedVersions||(t.GithubSlsRestApiSupportedVersions={}))._20220101="20220101",t.HealthApiAxiosParamCreator=function(e){return{get:async(t={})=>{const r=new URL("/api/health",i.DUMMY_BASE_URL);let n;e&&(n=e.baseOptions);const o={method:"GET",...n,...t};(0,i.setSearchParams)(r,{});let s=n&&n.headers?n.headers:{};return o.headers={...s,...t.headers},{url:(0,i.toPathString)(r),options:o}}}},t.HealthApiFp=function(e){const r=(0,t.HealthApiAxiosParamCreator)(e);return{async get(t){const n=await r.get(t);return(0,i.createRequestFunction)(n,o.default,s.BASE_PATH,e)}}},t.HealthApiFactory=function(e,r,n){const o=(0,t.HealthApiFp)(e);return{get:e=>o.get(e).then((e=>e(n,r)))}};class c extends s.BaseAPI{get(e){return(0,t.HealthApiFp)(this.configuration).get(e).then((e=>e(this.axios,this.basePath)))}}t.HealthApi=c,t.IDPApiAxiosParamCreator=function(e){return{assumeRole:async(t,r,n,o={})=>{(0,i.assertParamExists)("assumeRole","role",t);const s="/api/v1/idp/roles/{role}/assume".replace("{role}",encodeURIComponent(String(t))),a=new URL(s,i.DUMMY_BASE_URL);let u;e&&(u=e.baseOptions);const c={method:"POST",...u,...o},l={},d={};await(0,i.setBearerAuthToObject)(l,e),void 0!==r&&(d.org=r),void 0!==n&&(d.provider=n),(0,i.setSearchParams)(a,d);let f=u&&u.headers?u.headers:{};return c.headers={...l,...f,...o.headers},{url:(0,i.toPathString)(a),options:c}},assumeRoleForBrowser:async(t,r,n,o={})=>{(0,i.assertParamExists)("assumeRoleForBrowser","role",t);const s="/api/v1/idp/roles/{role}/assume/browser".replace("{role}",encodeURIComponent(String(t))),a=new URL(s,i.DUMMY_BASE_URL);let u;e&&(u=e.baseOptions);const c={method:"GET",...u,...o},l={};void 0!==r&&(l.org=r),void 0!==n&&(l.provider=n),(0,i.setSearchParams)(a,l);let d=u&&u.headers?u.headers:{};return c.headers={...d,...o.headers},{url:(0,i.toPathString)(a),options:c}},assumeRoleForRepo:async(t,r,n,o,s,a={})=>{(0,i.assertParamExists)("assumeRoleForRepo","org",t),(0,i.assertParamExists)("assumeRoleForRepo","repo",r),(0,i.assertParamExists)("assumeRoleForRepo","role",n);const u="/api/v1/idp/orgs/{org}/repos/{repo}/roles/{role}/assume".replace("{org}",encodeURIComponent(String(t))).replace("{repo}",encodeURIComponent(String(r))).replace("{role}",encodeURIComponent(String(n))),c=new URL(u,i.DUMMY_BASE_URL);let l;e&&(l=e.baseOptions);const d={method:"POST",...l,...a},f={},p={};await(0,i.setBearerAuthToObject)(f,e),void 0!==o&&(p.provider=o),void 0!==s&&(p.commitSha=s),(0,i.setSearchParams)(c,p);let h=l&&l.headers?l.headers:{};return d.headers={...f,...h,...a.headers},{url:(0,i.toPathString)(c),options:d}},encrypt:async(t,r,n={})=>{(0,i.assertParamExists)("encrypt","org",t),(0,i.assertParamExists)("encrypt","githubSlsRestApiEncryptRequest",r);const o="/api/v1/idp/orgs/{org}/encrypt".replace("{org}",encodeURIComponent(String(t))),s=new URL(o,i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"POST",...a,...n},c={"Content-Type":"application/json"};(0,i.setSearchParams)(s,{});let l=a&&a.headers?a.headers:{};return u.headers={...c,...l,...n.headers},u.data=(0,i.serializeDataIfNeeded)(r,u,e),{url:(0,i.toPathString)(s),options:u}},getOrgConfig:async(t,r,n={})=>{(0,i.assertParamExists)("getOrgConfig","org",t);const o="/api/v1/idp/orgs/{org}/config".replace("{org}",encodeURIComponent(String(t))),s=new URL(o,i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"GET",...a,...n},c={},l={};await(0,i.setBearerAuthToObject)(c,e),void 0!==r&&(l.raw=r),(0,i.setSearchParams)(s,l);let d=a&&a.headers?a.headers:{};return u.headers={...c,...d,...n.headers},{url:(0,i.toPathString)(s),options:u}},getOrgMetadata:async(t,r={})=>{(0,i.assertParamExists)("getOrgMetadata","org",t);const n="/api/v1/idp/orgs/{org}/metadata".replace("{org}",encodeURIComponent(String(t))),o=new URL(n,i.DUMMY_BASE_URL);let s;e&&(s=e.baseOptions);const a={method:"GET",...s,...r};(0,i.setSearchParams)(o,{});let u=s&&s.headers?s.headers:{};return a.headers={...u,...r.headers},{url:(0,i.toPathString)(o),options:a}},listLogins:async(t,r,n={})=>{const o=new URL("/api/v1/idp/logins",i.DUMMY_BASE_URL);let s;e&&(s=e.baseOptions);const a={method:"GET",...s,...n},u={},c={};await(0,i.setBearerAuthToObject)(u,e),void 0!==t&&(c.org=t),void 0!==r&&(c.refresh=r),(0,i.setSearchParams)(o,c);let l=s&&s.headers?s.headers:{};return a.headers={...u,...l,...n.headers},{url:(0,i.toPathString)(o),options:a}},listOrgRepos:async(t={})=>{const r=new URL("/api/v1/idp/orgs",i.DUMMY_BASE_URL);let n;e&&(n=e.baseOptions);const o={method:"GET",...n,...t},s={};await(0,i.setBearerAuthToObject)(s,e),(0,i.setSearchParams)(r,{});let a=n&&n.headers?n.headers:{};return o.headers={...s,...a,...t.headers},{url:(0,i.toPathString)(r),options:o}},listRoles:async(t,r,n,o={})=>{const s=new URL("/api/v1/idp/roles",i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"GET",...a,...o},c={},l={};await(0,i.setBearerAuthToObject)(c,e),void 0!==t&&(l.org=t),void 0!==r&&(l.provider=r),void 0!==n&&(l.refresh=n),(0,i.setSearchParams)(s,l);let d=a&&a.headers?a.headers:{};return u.headers={...c,...d,...o.headers},{url:(0,i.toPathString)(s),options:u}},providerLogin:async(t,r,n={})=>{(0,i.assertParamExists)("providerLogin","provider",t);const o="/api/v1/idp/logins/{provider}/login".replace("{provider}",encodeURIComponent(String(t))),s=new URL(o,i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"POST",...a,...n},c={},l={};await(0,i.setBearerAuthToObject)(c,e),void 0!==r&&(l.org=r),(0,i.setSearchParams)(s,l);let d=a&&a.headers?a.headers:{};return u.headers={...c,...d,...n.headers},{url:(0,i.toPathString)(s),options:u}},refreshOrgRepoConfig:async(t,r,n,o,s={})=>{(0,i.assertParamExists)("refreshOrgRepoConfig","org",t),(0,i.assertParamExists)("refreshOrgRepoConfig","repo",r);const a="/api/v1/idp/orgs/{org}/repos/{repo}/config".replace("{org}",encodeURIComponent(String(t))).replace("{repo}",encodeURIComponent(String(r))),u=new URL(a,i.DUMMY_BASE_URL);let c;e&&(c=e.baseOptions);const l={method:"POST",...c,...s},d={},f={};await(0,i.setBearerAuthToObject)(d,e),void 0!==n&&(f.dryrun=n),void 0!==o&&(f.commitSha=o),(0,i.setSearchParams)(u,f);let p=c&&c.headers?c.headers:{};return l.headers={...d,...p,...s.headers},{url:(0,i.toPathString)(u),options:l}},setOrgAndRepo:async(t,r,n,o={})=>{(0,i.assertParamExists)("setOrgAndRepo","org",t),(0,i.assertParamExists)("setOrgAndRepo","repo",r);const s="/api/v1/idp/orgs/{org}/repos/{repo}".replace("{org}",encodeURIComponent(String(t))).replace("{repo}",encodeURIComponent(String(r))),a=new URL(s,i.DUMMY_BASE_URL);let u;e&&(u=e.baseOptions);const c={method:"POST",...u,...o},l={},d={};await(0,i.setBearerAuthToObject)(l,e),void 0!==n&&(d.force=n),(0,i.setSearchParams)(a,d);let f=u&&u.headers?u.headers:{};return c.headers={...l,...f,...o.headers},{url:(0,i.toPathString)(a),options:c}}}},t.IDPApiFp=function(e){const r=(0,t.IDPApiAxiosParamCreator)(e);return{async assumeRole(t,n,a,u){const c=await r.assumeRole(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)},async assumeRoleForBrowser(t,n,a,u){const c=await r.assumeRoleForBrowser(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)},async assumeRoleForRepo(t,n,a,u,c,l){const d=await r.assumeRoleForRepo(t,n,a,u,c,l);return(0,i.createRequestFunction)(d,o.default,s.BASE_PATH,e)},async encrypt(t,n,a){const u=await r.encrypt(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async getOrgConfig(t,n,a){const u=await r.getOrgConfig(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async getOrgMetadata(t,n){const a=await r.getOrgMetadata(t,n);return(0,i.createRequestFunction)(a,o.default,s.BASE_PATH,e)},async listLogins(t,n,a){const u=await r.listLogins(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async listOrgRepos(t){const n=await r.listOrgRepos(t);return(0,i.createRequestFunction)(n,o.default,s.BASE_PATH,e)},async listRoles(t,n,a,u){const c=await r.listRoles(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)},async providerLogin(t,n,a){const u=await r.providerLogin(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async refreshOrgRepoConfig(t,n,a,u,c){const l=await r.refreshOrgRepoConfig(t,n,a,u,c);return(0,i.createRequestFunction)(l,o.default,s.BASE_PATH,e)},async setOrgAndRepo(t,n,a,u){const c=await r.setOrgAndRepo(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)}}},t.IDPApiFactory=function(e,r,n){const o=(0,t.IDPApiFp)(e);return{assumeRole:(e,t,i,s)=>o.assumeRole(e,t,i,s).then((e=>e(n,r))),assumeRoleForBrowser:(e,t,i,s)=>o.assumeRoleForBrowser(e,t,i,s).then((e=>e(n,r))),assumeRoleForRepo:(e,t,i,s,a,u)=>o.assumeRoleForRepo(e,t,i,s,a,u).then((e=>e(n,r))),encrypt:(e,t,i)=>o.encrypt(e,t,i).then((e=>e(n,r))),getOrgConfig:(e,t,i)=>o.getOrgConfig(e,t,i).then((e=>e(n,r))),getOrgMetadata:(e,t)=>o.getOrgMetadata(e,t).then((e=>e(n,r))),listLogins:(e,t,i)=>o.listLogins(e,t,i).then((e=>e(n,r))),listOrgRepos:e=>o.listOrgRepos(e).then((e=>e(n,r))),listRoles:(e,t,i,s)=>o.listRoles(e,t,i,s).then((e=>e(n,r))),providerLogin:(e,t,i)=>o.providerLogin(e,t,i).then((e=>e(n,r))),refreshOrgRepoConfig:(e,t,i,s,a)=>o.refreshOrgRepoConfig(e,t,i,s,a).then((e=>e(n,r))),setOrgAndRepo:(e,t,i,s)=>o.setOrgAndRepo(e,t,i,s).then((e=>e(n,r)))}};class l extends s.BaseAPI{assumeRole(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).assumeRole(e,r,n,o).then((e=>e(this.axios,this.basePath)))}assumeRoleForBrowser(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).assumeRoleForBrowser(e,r,n,o).then((e=>e(this.axios,this.basePath)))}assumeRoleForRepo(e,r,n,o,i,s){return(0,t.IDPApiFp)(this.configuration).assumeRoleForRepo(e,r,n,o,i,s).then((e=>e(this.axios,this.basePath)))}encrypt(e,r,n){return(0,t.IDPApiFp)(this.configuration).encrypt(e,r,n).then((e=>e(this.axios,this.basePath)))}getOrgConfig(e,r,n){return(0,t.IDPApiFp)(this.configuration).getOrgConfig(e,r,n).then((e=>e(this.axios,this.basePath)))}getOrgMetadata(e,r){return(0,t.IDPApiFp)(this.configuration).getOrgMetadata(e,r).then((e=>e(this.axios,this.basePath)))}listLogins(e,r,n){return(0,t.IDPApiFp)(this.configuration).listLogins(e,r,n).then((e=>e(this.axios,this.basePath)))}listOrgRepos(e){return(0,t.IDPApiFp)(this.configuration).listOrgRepos(e).then((e=>e(this.axios,this.basePath)))}listRoles(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).listRoles(e,r,n,o).then((e=>e(this.axios,this.basePath)))}providerLogin(e,r,n){return(0,t.IDPApiFp)(this.configuration).providerLogin(e,r,n).then((e=>e(this.axios,this.basePath)))}refreshOrgRepoConfig(e,r,n,o,i){return(0,t.IDPApiFp)(this.configuration).refreshOrgRepoConfig(e,r,n,o,i).then((e=>e(this.axios,this.basePath)))}setOrgAndRepo(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).setOrgAndRepo(e,r,n,o).then((e=>e(this.axios,this.basePath)))}}t.IDPApi=l},3347:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RequiredError=t.BaseAPI=t.COLLECTION_FORMATS=t.BASE_PATH=void 0;const o=n(r(9669));t.BASE_PATH="https://sso.saml.to/github".replace(/\/+$/,""),t.COLLECTION_FORMATS={csv:",",ssv:" ",tsv:"\t",pipes:"|"},t.BaseAPI=class{basePath;axios;configuration;constructor(e,r=t.BASE_PATH,n=o.default){this.basePath=r,this.axios=n,e&&(this.configuration=e,this.basePath=e.basePath||this.basePath)}};class i extends Error{field;name="RequiredError";constructor(e,t){super(t),this.field=e}}t.RequiredError=i},476:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createRequestFunction=t.toPathString=t.serializeDataIfNeeded=t.setSearchParams=t.setOAuthToObject=t.setBearerAuthToObject=t.setBasicAuthToObject=t.setApiKeyToObject=t.assertParamExists=t.DUMMY_BASE_URL=void 0;const n=r(3347);t.DUMMY_BASE_URL="https://example.com",t.assertParamExists=function(e,t,r){if(null==r)throw new n.RequiredError(t,`Required parameter ${t} was null or undefined when calling ${e}.`)},t.setApiKeyToObject=async function(e,t,r){if(r&&r.apiKey){const n="function"==typeof r.apiKey?await r.apiKey(t):await r.apiKey;e[t]=n}},t.setBasicAuthToObject=function(e,t){t&&(t.username||t.password)&&(e.auth={username:t.username,password:t.password})},t.setBearerAuthToObject=async function(e,t){if(t&&t.accessToken){const r="function"==typeof t.accessToken?await t.accessToken():await t.accessToken;e.Authorization="Bearer "+r}},t.setOAuthToObject=async function(e,t,r,n){if(n&&n.accessToken){const o="function"==typeof n.accessToken?await n.accessToken(t,r):await n.accessToken;e.Authorization="Bearer "+o}},t.setSearchParams=function(e,...t){const r=new URLSearchParams(e.search);for(const e of t)for(const t in e)if(Array.isArray(e[t])){r.delete(t);for(const n of e[t])r.append(t,n)}else r.set(t,e[t]);e.search=r.toString()},t.serializeDataIfNeeded=function(e,t,r){const n="string"!=typeof e;return(n&&r&&r.isJsonMime?r.isJsonMime(t.headers["Content-Type"]):n)?JSON.stringify(void 0!==e?e:{}):e||""},t.toPathString=function(e){return e.pathname+e.search+e.hash},t.createRequestFunction=function(e,t,r,n){return(o=t,i=r)=>{const s={...e.options,url:(n?.basePath||i)+e.url};return o.request(s)}}},339:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=void 0,t.Configuration=class{apiKey;username;password;accessToken;basePath;baseOptions;formDataCtor;constructor(e={}){this.apiKey=e.apiKey,this.username=e.username,this.password=e.password,this.accessToken=e.accessToken,this.basePath=e.basePath,this.baseOptions=e.baseOptions,this.formDataCtor=e.formDataCtor}isJsonMime(e){const t=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==e&&(t.test(e)||"application/json-patch+json"===e.toLowerCase())}}},7918:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(6703),t),o(r(339),t)},1034:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Action=void 0;const o=r(2225),i=r(246),s=n(r(9669)),a=r(7918),{GITHUB_TOKEN:u,GITHUB_REPOSITORY:c,GITHUB_SHA:l,DEV:d,API_KEY:f}=process.env;t.Action=class{async run(){if(!u)return void(0,o.setFailed)("Missing GITHUB_TOKEN environment variable");const e=(0,o.getInput)("role",{required:!0}),t=(0,o.getInput)("provider",{required:!1}),r=(0,o.getInput)("region",{required:!1})||"us-east-1";if(t?(0,o.info)(`Assuming ${t} Role: ${e} in ${r}`):(0,o.info)(`Assuming Role: ${e} in ${r}`),!c)throw new Error("Missing GITHUB_REPOSITORY environment variable");const[n,i]=c.split("/");if(!n||!i)throw new Error(`Unable to parse owner and repo from GITHUB_REPOSITORY environment variable: ${c}`);const p=new a.Configuration({accessToken:u});d&&(p.basePath="https://sso-nonlive.saml.to/github",p.apiKey=f);const h=new a.IDPApi(p);let m;try{const{data:s}=await h.assumeRoleForRepo(n,i,e,t||void 0,l);(0,o.info)(`SAML Response generated for login to ${s.provider} via ${s.recipient}`),m=s.sdkOptions,s.attributes&&Object.keys(s.attributes).length&&((0,o.info)("\nSAML Attributes:"),Object.entries(s.attributes).forEach((([e,t])=>(0,o.info)(` - ${e}: ${t}`)))),await this.assumeAws(s,r)}catch(r){const a=m?` (${m.PrincipalArn}) `:" ";if((0,o.error)(`Unable to assume the role with an ARN of \`${e}\`${t?` (with explicitly specified provider: ${t})`:""}.\n\nPlease ensure all of the following:\n 1) the SAML Provider Metadata${a}in AWS IAM is correct. It can be obtained by downloading it from: https://saml.to/metadata/github/${n}\n 2) the SAML Provider ARN${a}is correct in the \`saml-to.yml\` configuration file, and in the format of \`arn:aws:iam::ACCOUNT_ID:saml-provider/PROVIDER_NAME\`,\n 3) the Role ARN (${e}) is correct in the \`saml-to.yml\` configuration file, and in the format of \`arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME\`\n 4) the Role (${e}) has the correct Trust Relationship ${m?`with ${m.PrincipalArn}`:""}, which can be found by opening the Role in AWS IAM, choosing the Trust Relationship tab, editing it to ensure it's in the following format:\n {\n "Version": "2012-10-17",\n "Statement": [\n {\n "Effect": "Allow",\n "Principal": {\n "Federated": "${m?m.PrincipalArn:"YOUR_PROVIDER_ARN"}"\n },\n "Action": "sts:AssumeRoleWithSAML",\n "Condition": {\n "StringEquals": {\n "SAML:aud": "https://signin.aws.amazon.com/saml"\n }\n }\n }\n ]\n }\n \nIf a provider or role hasn't been created or configured yet, please follow the configuration instructions: https://github.com/saml-to/assume-aws-role-action/blob/main/README.md#configuration`),s.default.isAxiosError(r)){let e=r.message;if(r.response&&r.response.data&&r.response.data.message&&(e=r.response.data.message),r.response&&403===r.response.status){const{data:e}=r.response;if(e){const{context:t}=e;t&&t.org&&t.repo&&t.configFile&&t.repo!==i&&(0,o.warning)(`The SAML.to configuration for \`${n}\` is managed in a separate repository:\n User/Org: ${t.org}\n Repo: ${t.repo}\n File: ${t.configFile}\n\nProvider configuration and role permissions must be made there.\n\nFor more information on configuration files managed in a separate repository, visit:\nhttps://docs.saml.to/usage/github-actions/assume-aws-role-action#centrally-managed-configuration\n`)}}throw new Error(`Error: ${e}`)}throw r}}async assumeAws(e,t){const r=new i.STS({region:t}),n=e.sdkOptions;if(!n)throw new Error("Missing sdk options from saml response");const s=await r.assumeRoleWithSAML({...n,SAMLAssertion:e.samlResponse});if(!(s.Credentials&&s.Credentials.AccessKeyId&&s.Credentials.SecretAccessKey&&s.Credentials.SessionToken))throw new Error("Missing credentials");const a=new i.STS({region:t,credentials:{accessKeyId:s.Credentials.AccessKeyId,secretAccessKey:s.Credentials.SecretAccessKey,sessionToken:s.Credentials.SessionToken}}),u=await a.getCallerIdentity({});(0,o.info)(`\nAssumed ${n.RoleArn}: ${u.Arn} (Credential expiration at ${s.Credentials.Expiration})`),(0,o.exportVariable)("AWS_DEFAULT_REGION",t),(0,o.exportVariable)("AWS_ACCESS_KEY_ID",s.Credentials.AccessKeyId),(0,o.exportVariable)("AWS_SECRET_ACCESS_KEY",s.Credentials.SecretAccessKey),(0,o.exportVariable)("AWS_SESSION_TOKEN",s.Credentials.SessionToken),(0,o.setOutput)("region",t),(0,o.setOutput)("accountId",u.Account),(0,o.setOutput)("userId",u.UserId),(0,o.setOutput)("roleArn",n.RoleArn),(0,o.setOutput)("assumedRoleArn",u.Arn),(0,o.setOutput)("accessKeyId",s.Credentials.AccessKeyId),(0,o.setOutput)("secretAccessKey",s.Credentials.SecretAccessKey),(0,o.setOutput)("sessionToken",s.Credentials.SessionToken)}}},6149:(e,t,r)=>{e.exports=r(5468)},5468:(e,t,r)=>{"use strict";r(1808);var n,o=r(4404),i=r(3685),s=r(5687),a=r(2361),u=(r(9491),r(3837));function c(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||i.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",(function(e,r,n,o){for(var i=d(r,n,o),s=0,a=t.requests.length;s=this.maxSockets?o.requests.push(i):o.createSocket(i,(function(t){function r(){o.emit("free",t,i)}function n(e){o.removeSocket(t),t.removeListener("free",r),t.removeListener("close",n),t.removeListener("agentRemove",n)}t.on("free",r),t.on("close",n),t.on("agentRemove",n),e.onSocket(t)}))},c.prototype.createSocket=function(e,t){var r=this,o={};r.sockets.push(o);var i=f({},r.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(i.localAddress=e.localAddress),i.proxyAuth&&(i.headers=i.headers||{},i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")),n("making CONNECT request");var s=r.request(i);function a(i,a,u){var c;return s.removeAllListeners(),a.removeAllListeners(),200!==i.statusCode?(n("tunneling socket could not be established, statusCode=%d",i.statusCode),a.destroy(),(c=new Error("tunneling socket could not be established, statusCode="+i.statusCode)).code="ECONNRESET",e.request.emit("error",c),void r.removeSocket(o)):u.length>0?(n("got illegal response body from proxy"),a.destroy(),(c=new Error("got illegal response body from proxy")).code="ECONNRESET",e.request.emit("error",c),void r.removeSocket(o)):(n("tunneling connection has established"),r.sockets[r.sockets.indexOf(o)]=a,t(a))}s.useChunkedEncodingByDefault=!1,s.once("response",(function(e){e.upgrade=!0})),s.once("upgrade",(function(e,t,r){process.nextTick((function(){a(e,t,r)}))})),s.once("connect",a),s.once("error",(function(t){s.removeAllListeners(),n("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var i=new Error("tunneling socket could not be established, cause="+t.message);i.code="ECONNRESET",e.request.emit("error",i),r.removeSocket(o)})),s.end()},c.prototype.removeSocket=function(e){var t=this.sockets.indexOf(e);if(-1!==t){this.sockets.splice(t,1);var r=this.requests.shift();r&&this.createSocket(r,(function(e){r.request.onSocket(e)}))}},n=process.env.NODE_DEBUG&&/\btunnel\b/.test(process.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments);"string"==typeof e[0]?e[0]="TUNNEL: "+e[0]:e.unshift("TUNNEL:"),console.error.apply(console,e)}:function(){},t.debug=n},9491:e=>{"use strict";e.exports=require("assert")},2361:e=>{"use strict";e.exports=require("events")},7147:e=>{"use strict";e.exports=require("fs")},3685:e=>{"use strict";e.exports=require("http")},5687:e=>{"use strict";e.exports=require("https")},1808:e=>{"use strict";e.exports=require("net")},2037:e=>{"use strict";e.exports=require("os")},1017:e=>{"use strict";e.exports=require("path")},2781:e=>{"use strict";e.exports=require("stream")},4404:e=>{"use strict";e.exports=require("tls")},6224:e=>{"use strict";e.exports=require("tty")},7310:e=>{"use strict";e.exports=require("url")},3837:e=>{"use strict";e.exports=require("util")},9796:e=>{"use strict";e.exports=require("zlib")},3600:e=>{"use strict";e.exports=JSON.parse('{"0":65533,"128":8364,"130":8218,"131":402,"132":8222,"133":8230,"134":8224,"135":8225,"136":710,"137":8240,"138":352,"139":8249,"140":338,"142":381,"145":8216,"146":8217,"147":8220,"148":8221,"149":8226,"150":8211,"151":8212,"152":732,"153":8482,"154":353,"155":8250,"156":339,"158":382,"159":376}')},9323:e=>{"use strict";e.exports=JSON.parse('{"Aacute":"Á","aacute":"á","Abreve":"Ă","abreve":"ă","ac":"∾","acd":"∿","acE":"∾̳","Acirc":"Â","acirc":"â","acute":"´","Acy":"А","acy":"а","AElig":"Æ","aelig":"æ","af":"","Afr":"𝔄","afr":"𝔞","Agrave":"À","agrave":"à","alefsym":"ℵ","aleph":"ℵ","Alpha":"Α","alpha":"α","Amacr":"Ā","amacr":"ā","amalg":"⨿","amp":"&","AMP":"&","andand":"⩕","And":"⩓","and":"∧","andd":"⩜","andslope":"⩘","andv":"⩚","ang":"∠","ange":"⦤","angle":"∠","angmsdaa":"⦨","angmsdab":"⦩","angmsdac":"⦪","angmsdad":"⦫","angmsdae":"⦬","angmsdaf":"⦭","angmsdag":"⦮","angmsdah":"⦯","angmsd":"∡","angrt":"∟","angrtvb":"⊾","angrtvbd":"⦝","angsph":"∢","angst":"Å","angzarr":"⍼","Aogon":"Ą","aogon":"ą","Aopf":"𝔸","aopf":"𝕒","apacir":"⩯","ap":"≈","apE":"⩰","ape":"≊","apid":"≋","apos":"\'","ApplyFunction":"","approx":"≈","approxeq":"≊","Aring":"Å","aring":"å","Ascr":"𝒜","ascr":"𝒶","Assign":"≔","ast":"*","asymp":"≈","asympeq":"≍","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","awconint":"∳","awint":"⨑","backcong":"≌","backepsilon":"϶","backprime":"‵","backsim":"∽","backsimeq":"⋍","Backslash":"∖","Barv":"⫧","barvee":"⊽","barwed":"⌅","Barwed":"⌆","barwedge":"⌅","bbrk":"⎵","bbrktbrk":"⎶","bcong":"≌","Bcy":"Б","bcy":"б","bdquo":"„","becaus":"∵","because":"∵","Because":"∵","bemptyv":"⦰","bepsi":"϶","bernou":"ℬ","Bernoullis":"ℬ","Beta":"Β","beta":"β","beth":"ℶ","between":"≬","Bfr":"𝔅","bfr":"𝔟","bigcap":"⋂","bigcirc":"◯","bigcup":"⋃","bigodot":"⨀","bigoplus":"⨁","bigotimes":"⨂","bigsqcup":"⨆","bigstar":"★","bigtriangledown":"▽","bigtriangleup":"△","biguplus":"⨄","bigvee":"⋁","bigwedge":"⋀","bkarow":"⤍","blacklozenge":"⧫","blacksquare":"▪","blacktriangle":"▴","blacktriangledown":"▾","blacktriangleleft":"◂","blacktriangleright":"▸","blank":"␣","blk12":"▒","blk14":"░","blk34":"▓","block":"█","bne":"=⃥","bnequiv":"≡⃥","bNot":"⫭","bnot":"⌐","Bopf":"𝔹","bopf":"𝕓","bot":"⊥","bottom":"⊥","bowtie":"⋈","boxbox":"⧉","boxdl":"┐","boxdL":"╕","boxDl":"╖","boxDL":"╗","boxdr":"┌","boxdR":"╒","boxDr":"╓","boxDR":"╔","boxh":"─","boxH":"═","boxhd":"┬","boxHd":"╤","boxhD":"╥","boxHD":"╦","boxhu":"┴","boxHu":"╧","boxhU":"╨","boxHU":"╩","boxminus":"⊟","boxplus":"⊞","boxtimes":"⊠","boxul":"┘","boxuL":"╛","boxUl":"╜","boxUL":"╝","boxur":"└","boxuR":"╘","boxUr":"╙","boxUR":"╚","boxv":"│","boxV":"║","boxvh":"┼","boxvH":"╪","boxVh":"╫","boxVH":"╬","boxvl":"┤","boxvL":"╡","boxVl":"╢","boxVL":"╣","boxvr":"├","boxvR":"╞","boxVr":"╟","boxVR":"╠","bprime":"‵","breve":"˘","Breve":"˘","brvbar":"¦","bscr":"𝒷","Bscr":"ℬ","bsemi":"⁏","bsim":"∽","bsime":"⋍","bsolb":"⧅","bsol":"\\\\","bsolhsub":"⟈","bull":"•","bullet":"•","bump":"≎","bumpE":"⪮","bumpe":"≏","Bumpeq":"≎","bumpeq":"≏","Cacute":"Ć","cacute":"ć","capand":"⩄","capbrcup":"⩉","capcap":"⩋","cap":"∩","Cap":"⋒","capcup":"⩇","capdot":"⩀","CapitalDifferentialD":"ⅅ","caps":"∩︀","caret":"⁁","caron":"ˇ","Cayleys":"ℭ","ccaps":"⩍","Ccaron":"Č","ccaron":"č","Ccedil":"Ç","ccedil":"ç","Ccirc":"Ĉ","ccirc":"ĉ","Cconint":"∰","ccups":"⩌","ccupssm":"⩐","Cdot":"Ċ","cdot":"ċ","cedil":"¸","Cedilla":"¸","cemptyv":"⦲","cent":"¢","centerdot":"·","CenterDot":"·","cfr":"𝔠","Cfr":"ℭ","CHcy":"Ч","chcy":"ч","check":"✓","checkmark":"✓","Chi":"Χ","chi":"χ","circ":"ˆ","circeq":"≗","circlearrowleft":"↺","circlearrowright":"↻","circledast":"⊛","circledcirc":"⊚","circleddash":"⊝","CircleDot":"⊙","circledR":"®","circledS":"Ⓢ","CircleMinus":"⊖","CirclePlus":"⊕","CircleTimes":"⊗","cir":"○","cirE":"⧃","cire":"≗","cirfnint":"⨐","cirmid":"⫯","cirscir":"⧂","ClockwiseContourIntegral":"∲","CloseCurlyDoubleQuote":"”","CloseCurlyQuote":"’","clubs":"♣","clubsuit":"♣","colon":":","Colon":"∷","Colone":"⩴","colone":"≔","coloneq":"≔","comma":",","commat":"@","comp":"∁","compfn":"∘","complement":"∁","complexes":"ℂ","cong":"≅","congdot":"⩭","Congruent":"≡","conint":"∮","Conint":"∯","ContourIntegral":"∮","copf":"𝕔","Copf":"ℂ","coprod":"∐","Coproduct":"∐","copy":"©","COPY":"©","copysr":"℗","CounterClockwiseContourIntegral":"∳","crarr":"↵","cross":"✗","Cross":"⨯","Cscr":"𝒞","cscr":"𝒸","csub":"⫏","csube":"⫑","csup":"⫐","csupe":"⫒","ctdot":"⋯","cudarrl":"⤸","cudarrr":"⤵","cuepr":"⋞","cuesc":"⋟","cularr":"↶","cularrp":"⤽","cupbrcap":"⩈","cupcap":"⩆","CupCap":"≍","cup":"∪","Cup":"⋓","cupcup":"⩊","cupdot":"⊍","cupor":"⩅","cups":"∪︀","curarr":"↷","curarrm":"⤼","curlyeqprec":"⋞","curlyeqsucc":"⋟","curlyvee":"⋎","curlywedge":"⋏","curren":"¤","curvearrowleft":"↶","curvearrowright":"↷","cuvee":"⋎","cuwed":"⋏","cwconint":"∲","cwint":"∱","cylcty":"⌭","dagger":"†","Dagger":"‡","daleth":"ℸ","darr":"↓","Darr":"↡","dArr":"⇓","dash":"‐","Dashv":"⫤","dashv":"⊣","dbkarow":"⤏","dblac":"˝","Dcaron":"Ď","dcaron":"ď","Dcy":"Д","dcy":"д","ddagger":"‡","ddarr":"⇊","DD":"ⅅ","dd":"ⅆ","DDotrahd":"⤑","ddotseq":"⩷","deg":"°","Del":"∇","Delta":"Δ","delta":"δ","demptyv":"⦱","dfisht":"⥿","Dfr":"𝔇","dfr":"𝔡","dHar":"⥥","dharl":"⇃","dharr":"⇂","DiacriticalAcute":"´","DiacriticalDot":"˙","DiacriticalDoubleAcute":"˝","DiacriticalGrave":"`","DiacriticalTilde":"˜","diam":"⋄","diamond":"⋄","Diamond":"⋄","diamondsuit":"♦","diams":"♦","die":"¨","DifferentialD":"ⅆ","digamma":"ϝ","disin":"⋲","div":"÷","divide":"÷","divideontimes":"⋇","divonx":"⋇","DJcy":"Ђ","djcy":"ђ","dlcorn":"⌞","dlcrop":"⌍","dollar":"$","Dopf":"𝔻","dopf":"𝕕","Dot":"¨","dot":"˙","DotDot":"⃜","doteq":"≐","doteqdot":"≑","DotEqual":"≐","dotminus":"∸","dotplus":"∔","dotsquare":"⊡","doublebarwedge":"⌆","DoubleContourIntegral":"∯","DoubleDot":"¨","DoubleDownArrow":"⇓","DoubleLeftArrow":"⇐","DoubleLeftRightArrow":"⇔","DoubleLeftTee":"⫤","DoubleLongLeftArrow":"⟸","DoubleLongLeftRightArrow":"⟺","DoubleLongRightArrow":"⟹","DoubleRightArrow":"⇒","DoubleRightTee":"⊨","DoubleUpArrow":"⇑","DoubleUpDownArrow":"⇕","DoubleVerticalBar":"∥","DownArrowBar":"⤓","downarrow":"↓","DownArrow":"↓","Downarrow":"⇓","DownArrowUpArrow":"⇵","DownBreve":"̑","downdownarrows":"⇊","downharpoonleft":"⇃","downharpoonright":"⇂","DownLeftRightVector":"⥐","DownLeftTeeVector":"⥞","DownLeftVectorBar":"⥖","DownLeftVector":"↽","DownRightTeeVector":"⥟","DownRightVectorBar":"⥗","DownRightVector":"⇁","DownTeeArrow":"↧","DownTee":"⊤","drbkarow":"⤐","drcorn":"⌟","drcrop":"⌌","Dscr":"𝒟","dscr":"𝒹","DScy":"Ѕ","dscy":"ѕ","dsol":"⧶","Dstrok":"Đ","dstrok":"đ","dtdot":"⋱","dtri":"▿","dtrif":"▾","duarr":"⇵","duhar":"⥯","dwangle":"⦦","DZcy":"Џ","dzcy":"џ","dzigrarr":"⟿","Eacute":"É","eacute":"é","easter":"⩮","Ecaron":"Ě","ecaron":"ě","Ecirc":"Ê","ecirc":"ê","ecir":"≖","ecolon":"≕","Ecy":"Э","ecy":"э","eDDot":"⩷","Edot":"Ė","edot":"ė","eDot":"≑","ee":"ⅇ","efDot":"≒","Efr":"𝔈","efr":"𝔢","eg":"⪚","Egrave":"È","egrave":"è","egs":"⪖","egsdot":"⪘","el":"⪙","Element":"∈","elinters":"⏧","ell":"ℓ","els":"⪕","elsdot":"⪗","Emacr":"Ē","emacr":"ē","empty":"∅","emptyset":"∅","EmptySmallSquare":"◻","emptyv":"∅","EmptyVerySmallSquare":"▫","emsp13":" ","emsp14":" ","emsp":" ","ENG":"Ŋ","eng":"ŋ","ensp":" ","Eogon":"Ę","eogon":"ę","Eopf":"𝔼","eopf":"𝕖","epar":"⋕","eparsl":"⧣","eplus":"⩱","epsi":"ε","Epsilon":"Ε","epsilon":"ε","epsiv":"ϵ","eqcirc":"≖","eqcolon":"≕","eqsim":"≂","eqslantgtr":"⪖","eqslantless":"⪕","Equal":"⩵","equals":"=","EqualTilde":"≂","equest":"≟","Equilibrium":"⇌","equiv":"≡","equivDD":"⩸","eqvparsl":"⧥","erarr":"⥱","erDot":"≓","escr":"ℯ","Escr":"ℰ","esdot":"≐","Esim":"⩳","esim":"≂","Eta":"Η","eta":"η","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","euro":"€","excl":"!","exist":"∃","Exists":"∃","expectation":"ℰ","exponentiale":"ⅇ","ExponentialE":"ⅇ","fallingdotseq":"≒","Fcy":"Ф","fcy":"ф","female":"♀","ffilig":"ffi","fflig":"ff","ffllig":"ffl","Ffr":"𝔉","ffr":"𝔣","filig":"fi","FilledSmallSquare":"◼","FilledVerySmallSquare":"▪","fjlig":"fj","flat":"♭","fllig":"fl","fltns":"▱","fnof":"ƒ","Fopf":"𝔽","fopf":"𝕗","forall":"∀","ForAll":"∀","fork":"⋔","forkv":"⫙","Fouriertrf":"ℱ","fpartint":"⨍","frac12":"½","frac13":"⅓","frac14":"¼","frac15":"⅕","frac16":"⅙","frac18":"⅛","frac23":"⅔","frac25":"⅖","frac34":"¾","frac35":"⅗","frac38":"⅜","frac45":"⅘","frac56":"⅚","frac58":"⅝","frac78":"⅞","frasl":"⁄","frown":"⌢","fscr":"𝒻","Fscr":"ℱ","gacute":"ǵ","Gamma":"Γ","gamma":"γ","Gammad":"Ϝ","gammad":"ϝ","gap":"⪆","Gbreve":"Ğ","gbreve":"ğ","Gcedil":"Ģ","Gcirc":"Ĝ","gcirc":"ĝ","Gcy":"Г","gcy":"г","Gdot":"Ġ","gdot":"ġ","ge":"≥","gE":"≧","gEl":"⪌","gel":"⋛","geq":"≥","geqq":"≧","geqslant":"⩾","gescc":"⪩","ges":"⩾","gesdot":"⪀","gesdoto":"⪂","gesdotol":"⪄","gesl":"⋛︀","gesles":"⪔","Gfr":"𝔊","gfr":"𝔤","gg":"≫","Gg":"⋙","ggg":"⋙","gimel":"ℷ","GJcy":"Ѓ","gjcy":"ѓ","gla":"⪥","gl":"≷","glE":"⪒","glj":"⪤","gnap":"⪊","gnapprox":"⪊","gne":"⪈","gnE":"≩","gneq":"⪈","gneqq":"≩","gnsim":"⋧","Gopf":"𝔾","gopf":"𝕘","grave":"`","GreaterEqual":"≥","GreaterEqualLess":"⋛","GreaterFullEqual":"≧","GreaterGreater":"⪢","GreaterLess":"≷","GreaterSlantEqual":"⩾","GreaterTilde":"≳","Gscr":"𝒢","gscr":"ℊ","gsim":"≳","gsime":"⪎","gsiml":"⪐","gtcc":"⪧","gtcir":"⩺","gt":">","GT":">","Gt":"≫","gtdot":"⋗","gtlPar":"⦕","gtquest":"⩼","gtrapprox":"⪆","gtrarr":"⥸","gtrdot":"⋗","gtreqless":"⋛","gtreqqless":"⪌","gtrless":"≷","gtrsim":"≳","gvertneqq":"≩︀","gvnE":"≩︀","Hacek":"ˇ","hairsp":" ","half":"½","hamilt":"ℋ","HARDcy":"Ъ","hardcy":"ъ","harrcir":"⥈","harr":"↔","hArr":"⇔","harrw":"↭","Hat":"^","hbar":"ℏ","Hcirc":"Ĥ","hcirc":"ĥ","hearts":"♥","heartsuit":"♥","hellip":"…","hercon":"⊹","hfr":"𝔥","Hfr":"ℌ","HilbertSpace":"ℋ","hksearow":"⤥","hkswarow":"⤦","hoarr":"⇿","homtht":"∻","hookleftarrow":"↩","hookrightarrow":"↪","hopf":"𝕙","Hopf":"ℍ","horbar":"―","HorizontalLine":"─","hscr":"𝒽","Hscr":"ℋ","hslash":"ℏ","Hstrok":"Ħ","hstrok":"ħ","HumpDownHump":"≎","HumpEqual":"≏","hybull":"⁃","hyphen":"‐","Iacute":"Í","iacute":"í","ic":"","Icirc":"Î","icirc":"î","Icy":"И","icy":"и","Idot":"İ","IEcy":"Е","iecy":"е","iexcl":"¡","iff":"⇔","ifr":"𝔦","Ifr":"ℑ","Igrave":"Ì","igrave":"ì","ii":"ⅈ","iiiint":"⨌","iiint":"∭","iinfin":"⧜","iiota":"℩","IJlig":"IJ","ijlig":"ij","Imacr":"Ī","imacr":"ī","image":"ℑ","ImaginaryI":"ⅈ","imagline":"ℐ","imagpart":"ℑ","imath":"ı","Im":"ℑ","imof":"⊷","imped":"Ƶ","Implies":"⇒","incare":"℅","in":"∈","infin":"∞","infintie":"⧝","inodot":"ı","intcal":"⊺","int":"∫","Int":"∬","integers":"ℤ","Integral":"∫","intercal":"⊺","Intersection":"⋂","intlarhk":"⨗","intprod":"⨼","InvisibleComma":"","InvisibleTimes":"","IOcy":"Ё","iocy":"ё","Iogon":"Į","iogon":"į","Iopf":"𝕀","iopf":"𝕚","Iota":"Ι","iota":"ι","iprod":"⨼","iquest":"¿","iscr":"𝒾","Iscr":"ℐ","isin":"∈","isindot":"⋵","isinE":"⋹","isins":"⋴","isinsv":"⋳","isinv":"∈","it":"","Itilde":"Ĩ","itilde":"ĩ","Iukcy":"І","iukcy":"і","Iuml":"Ï","iuml":"ï","Jcirc":"Ĵ","jcirc":"ĵ","Jcy":"Й","jcy":"й","Jfr":"𝔍","jfr":"𝔧","jmath":"ȷ","Jopf":"𝕁","jopf":"𝕛","Jscr":"𝒥","jscr":"𝒿","Jsercy":"Ј","jsercy":"ј","Jukcy":"Є","jukcy":"є","Kappa":"Κ","kappa":"κ","kappav":"ϰ","Kcedil":"Ķ","kcedil":"ķ","Kcy":"К","kcy":"к","Kfr":"𝔎","kfr":"𝔨","kgreen":"ĸ","KHcy":"Х","khcy":"х","KJcy":"Ќ","kjcy":"ќ","Kopf":"𝕂","kopf":"𝕜","Kscr":"𝒦","kscr":"𝓀","lAarr":"⇚","Lacute":"Ĺ","lacute":"ĺ","laemptyv":"⦴","lagran":"ℒ","Lambda":"Λ","lambda":"λ","lang":"⟨","Lang":"⟪","langd":"⦑","langle":"⟨","lap":"⪅","Laplacetrf":"ℒ","laquo":"«","larrb":"⇤","larrbfs":"⤟","larr":"←","Larr":"↞","lArr":"⇐","larrfs":"⤝","larrhk":"↩","larrlp":"↫","larrpl":"⤹","larrsim":"⥳","larrtl":"↢","latail":"⤙","lAtail":"⤛","lat":"⪫","late":"⪭","lates":"⪭︀","lbarr":"⤌","lBarr":"⤎","lbbrk":"❲","lbrace":"{","lbrack":"[","lbrke":"⦋","lbrksld":"⦏","lbrkslu":"⦍","Lcaron":"Ľ","lcaron":"ľ","Lcedil":"Ļ","lcedil":"ļ","lceil":"⌈","lcub":"{","Lcy":"Л","lcy":"л","ldca":"⤶","ldquo":"“","ldquor":"„","ldrdhar":"⥧","ldrushar":"⥋","ldsh":"↲","le":"≤","lE":"≦","LeftAngleBracket":"⟨","LeftArrowBar":"⇤","leftarrow":"←","LeftArrow":"←","Leftarrow":"⇐","LeftArrowRightArrow":"⇆","leftarrowtail":"↢","LeftCeiling":"⌈","LeftDoubleBracket":"⟦","LeftDownTeeVector":"⥡","LeftDownVectorBar":"⥙","LeftDownVector":"⇃","LeftFloor":"⌊","leftharpoondown":"↽","leftharpoonup":"↼","leftleftarrows":"⇇","leftrightarrow":"↔","LeftRightArrow":"↔","Leftrightarrow":"⇔","leftrightarrows":"⇆","leftrightharpoons":"⇋","leftrightsquigarrow":"↭","LeftRightVector":"⥎","LeftTeeArrow":"↤","LeftTee":"⊣","LeftTeeVector":"⥚","leftthreetimes":"⋋","LeftTriangleBar":"⧏","LeftTriangle":"⊲","LeftTriangleEqual":"⊴","LeftUpDownVector":"⥑","LeftUpTeeVector":"⥠","LeftUpVectorBar":"⥘","LeftUpVector":"↿","LeftVectorBar":"⥒","LeftVector":"↼","lEg":"⪋","leg":"⋚","leq":"≤","leqq":"≦","leqslant":"⩽","lescc":"⪨","les":"⩽","lesdot":"⩿","lesdoto":"⪁","lesdotor":"⪃","lesg":"⋚︀","lesges":"⪓","lessapprox":"⪅","lessdot":"⋖","lesseqgtr":"⋚","lesseqqgtr":"⪋","LessEqualGreater":"⋚","LessFullEqual":"≦","LessGreater":"≶","lessgtr":"≶","LessLess":"⪡","lesssim":"≲","LessSlantEqual":"⩽","LessTilde":"≲","lfisht":"⥼","lfloor":"⌊","Lfr":"𝔏","lfr":"𝔩","lg":"≶","lgE":"⪑","lHar":"⥢","lhard":"↽","lharu":"↼","lharul":"⥪","lhblk":"▄","LJcy":"Љ","ljcy":"љ","llarr":"⇇","ll":"≪","Ll":"⋘","llcorner":"⌞","Lleftarrow":"⇚","llhard":"⥫","lltri":"◺","Lmidot":"Ŀ","lmidot":"ŀ","lmoustache":"⎰","lmoust":"⎰","lnap":"⪉","lnapprox":"⪉","lne":"⪇","lnE":"≨","lneq":"⪇","lneqq":"≨","lnsim":"⋦","loang":"⟬","loarr":"⇽","lobrk":"⟦","longleftarrow":"⟵","LongLeftArrow":"⟵","Longleftarrow":"⟸","longleftrightarrow":"⟷","LongLeftRightArrow":"⟷","Longleftrightarrow":"⟺","longmapsto":"⟼","longrightarrow":"⟶","LongRightArrow":"⟶","Longrightarrow":"⟹","looparrowleft":"↫","looparrowright":"↬","lopar":"⦅","Lopf":"𝕃","lopf":"𝕝","loplus":"⨭","lotimes":"⨴","lowast":"∗","lowbar":"_","LowerLeftArrow":"↙","LowerRightArrow":"↘","loz":"◊","lozenge":"◊","lozf":"⧫","lpar":"(","lparlt":"⦓","lrarr":"⇆","lrcorner":"⌟","lrhar":"⇋","lrhard":"⥭","lrm":"","lrtri":"⊿","lsaquo":"‹","lscr":"𝓁","Lscr":"ℒ","lsh":"↰","Lsh":"↰","lsim":"≲","lsime":"⪍","lsimg":"⪏","lsqb":"[","lsquo":"‘","lsquor":"‚","Lstrok":"Ł","lstrok":"ł","ltcc":"⪦","ltcir":"⩹","lt":"<","LT":"<","Lt":"≪","ltdot":"⋖","lthree":"⋋","ltimes":"⋉","ltlarr":"⥶","ltquest":"⩻","ltri":"◃","ltrie":"⊴","ltrif":"◂","ltrPar":"⦖","lurdshar":"⥊","luruhar":"⥦","lvertneqq":"≨︀","lvnE":"≨︀","macr":"¯","male":"♂","malt":"✠","maltese":"✠","Map":"⤅","map":"↦","mapsto":"↦","mapstodown":"↧","mapstoleft":"↤","mapstoup":"↥","marker":"▮","mcomma":"⨩","Mcy":"М","mcy":"м","mdash":"—","mDDot":"∺","measuredangle":"∡","MediumSpace":" ","Mellintrf":"ℳ","Mfr":"𝔐","mfr":"𝔪","mho":"℧","micro":"µ","midast":"*","midcir":"⫰","mid":"∣","middot":"·","minusb":"⊟","minus":"−","minusd":"∸","minusdu":"⨪","MinusPlus":"∓","mlcp":"⫛","mldr":"…","mnplus":"∓","models":"⊧","Mopf":"𝕄","mopf":"𝕞","mp":"∓","mscr":"𝓂","Mscr":"ℳ","mstpos":"∾","Mu":"Μ","mu":"μ","multimap":"⊸","mumap":"⊸","nabla":"∇","Nacute":"Ń","nacute":"ń","nang":"∠⃒","nap":"≉","napE":"⩰̸","napid":"≋̸","napos":"ʼn","napprox":"≉","natural":"♮","naturals":"ℕ","natur":"♮","nbsp":" ","nbump":"≎̸","nbumpe":"≏̸","ncap":"⩃","Ncaron":"Ň","ncaron":"ň","Ncedil":"Ņ","ncedil":"ņ","ncong":"≇","ncongdot":"⩭̸","ncup":"⩂","Ncy":"Н","ncy":"н","ndash":"–","nearhk":"⤤","nearr":"↗","neArr":"⇗","nearrow":"↗","ne":"≠","nedot":"≐̸","NegativeMediumSpace":"","NegativeThickSpace":"","NegativeThinSpace":"","NegativeVeryThinSpace":"","nequiv":"≢","nesear":"⤨","nesim":"≂̸","NestedGreaterGreater":"≫","NestedLessLess":"≪","NewLine":"\\n","nexist":"∄","nexists":"∄","Nfr":"𝔑","nfr":"𝔫","ngE":"≧̸","nge":"≱","ngeq":"≱","ngeqq":"≧̸","ngeqslant":"⩾̸","nges":"⩾̸","nGg":"⋙̸","ngsim":"≵","nGt":"≫⃒","ngt":"≯","ngtr":"≯","nGtv":"≫̸","nharr":"↮","nhArr":"⇎","nhpar":"⫲","ni":"∋","nis":"⋼","nisd":"⋺","niv":"∋","NJcy":"Њ","njcy":"њ","nlarr":"↚","nlArr":"⇍","nldr":"‥","nlE":"≦̸","nle":"≰","nleftarrow":"↚","nLeftarrow":"⇍","nleftrightarrow":"↮","nLeftrightarrow":"⇎","nleq":"≰","nleqq":"≦̸","nleqslant":"⩽̸","nles":"⩽̸","nless":"≮","nLl":"⋘̸","nlsim":"≴","nLt":"≪⃒","nlt":"≮","nltri":"⋪","nltrie":"⋬","nLtv":"≪̸","nmid":"∤","NoBreak":"","NonBreakingSpace":" ","nopf":"𝕟","Nopf":"ℕ","Not":"⫬","not":"¬","NotCongruent":"≢","NotCupCap":"≭","NotDoubleVerticalBar":"∦","NotElement":"∉","NotEqual":"≠","NotEqualTilde":"≂̸","NotExists":"∄","NotGreater":"≯","NotGreaterEqual":"≱","NotGreaterFullEqual":"≧̸","NotGreaterGreater":"≫̸","NotGreaterLess":"≹","NotGreaterSlantEqual":"⩾̸","NotGreaterTilde":"≵","NotHumpDownHump":"≎̸","NotHumpEqual":"≏̸","notin":"∉","notindot":"⋵̸","notinE":"⋹̸","notinva":"∉","notinvb":"⋷","notinvc":"⋶","NotLeftTriangleBar":"⧏̸","NotLeftTriangle":"⋪","NotLeftTriangleEqual":"⋬","NotLess":"≮","NotLessEqual":"≰","NotLessGreater":"≸","NotLessLess":"≪̸","NotLessSlantEqual":"⩽̸","NotLessTilde":"≴","NotNestedGreaterGreater":"⪢̸","NotNestedLessLess":"⪡̸","notni":"∌","notniva":"∌","notnivb":"⋾","notnivc":"⋽","NotPrecedes":"⊀","NotPrecedesEqual":"⪯̸","NotPrecedesSlantEqual":"⋠","NotReverseElement":"∌","NotRightTriangleBar":"⧐̸","NotRightTriangle":"⋫","NotRightTriangleEqual":"⋭","NotSquareSubset":"⊏̸","NotSquareSubsetEqual":"⋢","NotSquareSuperset":"⊐̸","NotSquareSupersetEqual":"⋣","NotSubset":"⊂⃒","NotSubsetEqual":"⊈","NotSucceeds":"⊁","NotSucceedsEqual":"⪰̸","NotSucceedsSlantEqual":"⋡","NotSucceedsTilde":"≿̸","NotSuperset":"⊃⃒","NotSupersetEqual":"⊉","NotTilde":"≁","NotTildeEqual":"≄","NotTildeFullEqual":"≇","NotTildeTilde":"≉","NotVerticalBar":"∤","nparallel":"∦","npar":"∦","nparsl":"⫽⃥","npart":"∂̸","npolint":"⨔","npr":"⊀","nprcue":"⋠","nprec":"⊀","npreceq":"⪯̸","npre":"⪯̸","nrarrc":"⤳̸","nrarr":"↛","nrArr":"⇏","nrarrw":"↝̸","nrightarrow":"↛","nRightarrow":"⇏","nrtri":"⋫","nrtrie":"⋭","nsc":"⊁","nsccue":"⋡","nsce":"⪰̸","Nscr":"𝒩","nscr":"𝓃","nshortmid":"∤","nshortparallel":"∦","nsim":"≁","nsime":"≄","nsimeq":"≄","nsmid":"∤","nspar":"∦","nsqsube":"⋢","nsqsupe":"⋣","nsub":"⊄","nsubE":"⫅̸","nsube":"⊈","nsubset":"⊂⃒","nsubseteq":"⊈","nsubseteqq":"⫅̸","nsucc":"⊁","nsucceq":"⪰̸","nsup":"⊅","nsupE":"⫆̸","nsupe":"⊉","nsupset":"⊃⃒","nsupseteq":"⊉","nsupseteqq":"⫆̸","ntgl":"≹","Ntilde":"Ñ","ntilde":"ñ","ntlg":"≸","ntriangleleft":"⋪","ntrianglelefteq":"⋬","ntriangleright":"⋫","ntrianglerighteq":"⋭","Nu":"Ν","nu":"ν","num":"#","numero":"№","numsp":" ","nvap":"≍⃒","nvdash":"⊬","nvDash":"⊭","nVdash":"⊮","nVDash":"⊯","nvge":"≥⃒","nvgt":">⃒","nvHarr":"⤄","nvinfin":"⧞","nvlArr":"⤂","nvle":"≤⃒","nvlt":"<⃒","nvltrie":"⊴⃒","nvrArr":"⤃","nvrtrie":"⊵⃒","nvsim":"∼⃒","nwarhk":"⤣","nwarr":"↖","nwArr":"⇖","nwarrow":"↖","nwnear":"⤧","Oacute":"Ó","oacute":"ó","oast":"⊛","Ocirc":"Ô","ocirc":"ô","ocir":"⊚","Ocy":"О","ocy":"о","odash":"⊝","Odblac":"Ő","odblac":"ő","odiv":"⨸","odot":"⊙","odsold":"⦼","OElig":"Œ","oelig":"œ","ofcir":"⦿","Ofr":"𝔒","ofr":"𝔬","ogon":"˛","Ograve":"Ò","ograve":"ò","ogt":"⧁","ohbar":"⦵","ohm":"Ω","oint":"∮","olarr":"↺","olcir":"⦾","olcross":"⦻","oline":"‾","olt":"⧀","Omacr":"Ō","omacr":"ō","Omega":"Ω","omega":"ω","Omicron":"Ο","omicron":"ο","omid":"⦶","ominus":"⊖","Oopf":"𝕆","oopf":"𝕠","opar":"⦷","OpenCurlyDoubleQuote":"“","OpenCurlyQuote":"‘","operp":"⦹","oplus":"⊕","orarr":"↻","Or":"⩔","or":"∨","ord":"⩝","order":"ℴ","orderof":"ℴ","ordf":"ª","ordm":"º","origof":"⊶","oror":"⩖","orslope":"⩗","orv":"⩛","oS":"Ⓢ","Oscr":"𝒪","oscr":"ℴ","Oslash":"Ø","oslash":"ø","osol":"⊘","Otilde":"Õ","otilde":"õ","otimesas":"⨶","Otimes":"⨷","otimes":"⊗","Ouml":"Ö","ouml":"ö","ovbar":"⌽","OverBar":"‾","OverBrace":"⏞","OverBracket":"⎴","OverParenthesis":"⏜","para":"¶","parallel":"∥","par":"∥","parsim":"⫳","parsl":"⫽","part":"∂","PartialD":"∂","Pcy":"П","pcy":"п","percnt":"%","period":".","permil":"‰","perp":"⊥","pertenk":"‱","Pfr":"𝔓","pfr":"𝔭","Phi":"Φ","phi":"φ","phiv":"ϕ","phmmat":"ℳ","phone":"☎","Pi":"Π","pi":"π","pitchfork":"⋔","piv":"ϖ","planck":"ℏ","planckh":"ℎ","plankv":"ℏ","plusacir":"⨣","plusb":"⊞","pluscir":"⨢","plus":"+","plusdo":"∔","plusdu":"⨥","pluse":"⩲","PlusMinus":"±","plusmn":"±","plussim":"⨦","plustwo":"⨧","pm":"±","Poincareplane":"ℌ","pointint":"⨕","popf":"𝕡","Popf":"ℙ","pound":"£","prap":"⪷","Pr":"⪻","pr":"≺","prcue":"≼","precapprox":"⪷","prec":"≺","preccurlyeq":"≼","Precedes":"≺","PrecedesEqual":"⪯","PrecedesSlantEqual":"≼","PrecedesTilde":"≾","preceq":"⪯","precnapprox":"⪹","precneqq":"⪵","precnsim":"⋨","pre":"⪯","prE":"⪳","precsim":"≾","prime":"′","Prime":"″","primes":"ℙ","prnap":"⪹","prnE":"⪵","prnsim":"⋨","prod":"∏","Product":"∏","profalar":"⌮","profline":"⌒","profsurf":"⌓","prop":"∝","Proportional":"∝","Proportion":"∷","propto":"∝","prsim":"≾","prurel":"⊰","Pscr":"𝒫","pscr":"𝓅","Psi":"Ψ","psi":"ψ","puncsp":" ","Qfr":"𝔔","qfr":"𝔮","qint":"⨌","qopf":"𝕢","Qopf":"ℚ","qprime":"⁗","Qscr":"𝒬","qscr":"𝓆","quaternions":"ℍ","quatint":"⨖","quest":"?","questeq":"≟","quot":"\\"","QUOT":"\\"","rAarr":"⇛","race":"∽̱","Racute":"Ŕ","racute":"ŕ","radic":"√","raemptyv":"⦳","rang":"⟩","Rang":"⟫","rangd":"⦒","range":"⦥","rangle":"⟩","raquo":"»","rarrap":"⥵","rarrb":"⇥","rarrbfs":"⤠","rarrc":"⤳","rarr":"→","Rarr":"↠","rArr":"⇒","rarrfs":"⤞","rarrhk":"↪","rarrlp":"↬","rarrpl":"⥅","rarrsim":"⥴","Rarrtl":"⤖","rarrtl":"↣","rarrw":"↝","ratail":"⤚","rAtail":"⤜","ratio":"∶","rationals":"ℚ","rbarr":"⤍","rBarr":"⤏","RBarr":"⤐","rbbrk":"❳","rbrace":"}","rbrack":"]","rbrke":"⦌","rbrksld":"⦎","rbrkslu":"⦐","Rcaron":"Ř","rcaron":"ř","Rcedil":"Ŗ","rcedil":"ŗ","rceil":"⌉","rcub":"}","Rcy":"Р","rcy":"р","rdca":"⤷","rdldhar":"⥩","rdquo":"”","rdquor":"”","rdsh":"↳","real":"ℜ","realine":"ℛ","realpart":"ℜ","reals":"ℝ","Re":"ℜ","rect":"▭","reg":"®","REG":"®","ReverseElement":"∋","ReverseEquilibrium":"⇋","ReverseUpEquilibrium":"⥯","rfisht":"⥽","rfloor":"⌋","rfr":"𝔯","Rfr":"ℜ","rHar":"⥤","rhard":"⇁","rharu":"⇀","rharul":"⥬","Rho":"Ρ","rho":"ρ","rhov":"ϱ","RightAngleBracket":"⟩","RightArrowBar":"⇥","rightarrow":"→","RightArrow":"→","Rightarrow":"⇒","RightArrowLeftArrow":"⇄","rightarrowtail":"↣","RightCeiling":"⌉","RightDoubleBracket":"⟧","RightDownTeeVector":"⥝","RightDownVectorBar":"⥕","RightDownVector":"⇂","RightFloor":"⌋","rightharpoondown":"⇁","rightharpoonup":"⇀","rightleftarrows":"⇄","rightleftharpoons":"⇌","rightrightarrows":"⇉","rightsquigarrow":"↝","RightTeeArrow":"↦","RightTee":"⊢","RightTeeVector":"⥛","rightthreetimes":"⋌","RightTriangleBar":"⧐","RightTriangle":"⊳","RightTriangleEqual":"⊵","RightUpDownVector":"⥏","RightUpTeeVector":"⥜","RightUpVectorBar":"⥔","RightUpVector":"↾","RightVectorBar":"⥓","RightVector":"⇀","ring":"˚","risingdotseq":"≓","rlarr":"⇄","rlhar":"⇌","rlm":"","rmoustache":"⎱","rmoust":"⎱","rnmid":"⫮","roang":"⟭","roarr":"⇾","robrk":"⟧","ropar":"⦆","ropf":"𝕣","Ropf":"ℝ","roplus":"⨮","rotimes":"⨵","RoundImplies":"⥰","rpar":")","rpargt":"⦔","rppolint":"⨒","rrarr":"⇉","Rrightarrow":"⇛","rsaquo":"›","rscr":"𝓇","Rscr":"ℛ","rsh":"↱","Rsh":"↱","rsqb":"]","rsquo":"’","rsquor":"’","rthree":"⋌","rtimes":"⋊","rtri":"▹","rtrie":"⊵","rtrif":"▸","rtriltri":"⧎","RuleDelayed":"⧴","ruluhar":"⥨","rx":"℞","Sacute":"Ś","sacute":"ś","sbquo":"‚","scap":"⪸","Scaron":"Š","scaron":"š","Sc":"⪼","sc":"≻","sccue":"≽","sce":"⪰","scE":"⪴","Scedil":"Ş","scedil":"ş","Scirc":"Ŝ","scirc":"ŝ","scnap":"⪺","scnE":"⪶","scnsim":"⋩","scpolint":"⨓","scsim":"≿","Scy":"С","scy":"с","sdotb":"⊡","sdot":"⋅","sdote":"⩦","searhk":"⤥","searr":"↘","seArr":"⇘","searrow":"↘","sect":"§","semi":";","seswar":"⤩","setminus":"∖","setmn":"∖","sext":"✶","Sfr":"𝔖","sfr":"𝔰","sfrown":"⌢","sharp":"♯","SHCHcy":"Щ","shchcy":"щ","SHcy":"Ш","shcy":"ш","ShortDownArrow":"↓","ShortLeftArrow":"←","shortmid":"∣","shortparallel":"∥","ShortRightArrow":"→","ShortUpArrow":"↑","shy":"","Sigma":"Σ","sigma":"σ","sigmaf":"ς","sigmav":"ς","sim":"∼","simdot":"⩪","sime":"≃","simeq":"≃","simg":"⪞","simgE":"⪠","siml":"⪝","simlE":"⪟","simne":"≆","simplus":"⨤","simrarr":"⥲","slarr":"←","SmallCircle":"∘","smallsetminus":"∖","smashp":"⨳","smeparsl":"⧤","smid":"∣","smile":"⌣","smt":"⪪","smte":"⪬","smtes":"⪬︀","SOFTcy":"Ь","softcy":"ь","solbar":"⌿","solb":"⧄","sol":"/","Sopf":"𝕊","sopf":"𝕤","spades":"♠","spadesuit":"♠","spar":"∥","sqcap":"⊓","sqcaps":"⊓︀","sqcup":"⊔","sqcups":"⊔︀","Sqrt":"√","sqsub":"⊏","sqsube":"⊑","sqsubset":"⊏","sqsubseteq":"⊑","sqsup":"⊐","sqsupe":"⊒","sqsupset":"⊐","sqsupseteq":"⊒","square":"□","Square":"□","SquareIntersection":"⊓","SquareSubset":"⊏","SquareSubsetEqual":"⊑","SquareSuperset":"⊐","SquareSupersetEqual":"⊒","SquareUnion":"⊔","squarf":"▪","squ":"□","squf":"▪","srarr":"→","Sscr":"𝒮","sscr":"𝓈","ssetmn":"∖","ssmile":"⌣","sstarf":"⋆","Star":"⋆","star":"☆","starf":"★","straightepsilon":"ϵ","straightphi":"ϕ","strns":"¯","sub":"⊂","Sub":"⋐","subdot":"⪽","subE":"⫅","sube":"⊆","subedot":"⫃","submult":"⫁","subnE":"⫋","subne":"⊊","subplus":"⪿","subrarr":"⥹","subset":"⊂","Subset":"⋐","subseteq":"⊆","subseteqq":"⫅","SubsetEqual":"⊆","subsetneq":"⊊","subsetneqq":"⫋","subsim":"⫇","subsub":"⫕","subsup":"⫓","succapprox":"⪸","succ":"≻","succcurlyeq":"≽","Succeeds":"≻","SucceedsEqual":"⪰","SucceedsSlantEqual":"≽","SucceedsTilde":"≿","succeq":"⪰","succnapprox":"⪺","succneqq":"⪶","succnsim":"⋩","succsim":"≿","SuchThat":"∋","sum":"∑","Sum":"∑","sung":"♪","sup1":"¹","sup2":"²","sup3":"³","sup":"⊃","Sup":"⋑","supdot":"⪾","supdsub":"⫘","supE":"⫆","supe":"⊇","supedot":"⫄","Superset":"⊃","SupersetEqual":"⊇","suphsol":"⟉","suphsub":"⫗","suplarr":"⥻","supmult":"⫂","supnE":"⫌","supne":"⊋","supplus":"⫀","supset":"⊃","Supset":"⋑","supseteq":"⊇","supseteqq":"⫆","supsetneq":"⊋","supsetneqq":"⫌","supsim":"⫈","supsub":"⫔","supsup":"⫖","swarhk":"⤦","swarr":"↙","swArr":"⇙","swarrow":"↙","swnwar":"⤪","szlig":"ß","Tab":"\\t","target":"⌖","Tau":"Τ","tau":"τ","tbrk":"⎴","Tcaron":"Ť","tcaron":"ť","Tcedil":"Ţ","tcedil":"ţ","Tcy":"Т","tcy":"т","tdot":"⃛","telrec":"⌕","Tfr":"𝔗","tfr":"𝔱","there4":"∴","therefore":"∴","Therefore":"∴","Theta":"Θ","theta":"θ","thetasym":"ϑ","thetav":"ϑ","thickapprox":"≈","thicksim":"∼","ThickSpace":" ","ThinSpace":" ","thinsp":" ","thkap":"≈","thksim":"∼","THORN":"Þ","thorn":"þ","tilde":"˜","Tilde":"∼","TildeEqual":"≃","TildeFullEqual":"≅","TildeTilde":"≈","timesbar":"⨱","timesb":"⊠","times":"×","timesd":"⨰","tint":"∭","toea":"⤨","topbot":"⌶","topcir":"⫱","top":"⊤","Topf":"𝕋","topf":"𝕥","topfork":"⫚","tosa":"⤩","tprime":"‴","trade":"™","TRADE":"™","triangle":"▵","triangledown":"▿","triangleleft":"◃","trianglelefteq":"⊴","triangleq":"≜","triangleright":"▹","trianglerighteq":"⊵","tridot":"◬","trie":"≜","triminus":"⨺","TripleDot":"⃛","triplus":"⨹","trisb":"⧍","tritime":"⨻","trpezium":"⏢","Tscr":"𝒯","tscr":"𝓉","TScy":"Ц","tscy":"ц","TSHcy":"Ћ","tshcy":"ћ","Tstrok":"Ŧ","tstrok":"ŧ","twixt":"≬","twoheadleftarrow":"↞","twoheadrightarrow":"↠","Uacute":"Ú","uacute":"ú","uarr":"↑","Uarr":"↟","uArr":"⇑","Uarrocir":"⥉","Ubrcy":"Ў","ubrcy":"ў","Ubreve":"Ŭ","ubreve":"ŭ","Ucirc":"Û","ucirc":"û","Ucy":"У","ucy":"у","udarr":"⇅","Udblac":"Ű","udblac":"ű","udhar":"⥮","ufisht":"⥾","Ufr":"𝔘","ufr":"𝔲","Ugrave":"Ù","ugrave":"ù","uHar":"⥣","uharl":"↿","uharr":"↾","uhblk":"▀","ulcorn":"⌜","ulcorner":"⌜","ulcrop":"⌏","ultri":"◸","Umacr":"Ū","umacr":"ū","uml":"¨","UnderBar":"_","UnderBrace":"⏟","UnderBracket":"⎵","UnderParenthesis":"⏝","Union":"⋃","UnionPlus":"⊎","Uogon":"Ų","uogon":"ų","Uopf":"𝕌","uopf":"𝕦","UpArrowBar":"⤒","uparrow":"↑","UpArrow":"↑","Uparrow":"⇑","UpArrowDownArrow":"⇅","updownarrow":"↕","UpDownArrow":"↕","Updownarrow":"⇕","UpEquilibrium":"⥮","upharpoonleft":"↿","upharpoonright":"↾","uplus":"⊎","UpperLeftArrow":"↖","UpperRightArrow":"↗","upsi":"υ","Upsi":"ϒ","upsih":"ϒ","Upsilon":"Υ","upsilon":"υ","UpTeeArrow":"↥","UpTee":"⊥","upuparrows":"⇈","urcorn":"⌝","urcorner":"⌝","urcrop":"⌎","Uring":"Ů","uring":"ů","urtri":"◹","Uscr":"𝒰","uscr":"𝓊","utdot":"⋰","Utilde":"Ũ","utilde":"ũ","utri":"▵","utrif":"▴","uuarr":"⇈","Uuml":"Ü","uuml":"ü","uwangle":"⦧","vangrt":"⦜","varepsilon":"ϵ","varkappa":"ϰ","varnothing":"∅","varphi":"ϕ","varpi":"ϖ","varpropto":"∝","varr":"↕","vArr":"⇕","varrho":"ϱ","varsigma":"ς","varsubsetneq":"⊊︀","varsubsetneqq":"⫋︀","varsupsetneq":"⊋︀","varsupsetneqq":"⫌︀","vartheta":"ϑ","vartriangleleft":"⊲","vartriangleright":"⊳","vBar":"⫨","Vbar":"⫫","vBarv":"⫩","Vcy":"В","vcy":"в","vdash":"⊢","vDash":"⊨","Vdash":"⊩","VDash":"⊫","Vdashl":"⫦","veebar":"⊻","vee":"∨","Vee":"⋁","veeeq":"≚","vellip":"⋮","verbar":"|","Verbar":"‖","vert":"|","Vert":"‖","VerticalBar":"∣","VerticalLine":"|","VerticalSeparator":"❘","VerticalTilde":"≀","VeryThinSpace":" ","Vfr":"𝔙","vfr":"𝔳","vltri":"⊲","vnsub":"⊂⃒","vnsup":"⊃⃒","Vopf":"𝕍","vopf":"𝕧","vprop":"∝","vrtri":"⊳","Vscr":"𝒱","vscr":"𝓋","vsubnE":"⫋︀","vsubne":"⊊︀","vsupnE":"⫌︀","vsupne":"⊋︀","Vvdash":"⊪","vzigzag":"⦚","Wcirc":"Ŵ","wcirc":"ŵ","wedbar":"⩟","wedge":"∧","Wedge":"⋀","wedgeq":"≙","weierp":"℘","Wfr":"𝔚","wfr":"𝔴","Wopf":"𝕎","wopf":"𝕨","wp":"℘","wr":"≀","wreath":"≀","Wscr":"𝒲","wscr":"𝓌","xcap":"⋂","xcirc":"◯","xcup":"⋃","xdtri":"▽","Xfr":"𝔛","xfr":"𝔵","xharr":"⟷","xhArr":"⟺","Xi":"Ξ","xi":"ξ","xlarr":"⟵","xlArr":"⟸","xmap":"⟼","xnis":"⋻","xodot":"⨀","Xopf":"𝕏","xopf":"𝕩","xoplus":"⨁","xotime":"⨂","xrarr":"⟶","xrArr":"⟹","Xscr":"𝒳","xscr":"𝓍","xsqcup":"⨆","xuplus":"⨄","xutri":"△","xvee":"⋁","xwedge":"⋀","Yacute":"Ý","yacute":"ý","YAcy":"Я","yacy":"я","Ycirc":"Ŷ","ycirc":"ŷ","Ycy":"Ы","ycy":"ы","yen":"¥","Yfr":"𝔜","yfr":"𝔶","YIcy":"Ї","yicy":"ї","Yopf":"𝕐","yopf":"𝕪","Yscr":"𝒴","yscr":"𝓎","YUcy":"Ю","yucy":"ю","yuml":"ÿ","Yuml":"Ÿ","Zacute":"Ź","zacute":"ź","Zcaron":"Ž","zcaron":"ž","Zcy":"З","zcy":"з","Zdot":"Ż","zdot":"ż","zeetrf":"ℨ","ZeroWidthSpace":"","Zeta":"Ζ","zeta":"ζ","zfr":"𝔷","Zfr":"ℨ","ZHcy":"Ж","zhcy":"ж","zigrarr":"⇝","zopf":"𝕫","Zopf":"ℤ","Zscr":"𝒵","zscr":"𝓏","zwj":"","zwnj":""}')},9591:e=>{"use strict";e.exports=JSON.parse('{"Aacute":"Á","aacute":"á","Acirc":"Â","acirc":"â","acute":"´","AElig":"Æ","aelig":"æ","Agrave":"À","agrave":"à","amp":"&","AMP":"&","Aring":"Å","aring":"å","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","brvbar":"¦","Ccedil":"Ç","ccedil":"ç","cedil":"¸","cent":"¢","copy":"©","COPY":"©","curren":"¤","deg":"°","divide":"÷","Eacute":"É","eacute":"é","Ecirc":"Ê","ecirc":"ê","Egrave":"È","egrave":"è","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","frac12":"½","frac14":"¼","frac34":"¾","gt":">","GT":">","Iacute":"Í","iacute":"í","Icirc":"Î","icirc":"î","iexcl":"¡","Igrave":"Ì","igrave":"ì","iquest":"¿","Iuml":"Ï","iuml":"ï","laquo":"«","lt":"<","LT":"<","macr":"¯","micro":"µ","middot":"·","nbsp":" ","not":"¬","Ntilde":"Ñ","ntilde":"ñ","Oacute":"Ó","oacute":"ó","Ocirc":"Ô","ocirc":"ô","Ograve":"Ò","ograve":"ò","ordf":"ª","ordm":"º","Oslash":"Ø","oslash":"ø","Otilde":"Õ","otilde":"õ","Ouml":"Ö","ouml":"ö","para":"¶","plusmn":"±","pound":"£","quot":"\\"","QUOT":"\\"","raquo":"»","reg":"®","REG":"®","sect":"§","shy":"","sup1":"¹","sup2":"²","sup3":"³","szlig":"ß","THORN":"Þ","thorn":"þ","times":"×","Uacute":"Ú","uacute":"ú","Ucirc":"Û","ucirc":"û","Ugrave":"Ù","ugrave":"ù","uml":"¨","Uuml":"Ü","uuml":"ü","Yacute":"Ý","yacute":"ý","yen":"¥","yuml":"ÿ"}')},2586:e=>{"use strict";e.exports=JSON.parse('{"amp":"&","apos":"\'","gt":">","lt":"<","quot":"\\""}')}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{"use strict";const e=r(1034),t=r(2225);(async()=>{try{const t=new e.Action;await t.run()}catch(e){if(e instanceof Error)return(0,t.setFailed)(e.message),void(0,t.warning)("Need help? https://docs.saml.to/troubleshooting/get-help");throw e}process.exit(0)})()})()})();
+(()=>{var e={5265:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.issue=t.issueCommand=void 0;const s=i(r(2037)),a=r(4570);function u(e,t,r){const n=new c(e,t,r);process.stdout.write(n.toString()+s.EOL)}t.issueCommand=u,t.issue=function(e,t=""){u(e,{},t)};class c{constructor(e,t,r){e||(e="missing.command"),this.command=e,this.properties=t,this.message=r}toString(){let e="::"+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(const n in this.properties)if(this.properties.hasOwnProperty(n)){const o=this.properties[n];o&&(r?r=!1:e+=",",e+=`${n}=${t=o,a.toCommandValue(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}`)}}var t;return e+=`::${function(e){return a.toCommandValue(e).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}(this.message)}`,e}}},2225:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t},s=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}u((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.getIDToken=t.getState=t.saveState=t.group=t.endGroup=t.startGroup=t.info=t.notice=t.warning=t.error=t.debug=t.isDebug=t.setFailed=t.setCommandEcho=t.setOutput=t.getBooleanInput=t.getMultilineInput=t.getInput=t.addPath=t.setSecret=t.exportVariable=t.ExitCode=void 0;const a=r(5265),u=r(3108),c=r(4570),l=i(r(2037)),d=i(r(1017)),f=r(1526);var p;function h(e,t){const r=process.env[`INPUT_${e.replace(/ /g,"_").toUpperCase()}`]||"";if(t&&t.required&&!r)throw new Error(`Input required and not supplied: ${e}`);return t&&!1===t.trimWhitespace?r:r.trim()}function m(e,t={}){a.issueCommand("error",c.toCommandProperties(t),e instanceof Error?e.toString():e)}function v(e){a.issue("group",e)}function g(){a.issue("endgroup")}!function(e){e[e.Success=0]="Success",e[e.Failure=1]="Failure"}(p=t.ExitCode||(t.ExitCode={})),t.exportVariable=function(e,t){const r=c.toCommandValue(t);if(process.env[e]=r,process.env.GITHUB_ENV){const t="_GitHubActionsFileCommandDelimeter_",n=`${e}<<${t}${l.EOL}${r}${l.EOL}${t}`;u.issueCommand("ENV",n)}else a.issueCommand("set-env",{name:e},r)},t.setSecret=function(e){a.issueCommand("add-mask",{},e)},t.addPath=function(e){process.env.GITHUB_PATH?u.issueCommand("PATH",e):a.issueCommand("add-path",{},e),process.env.PATH=`${e}${d.delimiter}${process.env.PATH}`},t.getInput=h,t.getMultilineInput=function(e,t){return h(e,t).split("\n").filter((e=>""!==e))},t.getBooleanInput=function(e,t){const r=h(e,t);if(["true","True","TRUE"].includes(r))return!0;if(["false","False","FALSE"].includes(r))return!1;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${e}\nSupport boolean input list: \`true | True | TRUE | false | False | FALSE\``)},t.setOutput=function(e,t){process.stdout.write(l.EOL),a.issueCommand("set-output",{name:e},t)},t.setCommandEcho=function(e){a.issue("echo",e?"on":"off")},t.setFailed=function(e){process.exitCode=p.Failure,m(e)},t.isDebug=function(){return"1"===process.env.RUNNER_DEBUG},t.debug=function(e){a.issueCommand("debug",{},e)},t.error=m,t.warning=function(e,t={}){a.issueCommand("warning",c.toCommandProperties(t),e instanceof Error?e.toString():e)},t.notice=function(e,t={}){a.issueCommand("notice",c.toCommandProperties(t),e instanceof Error?e.toString():e)},t.info=function(e){process.stdout.write(e+l.EOL)},t.startGroup=v,t.endGroup=g,t.group=function(e,t){return s(this,void 0,void 0,(function*(){let r;v(e);try{r=yield t()}finally{g()}return r}))},t.saveState=function(e,t){a.issueCommand("save-state",{name:e},t)},t.getState=function(e){return process.env[`STATE_${e}`]||""},t.getIDToken=function(e){return s(this,void 0,void 0,(function*(){return yield f.OidcClient.getIDToken(e)}))}},3108:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),i=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.hasOwnProperty.call(e,r)&&n(t,e,r);return o(t,e),t};Object.defineProperty(t,"__esModule",{value:!0}),t.issueCommand=void 0;const s=i(r(7147)),a=i(r(2037)),u=r(4570);t.issueCommand=function(e,t){const r=process.env[`GITHUB_${e}`];if(!r)throw new Error(`Unable to find environment variable for file command ${e}`);if(!s.existsSync(r))throw new Error(`Missing file at path: ${r}`);s.appendFileSync(r,`${u.toCommandValue(t)}${a.EOL}`,{encoding:"utf8"})}},1526:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(o,i){function s(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){var t;e.done?o(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(s,a)}u((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.OidcClient=void 0;const o=r(9300),i=r(3885),s=r(2225);class a{static createHttpClient(e=!0,t=10){const r={allowRetries:e,maxRetries:t};return new o.HttpClient("actions/oidc-client",[new i.BearerCredentialHandler(a.getRequestToken())],r)}static getRequestToken(){const e=process.env.ACTIONS_ID_TOKEN_REQUEST_TOKEN;if(!e)throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable");return e}static getIDTokenUrl(){const e=process.env.ACTIONS_ID_TOKEN_REQUEST_URL;if(!e)throw new Error("Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable");return e}static getCall(e){var t;return n(this,void 0,void 0,(function*(){const r=a.createHttpClient(),n=yield r.getJson(e).catch((e=>{throw new Error(`Failed to get ID Token. \n \n Error Code : ${e.statusCode}\n \n Error Message: ${e.result.message}`)})),o=null===(t=n.result)||void 0===t?void 0:t.value;if(!o)throw new Error("Response json body do not have ID Token field");return o}))}static getIDToken(e){return n(this,void 0,void 0,(function*(){try{let t=a.getIDTokenUrl();e&&(t=`${t}&audience=${encodeURIComponent(e)}`),s.debug(`ID token url is ${t}`);const r=yield a.getCall(t);return s.setSecret(r),r}catch(e){throw new Error(`Error message: ${e.message}`)}}))}}t.OidcClient=a},4570:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.toCommandProperties=t.toCommandValue=void 0,t.toCommandValue=function(e){return null==e?"":"string"==typeof e||e instanceof String?e:JSON.stringify(e)},t.toCommandProperties=function(e){return Object.keys(e).length?{title:e.title,file:e.file,line:e.startLine,endLine:e.endLine,col:e.startColumn,endColumn:e.endColumn}:{}}},3885:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BasicCredentialHandler=class{constructor(e,t){this.username=e,this.password=t}prepareRequest(e){e.headers.Authorization="Basic "+Buffer.from(this.username+":"+this.password).toString("base64")}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}},t.BearerCredentialHandler=class{constructor(e){this.token=e}prepareRequest(e){e.headers.Authorization="Bearer "+this.token}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}},t.PersonalAccessTokenCredentialHandler=class{constructor(e){this.token=e}prepareRequest(e){e.headers.Authorization="Basic "+Buffer.from("PAT:"+this.token).toString("base64")}canHandleAuthentication(e){return!1}handleAuthentication(e,t,r){return null}}},9300:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(3685),o=r(5687),i=r(1686);let s;var a,u,c;!function(e){e[e.OK=200]="OK",e[e.MultipleChoices=300]="MultipleChoices",e[e.MovedPermanently=301]="MovedPermanently",e[e.ResourceMoved=302]="ResourceMoved",e[e.SeeOther=303]="SeeOther",e[e.NotModified=304]="NotModified",e[e.UseProxy=305]="UseProxy",e[e.SwitchProxy=306]="SwitchProxy",e[e.TemporaryRedirect=307]="TemporaryRedirect",e[e.PermanentRedirect=308]="PermanentRedirect",e[e.BadRequest=400]="BadRequest",e[e.Unauthorized=401]="Unauthorized",e[e.PaymentRequired=402]="PaymentRequired",e[e.Forbidden=403]="Forbidden",e[e.NotFound=404]="NotFound",e[e.MethodNotAllowed=405]="MethodNotAllowed",e[e.NotAcceptable=406]="NotAcceptable",e[e.ProxyAuthenticationRequired=407]="ProxyAuthenticationRequired",e[e.RequestTimeout=408]="RequestTimeout",e[e.Conflict=409]="Conflict",e[e.Gone=410]="Gone",e[e.TooManyRequests=429]="TooManyRequests",e[e.InternalServerError=500]="InternalServerError",e[e.NotImplemented=501]="NotImplemented",e[e.BadGateway=502]="BadGateway",e[e.ServiceUnavailable=503]="ServiceUnavailable",e[e.GatewayTimeout=504]="GatewayTimeout"}(a=t.HttpCodes||(t.HttpCodes={})),function(e){e.Accept="accept",e.ContentType="content-type"}(u=t.Headers||(t.Headers={})),function(e){e.ApplicationJson="application/json"}(c=t.MediaTypes||(t.MediaTypes={})),t.getProxyUrl=function(e){let t=i.getProxyUrl(new URL(e));return t?t.href:""};const l=[a.MovedPermanently,a.ResourceMoved,a.SeeOther,a.TemporaryRedirect,a.PermanentRedirect],d=[a.BadGateway,a.ServiceUnavailable,a.GatewayTimeout],f=["OPTIONS","GET","DELETE","HEAD"];class p extends Error{constructor(e,t){super(e),this.name="HttpClientError",this.statusCode=t,Object.setPrototypeOf(this,p.prototype)}}t.HttpClientError=p;class h{constructor(e){this.message=e}readBody(){return new Promise((async(e,t)=>{let r=Buffer.alloc(0);this.message.on("data",(e=>{r=Buffer.concat([r,e])})),this.message.on("end",(()=>{e(r.toString())}))}))}}t.HttpClientResponse=h,t.isHttps=function(e){return"https:"===new URL(e).protocol};class m{constructor(e,t,r){this._ignoreSslError=!1,this._allowRedirects=!0,this._allowRedirectDowngrade=!1,this._maxRedirects=50,this._allowRetries=!1,this._maxRetries=1,this._keepAlive=!1,this._disposed=!1,this.userAgent=e,this.handlers=t||[],this.requestOptions=r,r&&(null!=r.ignoreSslError&&(this._ignoreSslError=r.ignoreSslError),this._socketTimeout=r.socketTimeout,null!=r.allowRedirects&&(this._allowRedirects=r.allowRedirects),null!=r.allowRedirectDowngrade&&(this._allowRedirectDowngrade=r.allowRedirectDowngrade),null!=r.maxRedirects&&(this._maxRedirects=Math.max(r.maxRedirects,0)),null!=r.keepAlive&&(this._keepAlive=r.keepAlive),null!=r.allowRetries&&(this._allowRetries=r.allowRetries),null!=r.maxRetries&&(this._maxRetries=r.maxRetries))}options(e,t){return this.request("OPTIONS",e,null,t||{})}get(e,t){return this.request("GET",e,null,t||{})}del(e,t){return this.request("DELETE",e,null,t||{})}post(e,t,r){return this.request("POST",e,t,r||{})}patch(e,t,r){return this.request("PATCH",e,t,r||{})}put(e,t,r){return this.request("PUT",e,t,r||{})}head(e,t){return this.request("HEAD",e,null,t||{})}sendStream(e,t,r,n){return this.request(e,t,r,n)}async getJson(e,t={}){t[u.Accept]=this._getExistingOrDefaultHeader(t,u.Accept,c.ApplicationJson);let r=await this.get(e,t);return this._processResponse(r,this.requestOptions)}async postJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[u.Accept]=this._getExistingOrDefaultHeader(r,u.Accept,c.ApplicationJson),r[u.ContentType]=this._getExistingOrDefaultHeader(r,u.ContentType,c.ApplicationJson);let o=await this.post(e,n,r);return this._processResponse(o,this.requestOptions)}async putJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[u.Accept]=this._getExistingOrDefaultHeader(r,u.Accept,c.ApplicationJson),r[u.ContentType]=this._getExistingOrDefaultHeader(r,u.ContentType,c.ApplicationJson);let o=await this.put(e,n,r);return this._processResponse(o,this.requestOptions)}async patchJson(e,t,r={}){let n=JSON.stringify(t,null,2);r[u.Accept]=this._getExistingOrDefaultHeader(r,u.Accept,c.ApplicationJson),r[u.ContentType]=this._getExistingOrDefaultHeader(r,u.ContentType,c.ApplicationJson);let o=await this.patch(e,n,r);return this._processResponse(o,this.requestOptions)}async request(e,t,r,n){if(this._disposed)throw new Error("Client has already been disposed.");let o,i=new URL(t),s=this._prepareRequest(e,i,n),u=this._allowRetries&&-1!=f.indexOf(e)?this._maxRetries+1:1,c=0;for(;c0;){const a=o.message.headers.location;if(!a)break;let u=new URL(a);if("https:"==i.protocol&&i.protocol!=u.protocol&&!this._allowRedirectDowngrade)throw new Error("Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.");if(await o.readBody(),u.hostname!==i.hostname)for(let e in n)"authorization"===e.toLowerCase()&&delete n[e];s=this._prepareRequest(e,u,n),o=await this.requestRaw(s,r),t--}if(-1==d.indexOf(o.message.statusCode))return o;c+=1,c{this.requestRawWithCallback(e,t,(function(e,t){e&&n(e),r(t)}))}))}requestRawWithCallback(e,t,r){let n;"string"==typeof t&&(e.options.headers["Content-Length"]=Buffer.byteLength(t,"utf8"));let o=!1,i=(e,t)=>{o||(o=!0,r(e,t))},s=e.httpModule.request(e.options,(e=>{let t=new h(e);i(null,t)}));s.on("socket",(e=>{n=e})),s.setTimeout(this._socketTimeout||18e4,(()=>{n&&n.end(),i(new Error("Request timeout: "+e.options.path),null)})),s.on("error",(function(e){i(e,null)})),t&&"string"==typeof t&&s.write(t,"utf8"),t&&"string"!=typeof t?(t.on("close",(function(){s.end()})),t.pipe(s)):s.end()}getAgent(e){let t=new URL(e);return this._getAgent(t)}_prepareRequest(e,t,r){const i={};i.parsedUrl=t;const s="https:"===i.parsedUrl.protocol;i.httpModule=s?o:n;const a=s?443:80;return i.options={},i.options.host=i.parsedUrl.hostname,i.options.port=i.parsedUrl.port?parseInt(i.parsedUrl.port):a,i.options.path=(i.parsedUrl.pathname||"")+(i.parsedUrl.search||""),i.options.method=e,i.options.headers=this._mergeHeaders(r),null!=this.userAgent&&(i.options.headers["user-agent"]=this.userAgent),i.options.agent=this._getAgent(i.parsedUrl),this.handlers&&this.handlers.forEach((e=>{e.prepareRequest(i.options)})),i}_mergeHeaders(e){const t=e=>Object.keys(e).reduce(((t,r)=>(t[r.toLowerCase()]=e[r],t)),{});return this.requestOptions&&this.requestOptions.headers?Object.assign({},t(this.requestOptions.headers),t(e)):t(e||{})}_getExistingOrDefaultHeader(e,t,r){let n;var o;return this.requestOptions&&this.requestOptions.headers&&(n=(o=this.requestOptions.headers,Object.keys(o).reduce(((e,t)=>(e[t.toLowerCase()]=o[t],e)),{}))[t]),e[t]||n||r}_getAgent(e){let t,a=i.getProxyUrl(e),u=a&&a.hostname;if(this._keepAlive&&u&&(t=this._proxyAgent),this._keepAlive&&!u&&(t=this._agent),t)return t;const c="https:"===e.protocol;let l=100;if(this.requestOptions&&(l=this.requestOptions.maxSockets||n.globalAgent.maxSockets),u){s||(s=r(6149));const e={maxSockets:l,keepAlive:this._keepAlive,proxy:{...(a.username||a.password)&&{proxyAuth:`${a.username}:${a.password}`},host:a.hostname,port:a.port}};let n;const o="https:"===a.protocol;n=c?o?s.httpsOverHttps:s.httpsOverHttp:o?s.httpOverHttps:s.httpOverHttp,t=n(e),this._proxyAgent=t}if(this._keepAlive&&!t){const e={keepAlive:this._keepAlive,maxSockets:l};t=c?new o.Agent(e):new n.Agent(e),this._agent=t}return t||(t=c?o.globalAgent:n.globalAgent),c&&this._ignoreSslError&&(t.options=Object.assign(t.options||{},{rejectUnauthorized:!1})),t}_performExponentialBackoff(e){e=Math.min(10,e);const t=5*Math.pow(2,e);return new Promise((e=>setTimeout((()=>e()),t)))}static dateTimeDeserializer(e,t){if("string"==typeof t){let e=new Date(t);if(!isNaN(e.valueOf()))return e}return t}async _processResponse(e,t){return new Promise((async(r,n)=>{const o=e.message.statusCode,i={statusCode:o,result:null,headers:{}};let s,u;o==a.NotFound&&r(i);try{u=await e.readBody(),u&&u.length>0&&(s=t&&t.deserializeDates?JSON.parse(u,m.dateTimeDeserializer):JSON.parse(u),i.result=s),i.headers=e.message.headers}catch(e){}if(o>299){let e;e=s&&s.message?s.message:u&&u.length>0?u:"Failed request: ("+o+")";let t=new p(e,o);t.result=i.result,n(t)}else r(i)}))}}t.HttpClient=m},1686:(e,t)=>{"use strict";function r(e){if(!e.hostname)return!1;let t,r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;e.port?t=Number(e.port):"http:"===e.protocol?t=80:"https:"===e.protocol&&(t=443);let n=[e.hostname.toUpperCase()];"number"==typeof t&&n.push(`${n[0]}:${t}`);for(let e of r.split(",").map((e=>e.trim().toUpperCase())).filter((e=>e)))if(n.some((t=>t===e)))return!0;return!1}Object.defineProperty(t,"__esModule",{value:!0}),t.getProxyUrl=function(e){let t,n,o="https:"===e.protocol;return r(e)||(n=o?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY,n&&(t=new URL(n))),t},t.checkBypass=r},246:(e,t,r)=>{"use strict";r.r(t),r.d(t,{AssumeRoleCommand:()=>Xt,AssumeRoleRequest:()=>Me,AssumeRoleResponse:()=>Ue,AssumeRoleWithSAMLCommand:()=>Zt,AssumeRoleWithSAMLRequest:()=>Ve,AssumeRoleWithSAMLResponse:()=>Ge,AssumeRoleWithWebIdentityCommand:()=>Qt,AssumeRoleWithWebIdentityRequest:()=>Je,AssumeRoleWithWebIdentityResponse:()=>Ye,AssumedRoleUser:()=>De,Credentials:()=>je,DecodeAuthorizationMessageCommand:()=>er,DecodeAuthorizationMessageRequest:()=>Ze,DecodeAuthorizationMessageResponse:()=>Qe,ExpiredTokenException:()=>Be,FederatedUser:()=>st,GetAccessKeyInfoCommand:()=>tr,GetAccessKeyInfoRequest:()=>tt,GetAccessKeyInfoResponse:()=>rt,GetCallerIdentityCommand:()=>rr,GetCallerIdentityRequest:()=>nt,GetCallerIdentityResponse:()=>ot,GetFederationTokenCommand:()=>nr,GetFederationTokenRequest:()=>it,GetFederationTokenResponse:()=>at,GetSessionTokenCommand:()=>or,GetSessionTokenRequest:()=>ut,GetSessionTokenResponse:()=>ct,IDPCommunicationErrorException:()=>Xe,IDPRejectedClaimException:()=>Ke,InvalidAuthorizationMessageException:()=>et,InvalidIdentityTokenException:()=>We,MalformedPolicyDocumentException:()=>ze,PackedPolicyTooLargeException:()=>He,PolicyDescriptorType:()=>Le,RegionDisabledException:()=>$e,STS:()=>wi,STSClient:()=>bi,Tag:()=>Fe,decorateDefaultCredentialProvider:()=>Si,getDefaultRoleAssumer:()=>Ei,getDefaultRoleAssumerWithWebIdentity:()=>Ai});var n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},n(e,t)};function o(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var i=function(){return i=Object.assign||function(e){for(var t,r=1,n=arguments.length;r0&&o[o.length-1])||6!==i[0]&&2!==i[0])){s=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function l(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,i=r.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(o)throw o.error}}return s}function d(e,t,r){if(r||2===arguments.length)for(var n,o=0,i=t.length;o-1&&delete e.headers[i]}}catch(e){t={error:e}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(t)throw t.error}}return e},J=function(){function e(e){var t=e.applyChecksum,r=e.credentials,n=e.region,o=e.service,i=e.sha256,s=e.uriEscapePath,a=void 0===s||s;this.service=o,this.sha256=i,this.uriEscapePath=a,this.applyChecksum="boolean"!=typeof t||t,this.regionProvider=function(e){if("string"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e}(n),this.credentialProvider=function(e){if("object"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e}(r)}return e.prototype.presign=function(e,t){return void 0===t&&(t={}),a(this,void 0,void 0,(function(){var r,n,o,s,a,l,d,f,p,h,m,v,g,y,b,w,E,A,S,T,x,O,P,_;return u(this,(function(u){switch(u.label){case 0:return r=t.signingDate,n=void 0===r?new Date:r,o=t.expiresIn,s=void 0===o?3600:o,a=t.unsignableHeaders,l=t.unhoistableHeaders,d=t.signableHeaders,f=t.signingRegion,p=t.signingService,[4,this.credentialProvider()];case 1:return h=u.sent(),null==f?[3,2]:(v=f,[3,4]);case 2:return[4,this.regionProvider()];case 3:v=u.sent(),u.label=4;case 4:return m=v,g=Y(n),y=g.longDate,b=g.shortDate,s>604800?[2,Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future")]:(w=j(b,m,null!=p?p:this.service),E=function(e,t){var r,n,o;void 0===t&&(t={});var s="function"==typeof e.clone?e.clone():G(e),a=s.headers,u=s.query,l=void 0===u?{}:u;try{for(var d=c(Object.keys(a)),f=d.next();!f.done;f=d.next()){var p=f.value,h=p.toLowerCase();"x-amz-"!==h.substr(0,6)||(null===(o=t.unhoistableHeaders)||void 0===o?void 0:o.has(h))||(l[p]=a[p],delete a[p])}}catch(e){r={error:e}}finally{try{f&&!f.done&&(n=d.return)&&n.call(d)}finally{if(r)throw r.error}}return i(i({},e),{headers:a,query:l})}(W(e),{unhoistableHeaders:l}),h.sessionToken&&(E.query[R]=h.sessionToken),E.query["X-Amz-Algorithm"]="AWS4-HMAC-SHA256",E.query["X-Amz-Credential"]=h.accessKeyId+"/"+w,E.query["X-Amz-Date"]=y,E.query["X-Amz-Expires"]=s.toString(10),A=B(E,a,d),E.query["X-Amz-SignedHeaders"]=X(A),S=E.query,T=C,x=this.getSignature,O=[y,w,this.getSigningKey(h,m,b,p)],P=this.createCanonicalRequest,_=[E,A],[4,V(e,this.sha256)]);case 5:return[4,x.apply(this,O.concat([P.apply(this,_.concat([u.sent()]))]))];case 6:return S[T]=u.sent(),[2,E]}}))}))},e.prototype.sign=function(e,t){return a(this,void 0,void 0,(function(){return u(this,(function(r){return"string"==typeof e?[2,this.signString(e,t)]:e.headers&&e.payload?[2,this.signEvent(e,t)]:[2,this.signRequest(e,t)]}))}))},e.prototype.signEvent=function(e,t){var r=e.headers,n=e.payload,o=t.signingDate,i=void 0===o?new Date:o,s=t.priorSignature,c=t.signingRegion,l=t.signingService;return a(this,void 0,void 0,(function(){var e,t,o,a,d,f,p,h,m,v,g;return u(this,(function(u){switch(u.label){case 0:return null==c?[3,1]:(t=c,[3,3]);case 1:return[4,this.regionProvider()];case 2:t=u.sent(),u.label=3;case 3:return e=t,o=Y(i),a=o.shortDate,d=o.longDate,f=j(a,e,null!=l?l:this.service),[4,V({headers:{},body:n},this.sha256)];case 4:return p=u.sent(),(h=new this.sha256).update(r),v=S,[4,h.digest()];case 5:return m=v.apply(void 0,[u.sent()]),g=[D,d,f,s,m,p].join("\n"),[2,this.signString(g,{signingDate:i,signingRegion:e,signingService:l})]}}))}))},e.prototype.signString=function(e,t){var r=void 0===t?{}:t,n=r.signingDate,o=void 0===n?new Date:n,i=r.signingRegion,s=r.signingService;return a(this,void 0,void 0,(function(){var t,r,n,a,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:return[4,this.credentialProvider()];case 1:return t=u.sent(),null==i?[3,2]:(n=i,[3,4]);case 2:return[4,this.regionProvider()];case 3:n=u.sent(),u.label=4;case 4:return r=n,a=Y(o).shortDate,d=(l=this.sha256).bind,[4,this.getSigningKey(t,r,a,s)];case 5:return(c=new(d.apply(l,[void 0,u.sent()]))).update(e),f=S,[4,c.digest()];case 6:return[2,f.apply(void 0,[u.sent()])]}}))}))},e.prototype.signRequest=function(e,t){var r=void 0===t?{}:t,n=r.signingDate,o=void 0===n?new Date:n,i=r.signableHeaders,s=r.unsignableHeaders,l=r.signingRegion,d=r.signingService;return a(this,void 0,void 0,(function(){var t,r,n,a,f,p,h,m,v,g,y;return u(this,(function(u){switch(u.label){case 0:return[4,this.credentialProvider()];case 1:return t=u.sent(),null==l?[3,2]:(n=l,[3,4]);case 2:return[4,this.regionProvider()];case 3:n=u.sent(),u.label=4;case 4:return r=n,a=W(e),f=Y(o),p=f.longDate,h=f.shortDate,m=j(h,r,null!=d?d:this.service),a.headers[x]=p,t.sessionToken&&(a.headers[k]=t.sessionToken),[4,V(a,this.sha256)];case 5:return v=u.sent(),!function(e,t){var r,n;e=e.toLowerCase();try{for(var o=c(Object.keys(t)),i=o.next();!i.done;i=o.next())if(e===i.value.toLowerCase())return!0}catch(e){r={error:e}}finally{try{i&&!i.done&&(n=o.return)&&n.call(o)}finally{if(r)throw r.error}}return!1}(_,a.headers)&&this.applyChecksum&&(a.headers[_]=v),g=B(a,s,i),[4,this.getSignature(p,m,this.getSigningKey(t,r,h,d),this.createCanonicalRequest(a,g,v))];case 6:return y=u.sent(),a.headers[T]="AWS4-HMAC-SHA256 Credential="+t.accessKeyId+"/"+m+", SignedHeaders="+X(g)+", Signature="+y,[2,a]}}))}))},e.prototype.createCanonicalRequest=function(e,t,r){var n=Object.keys(t).sort();return e.method+"\n"+this.getCanonicalPath(e)+"\n"+function(e){var t,r,n=e.query,o=void 0===n?{}:n,i=[],s={},a=function(e){if(e.toLowerCase()===P)return"continue";i.push(e);var t=o[e];"string"==typeof t?s[e]=z(e)+"="+z(t):Array.isArray(t)&&(s[e]=t.slice(0).sort().reduce((function(t,r){return t.concat([z(e)+"="+z(r)])}),[]).join("&"))};try{for(var u=c(Object.keys(o).sort()),l=u.next();!l.done;l=u.next())a(l.value)}catch(e){t={error:e}}finally{try{l&&!l.done&&(r=u.return)&&r.call(u)}finally{if(t)throw t.error}}return i.map((function(e){return s[e]})).filter((function(e){return e})).join("&")}(e)+"\n"+n.map((function(e){return e+":"+t[e]})).join("\n")+"\n\n"+n.join(";")+"\n"+r},e.prototype.createStringToSign=function(e,t,r){return a(this,void 0,void 0,(function(){var n,o;return u(this,(function(i){switch(i.label){case 0:return(n=new this.sha256).update(r),[4,n.digest()];case 1:return o=i.sent(),[2,"AWS4-HMAC-SHA256\n"+e+"\n"+t+"\n"+S(o)]}}))}))},e.prototype.getCanonicalPath=function(e){var t=e.path;return this.uriEscapePath?"/"+encodeURIComponent(t.replace(/^\//,"")).replace(/%2F/g,"/"):t},e.prototype.getSignature=function(e,t,r,n){return a(this,void 0,void 0,(function(){var o,i,s,a,c;return u(this,(function(u){switch(u.label){case 0:return[4,this.createStringToSign(e,t,n)];case 1:return o=u.sent(),a=(s=this.sha256).bind,[4,r];case 2:return(i=new(a.apply(s,[void 0,u.sent()]))).update(o),c=S,[4,i.digest()];case 3:return[2,c.apply(void 0,[u.sent()])]}}))}))},e.prototype.getSigningKey=function(e,t,r,n){return function(e,t,r,n,o){return a(void 0,void 0,void 0,(function(){var i,s,a,l,d,f,p,h,m;return u(this,(function(u){switch(u.label){case 0:return[4,U(e,t.secretAccessKey,t.accessKeyId)];case 1:if(i=u.sent(),(s=r+":"+n+":"+o+":"+S(i)+":"+t.sessionToken)in F)return[2,F[s]];for(M.push(s);M.length>50;)delete F[M.shift()];a="AWS4"+t.secretAccessKey,u.label=2;case 2:u.trys.push([2,7,8,9]),l=c([r,n,o,L]),d=l.next(),u.label=3;case 3:return d.done?[3,6]:(f=d.value,[4,U(e,a,f)]);case 4:a=u.sent(),u.label=5;case 5:return d=l.next(),[3,3];case 6:return[3,9];case 7:return p=u.sent(),h={error:p},[3,9];case 8:try{d&&!d.done&&(m=l.return)&&m.call(l)}finally{if(h)throw h.error}return[7];case 9:return[2,F[s]=a]}}))}))}(this.sha256,e,r,t,n||this.service)},e}(),Y=function(e){var t,r=(t=e,function(e){return"number"==typeof e?new Date(1e3*e):"string"==typeof e?Number(e)?new Date(1e3*Number(e)):new Date(e):e}(t).toISOString().replace(/\.\d{3}Z$/,"Z")).replace(/[\-:]/g,"");return{longDate:r,shortDate:r.substr(0,8)}},X=function(e){return Object.keys(e).sort().join(";")},Z=function(e){if("object"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e},Q=function(){function e(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?":"!==e.protocol.substr(-1)?e.protocol+":":e.protocol:"https:",this.path=e.path?"/"!==e.path.charAt(0)?"/"+e.path:e.path:"/"}return e.isInstance=function(e){if(!e)return!1;var t=e;return"method"in t&&"protocol"in t&&"hostname"in t&&"path"in t&&"object"==typeof t.query&&"object"==typeof t.headers},e.prototype.clone=function(){var t,r=new e(i(i({},this),{headers:i({},this.headers)}));return r.query&&(r.query=(t=r.query,Object.keys(t).reduce((function(e,r){var n,o=t[r];return i(i({},e),((n={})[r]=Array.isArray(o)?d([],l(o)):o,n))}),{}))),r},e}(),ee=function(){function e(e){this.statusCode=e.statusCode,this.headers=e.headers||{},this.body=e.body}return e.isInstance=function(e){if(!e)return!1;var t=e;return"number"==typeof t.statusCode&&"object"==typeof t.headers},e}(),te=function(e){return new Date(Date.now()+e)},re=function(e,t){var r=Date.parse(e);return function(e,t){return Math.abs(te(t).getTime()-e)>=3e5}(r,t)?r-Date.now():t},ne={name:"awsAuthMiddleware",tags:["SIGNATURE","AWSAUTH"],relation:"after",toMiddleware:"retryMiddleware",override:!0},oe=function(e){return{applyToStack:function(t){t.addRelativeTo(function(e){return function(t,r){return function(n){return a(this,void 0,void 0,(function(){var o,s,a,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:return Q.isInstance(n.request)?[4,e.signer()]:[2,t(n)];case 1:return o=u.sent(),a=t,c=[i({},n)],f={},[4,o.sign(n.request,{signingDate:te(e.systemClockOffset),signingRegion:r.signing_region,signingService:r.signing_service})];case 2:return[4,a.apply(void 0,[i.apply(void 0,c.concat([(f.request=u.sent(),f)]))]).catch((function(t){throw t.ServerTime&&(e.systemClockOffset=re(t.ServerTime,e.systemClockOffset)),t}))];case 3:return s=u.sent(),l=s.response.headers,(d=l&&(l.date||l.Date))&&(e.systemClockOffset=re(d,e.systemClockOffset)),[2,s]}}))}))}}}(e),ne)}}},ie=function(){var e=[],t=[],r=new Set,n=function(r){return e.forEach((function(e){r.add(e.middleware,i({},e))})),t.forEach((function(e){r.addRelativeTo(e.middleware,i({},e))})),r},o=function(e){var t=[];return e.before.forEach((function(e){0===e.before.length&&0===e.after.length?t.push(e):t.push.apply(t,d([],l(o(e))))})),t.push(e),e.after.reverse().forEach((function(e){0===e.before.length&&0===e.after.length?t.push(e):t.push.apply(t,d([],l(o(e))))})),t},s={add:function(t,n){void 0===n&&(n={});var o=n.name,s=n.override,a=i({step:"initialize",priority:"normal",middleware:t},n);if(o){if(r.has(o)){if(!s)throw new Error("Duplicate middleware name '"+o+"'");var u=e.findIndex((function(e){return e.name===o})),c=e[u];if(c.step!==a.step||c.priority!==a.priority)throw new Error('"'+o+'" middleware with '+c.priority+" priority in "+c.step+" step cannot be overridden by same-name middleware with "+a.priority+" priority in "+a.step+" step.");e.splice(u,1)}r.add(o)}e.push(a)},addRelativeTo:function(e,n){var o=n.name,s=n.override,a=i({middleware:e},n);if(o){if(r.has(o)){if(!s)throw new Error("Duplicate middleware name '"+o+"'");var u=t.findIndex((function(e){return e.name===o})),c=t[u];if(c.toMiddleware!==a.toMiddleware||c.relation!==a.relation)throw new Error('"'+o+'" middleware '+c.relation+' "'+c.toMiddleware+'" middleware cannot be overridden by same-name middleware '+a.relation+' "'+a.toMiddleware+'" middleware.');t.splice(u,1)}r.add(o)}t.push(a)},clone:function(){return n(ie())},use:function(e){e.applyToStack(s)},remove:function(n){return"string"==typeof n?function(n){var o=!1,i=function(e){return!e.name||e.name!==n||(o=!0,r.delete(n),!1)};return e=e.filter(i),t=t.filter(i),o}(n):function(n){var o=!1,i=function(e){return e.middleware!==n||(o=!0,e.name&&r.delete(e.name),!1)};return e=e.filter(i),t=t.filter(i),o}(n)},removeByTag:function(n){var o=!1,i=function(e){var t=e.tags,i=e.name;return!t||!t.includes(n)||(i&&r.delete(i),o=!0,!1)};return e=e.filter(i),t=t.filter(i),o},concat:function(e){var t=n(ie());return t.use(e),t},applyToStack:n,resolve:function(r,n){var s,a;try{for(var u=c(function(){var r,n=[],s=[],a={};return e.forEach((function(e){var t=i(i({},e),{before:[],after:[]});t.name&&(a[t.name]=t),n.push(t)})),t.forEach((function(e){var t=i(i({},e),{before:[],after:[]});t.name&&(a[t.name]=t),s.push(t)})),s.forEach((function(e){if(e.toMiddleware){var t=a[e.toMiddleware];if(void 0===t)throw new Error(e.toMiddleware+" is not found when adding "+(e.name||"anonymous")+" middleware "+e.relation+" "+e.toMiddleware);"after"===e.relation&&t.after.push(e),"before"===e.relation&&t.before.push(e)}})),(r=n,r.sort((function(e,t){return se[t.step]-se[e.step]||ae[t.priority||"normal"]-ae[e.priority||"normal"]}))).map(o).reduce((function(e,t){return e.push.apply(e,d([],l(t))),e}),[]).map((function(e){return e.middleware}))}().reverse()),f=u.next();!f.done;f=u.next())r=(0,f.value)(r,n)}catch(e){s={error:e}}finally{try{f&&!f.done&&(a=u.return)&&a.call(u)}finally{if(s)throw s.error}}return r}};return s},se={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},ae={high:3,normal:2,low:1},ue=function(){function e(e){this.middlewareStack=ie(),this.config=e}return e.prototype.send=function(e,t,r){var n="function"!=typeof t?t:void 0,o="function"==typeof t?t:r,i=e.resolveMiddleware(this.middlewareStack,this.config,n);if(!o)return i(e).then((function(e){return e.output}));i(e).then((function(e){return o(null,e.output)}),(function(e){return o(e)})).catch((function(){}))},e.prototype.destroy=function(){this.config.requestHandler.destroy&&this.config.requestHandler.destroy()},e}(),ce=function(){this.middlewareStack=ie()},le="***SensitiveInformation***",de=Math.ceil(Math.pow(2,127)*(2-Math.pow(2,-23))),fe=function(e){var t=function(e){if(null!=e){if("number"==typeof e)return e;throw new TypeError("Expected number, got "+typeof e)}}(e);if(void 0!==t&&!Number.isNaN(t)&&t!==1/0&&t!==-1/0&&Math.abs(t)>de)throw new TypeError("Expected 32-bit float, got "+e);return t},pe=function(e){if(null!=e){if(Number.isInteger(e)&&!Number.isNaN(e))return e;throw new TypeError("Expected integer, got "+typeof e)}},he=function(e,t){var r=pe(e);if(void 0!==r&&me(r,t)!==r)throw new TypeError("Expected "+t+"-bit integer, got "+e);return r},me=function(e,t){switch(t){case 32:return Int32Array.of(e)[0];case 16:return Int16Array.of(e)[0];case 8:return Int8Array.of(e)[0]}},ve=function(e,t){if(null==e){if(t)throw new TypeError("Expected a non-null value for "+t);throw new TypeError("Expected a non-null value")}return e},ge=function(e){if(null!=e){if("object"==typeof e&&!Array.isArray(e))return e;throw new TypeError("Expected object, got "+typeof e)}},ye=function(e){if(null!=e){if("string"==typeof e)return e;throw new TypeError("Expected string, got "+typeof e)}},be=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,we=function(e){var t=e.match(be);if(null===t||t[0].length!==e.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(e)},Ee=function(e){return function(e){return he(e,32)}("string"==typeof e?we(e):e)},Ae=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],Se=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),Ce=function(e){if(null!=e){if("string"!=typeof e)throw new TypeError("RFC-3339 date-times must be expressed as strings");var t=Se.exec(e);if(!t)throw new TypeError("Invalid RFC-3339 date-time value");var r=l(t,8),n=(r[0],r[1]),o=r[2],i=r[3],s=r[4],a=r[5],u=r[6],c=r[7],d=function(e){return function(e){return he(e,16)}("string"==typeof e?we(e):e)}(ke(n)),f=Pe(o,"month",1,12),p=Pe(i,"day",1,31);return Re(d,f,p,{hours:s,minutes:a,seconds:u,fractionalMilliseconds:c})}},Re=function(e,t,r,n){var o=t-1;return xe(e,o,r),new Date(Date.UTC(e,o,r,Pe(n.hours,"hour",0,23),Pe(n.minutes,"minute",0,59),Pe(n.seconds,"seconds",0,60),_e(n.fractionalMilliseconds)))},Te=[31,28,31,30,31,30,31,31,30,31,30,31],xe=function(e,t,r){var n=Te[t];if(1===t&&Oe(e)&&(n=29),r>n)throw new TypeError("Invalid day for "+Ae[t]+" in "+e+": "+r)},Oe=function(e){return e%4==0&&(e%100!=0||e%400==0)},Pe=function(e,t,r,n){var o=function(e){return function(e){return he(e,8)}("string"==typeof e?we(e):e)}(ke(e));if(on)throw new TypeError(t+" must be between "+r+" and "+n+", inclusive");return o},_e=function(e){return null==e?0:1e3*function(e){return fe("string"==typeof e?we(e):e)}("0."+e)},ke=function(e){for(var t=0;t=300?[2,mt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,AssumedRoleUser:void 0,PackedPolicySize:void 0,SourceIdentity:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.AssumedRoleUser&&(r.AssumedRoleUser=Lt(e.AssumedRoleUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),void 0!==e.SourceIdentity&&(r.SourceIdentity=ye(e.SourceIdentity)),r}(r.AssumeRoleResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),Zt=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"AssumeRoleWithSAMLCommand",inputFilterSensitiveLog:Ve.filterSensitiveLog,outputFilterSensitiveLog:Ge.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};if(void 0!==e.RoleArn&&null!==e.RoleArn&&(r.RoleArn=e.RoleArn),void 0!==e.PrincipalArn&&null!==e.PrincipalArn&&(r.PrincipalArn=e.PrincipalArn),void 0!==e.SAMLAssertion&&null!==e.SAMLAssertion&&(r.SAMLAssertion=e.SAMLAssertion),void 0!==e.PolicyArns&&null!==e.PolicyArns){var n=kt(e.PolicyArns,t);Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["PolicyArns."+n]=o}))}return void 0!==e.Policy&&null!==e.Policy&&(r.Policy=e.Policy),void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),r}(e,t)),{Action:"AssumeRoleWithSAML",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,vt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,AssumedRoleUser:void 0,PackedPolicySize:void 0,Subject:void 0,SubjectType:void 0,Issuer:void 0,Audience:void 0,NameQualifier:void 0,SourceIdentity:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.AssumedRoleUser&&(r.AssumedRoleUser=Lt(e.AssumedRoleUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),void 0!==e.Subject&&(r.Subject=ye(e.Subject)),void 0!==e.SubjectType&&(r.SubjectType=ye(e.SubjectType)),void 0!==e.Issuer&&(r.Issuer=ye(e.Issuer)),void 0!==e.Audience&&(r.Audience=ye(e.Audience)),void 0!==e.NameQualifier&&(r.NameQualifier=ye(e.NameQualifier)),void 0!==e.SourceIdentity&&(r.SourceIdentity=ye(e.SourceIdentity)),r}(r.AssumeRoleWithSAMLResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),Qt=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"AssumeRoleWithWebIdentityCommand",inputFilterSensitiveLog:Je.filterSensitiveLog,outputFilterSensitiveLog:Ye.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};if(void 0!==e.RoleArn&&null!==e.RoleArn&&(r.RoleArn=e.RoleArn),void 0!==e.RoleSessionName&&null!==e.RoleSessionName&&(r.RoleSessionName=e.RoleSessionName),void 0!==e.WebIdentityToken&&null!==e.WebIdentityToken&&(r.WebIdentityToken=e.WebIdentityToken),void 0!==e.ProviderId&&null!==e.ProviderId&&(r.ProviderId=e.ProviderId),void 0!==e.PolicyArns&&null!==e.PolicyArns){var n=kt(e.PolicyArns,t);Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["PolicyArns."+n]=o}))}return void 0!==e.Policy&&null!==e.Policy&&(r.Policy=e.Policy),void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),r}(e,t)),{Action:"AssumeRoleWithWebIdentity",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,gt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,SubjectFromWebIdentityToken:void 0,AssumedRoleUser:void 0,PackedPolicySize:void 0,Provider:void 0,Audience:void 0,SourceIdentity:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.SubjectFromWebIdentityToken&&(r.SubjectFromWebIdentityToken=ye(e.SubjectFromWebIdentityToken)),void 0!==e.AssumedRoleUser&&(r.AssumedRoleUser=Lt(e.AssumedRoleUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),void 0!==e.Provider&&(r.Provider=ye(e.Provider)),void 0!==e.Audience&&(r.Audience=ye(e.Audience)),void 0!==e.SourceIdentity&&(r.SourceIdentity=ye(e.SourceIdentity)),r}(r.AssumeRoleWithWebIdentityResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),er=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"DecodeAuthorizationMessageCommand",inputFilterSensitiveLog:Ze.filterSensitiveLog,outputFilterSensitiveLog:Qe.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};return void 0!==e.EncodedMessage&&null!==e.EncodedMessage&&(r.EncodedMessage=e.EncodedMessage),r}(e)),{Action:"DecodeAuthorizationMessage",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,yt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={DecodedMessage:void 0};return void 0!==e.DecodedMessage&&(r.DecodedMessage=ye(e.DecodedMessage)),r}(r.DecodeAuthorizationMessageResult),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),tr=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetAccessKeyInfoCommand",inputFilterSensitiveLog:tt.filterSensitiveLog,outputFilterSensitiveLog:rt.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};return void 0!==e.AccessKeyId&&null!==e.AccessKeyId&&(r.AccessKeyId=e.AccessKeyId),r}(e)),{Action:"GetAccessKeyInfo",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,bt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Account:void 0};return void 0!==e.Account&&(r.Account=ye(e.Account)),r}(r.GetAccessKeyInfoResult),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),rr=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetCallerIdentityCommand",inputFilterSensitiveLog:nt.filterSensitiveLog,outputFilterSensitiveLog:ot.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var e,r;return u(this,(function(n){return e={"content-type":"application/x-www-form-urlencoded"},r=Jt(i(i({},{}),{Action:"GetCallerIdentity",Version:"2011-06-15"})),[2,Kt(t,e,"/",void 0,r)]}))}))}(0,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,wt(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={UserId:void 0,Account:void 0,Arn:void 0};return void 0!==e.UserId&&(r.UserId=ye(e.UserId)),void 0!==e.Account&&(r.Account=ye(e.Account)),void 0!==e.Arn&&(r.Arn=ye(e.Arn)),r}(r.GetCallerIdentityResult),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),nr=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetFederationTokenCommand",inputFilterSensitiveLog:it.filterSensitiveLog,outputFilterSensitiveLog:at.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};if(void 0!==e.Name&&null!==e.Name&&(r.Name=e.Name),void 0!==e.Policy&&null!==e.Policy&&(r.Policy=e.Policy),void 0!==e.PolicyArns&&null!==e.PolicyArns){var n=kt(e.PolicyArns,t);Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["PolicyArns."+n]=o}))}return void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),void 0!==e.Tags&&null!==e.Tags&&(n=Dt(e.Tags,t),Object.entries(n).forEach((function(e){var t=l(e,2),n=t[0],o=t[1];r["Tags."+n]=o}))),r}(e,t)),{Action:"GetFederationToken",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,Et(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0,FederatedUser:void 0,PackedPolicySize:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),void 0!==e.FederatedUser&&(r.FederatedUser=function(e,t){var r={FederatedUserId:void 0,Arn:void 0};return void 0!==e.FederatedUserId&&(r.FederatedUserId=ye(e.FederatedUserId)),void 0!==e.Arn&&(r.Arn=ye(e.Arn)),r}(e.FederatedUser)),void 0!==e.PackedPolicySize&&(r.PackedPolicySize=Ee(e.PackedPolicySize)),r}(r.GetFederationTokenResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce),or=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize)),this.middlewareStack.use(oe(t));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"STSClient",commandName:"GetSessionTokenCommand",inputFilterSensitiveLog:ut.filterSensitiveLog,outputFilterSensitiveLog:ct.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){return r={"content-type":"application/x-www-form-urlencoded"},n=Jt(i(i({},function(e,t){var r={};return void 0!==e.DurationSeconds&&null!==e.DurationSeconds&&(r.DurationSeconds=e.DurationSeconds),void 0!==e.SerialNumber&&null!==e.SerialNumber&&(r.SerialNumber=e.SerialNumber),void 0!==e.TokenCode&&null!==e.TokenCode&&(r.TokenCode=e.TokenCode),r}(e)),{Action:"GetSessionToken",Version:"2011-06-15"})),[2,Kt(t,r,"/",void 0,n)]}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o;return u(this,(function(s){switch(s.label){case 0:return e.statusCode>=300?[2,At(e,t)]:[4,Wt(e.body,t)];case 1:return r=s.sent(),n=function(e,t){var r={Credentials:void 0};return void 0!==e.Credentials&&(r.Credentials=Ft(e.Credentials,t)),r}(r.GetSessionTokenResult,t),o=i({$metadata:Gt(e)},n),[2,Promise.resolve(o)]}}))}))}(e,t)},t}(ce);!function(e){e.ENV="env",e.CONFIG="shared config entry"}(ft||(ft={}));var ir,sr=function(e,t,r){if(t in e){if("true"===e[t])return!0;if("false"===e[t])return!1;throw new Error("Cannot load "+r+' "'+t+'". Expected "true" or "false", got '+e[t]+".")}},ar={environmentVariableSelector:function(e){return sr(e,"AWS_USE_DUALSTACK_ENDPOINT",ft.ENV)},configFileSelector:function(e){return sr(e,"use_dualstack_endpoint",ft.CONFIG)},default:!1},ur={environmentVariableSelector:function(e){return sr(e,"AWS_USE_FIPS_ENDPOINT",ft.ENV)},configFileSelector:function(e){return sr(e,"use_fips_endpoint",ft.CONFIG)},default:!1},cr=function(e){var t=e.endpoint,r=e.urlParser;if("string"==typeof t){var n=Promise.resolve(r(t));return function(){return n}}if("object"==typeof t){var o=Promise.resolve(t);return function(){return o}}return t},lr=function(e){var t,r=function(e){if("boolean"==typeof e){var t=Promise.resolve(e);return function(){return t}}return e}(e.useDualstackEndpoint),n=e.endpoint,o=e.useFipsEndpoint;return i(i({},e),{tls:null===(t=e.tls)||void 0===t||t,endpoint:n?cr(i(i({},e),{endpoint:n})):function(){return function(e){return a(void 0,void 0,void 0,(function(){var t,r,n,o,i,s,a;return u(this,(function(u){switch(u.label){case 0:return t=e.tls,r=void 0===t||t,[4,e.region()];case 1:if(n=u.sent(),!new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/).test(n))throw new Error("Invalid region in client config");return[4,e.useDualstackEndpoint()];case 2:return o=u.sent(),[4,e.useFipsEndpoint()];case 3:return i=u.sent(),[4,e.regionInfoProvider(n,{useDualstackEndpoint:o,useFipsEndpoint:i})];case 4:if(!(s=(null!==(a=u.sent())&&void 0!==a?a:{}).hostname))throw new Error("Cannot resolve hostname from client config");return[2,e.urlParser((r?"https:":"http:")+"//"+s)]}}))}))}(i(i({},e),{useDualstackEndpoint:r,useFipsEndpoint:o}))},isCustomEndpoint:!!n,useDualstackEndpoint:r})},dr={environmentVariableSelector:function(e){return e.AWS_REGION},configFileSelector:function(e){return e.region},default:function(){throw new Error("Region is missing")}},fr={preferredFile:"credentials"},pr=function(e){return"string"==typeof e&&(e.startsWith("fips-")||e.endsWith("-fips"))},hr=function(e){return pr(e)?["fips-aws-global","aws-fips"].includes(e)?"us-east-1":e.replace(/fips-(dkr-|prod-)?|-fips/,""):e},mr=function(e){var t=e.region,r=e.useFipsEndpoint;if(!t)throw new Error("Region is missing");return i(i({},e),{region:function(){return a(void 0,void 0,void 0,(function(){var e;return u(this,(function(r){switch(r.label){case 0:return"string"==typeof t?[2,hr(t)]:[4,t()];case 1:return e=r.sent(),[2,hr(e)]}}))}))},useFipsEndpoint:function(){return a(void 0,void 0,void 0,(function(){var e;return u(this,(function(n){switch(n.label){case 0:return"string"!=typeof t?[3,1]:(e=t,[3,3]);case 1:return[4,t()];case 2:e=n.sent(),n.label=3;case 3:return pr(e)?[2,!0]:[2,"boolean"==typeof r?Promise.resolve(r):r()]}}))}))}})},vr=function(e,t){var r;void 0===e&&(e=[]);var n=t.useFipsEndpoint,o=t.useDualstackEndpoint;return null===(r=e.find((function(e){var t=e.tags;return n===t.includes("fips")&&o===t.includes("dualstack")})))||void 0===r?void 0:r.hostname},gr=function(e,t){var r,n,o,s,a,u,c=t.useFipsEndpoint,l=void 0!==c&&c,d=t.useDualstackEndpoint,f=void 0!==d&&d,p=t.signingService,h=t.regionHash,m=t.partitionHash,v=function(e,t){var r,n=t.partitionHash;return null!==(r=Object.keys(n||{}).find((function(t){return n[t].regions.includes(e)})))&&void 0!==r?r:"aws"}(e,{partitionHash:m}),g=e in h?e:null!==(n=null===(r=m[v])||void 0===r?void 0:r.endpoint)&&void 0!==n?n:e,y={useFipsEndpoint:l,useDualstackEndpoint:f},b=function(e,t){var r=t.partitionHostname;return t.regionHostname||(r?r.replace("{region}",e):void 0)}(g,{regionHostname:vr(null===(o=h[g])||void 0===o?void 0:o.variants,y),partitionHostname:vr(null===(s=m[v])||void 0===s?void 0:s.variants,y)});if(void 0===b)throw new Error("Endpoint resolution failed for: "+{resolvedRegion:g,useFipsEndpoint:l,useDualstackEndpoint:f});var w=function(e,t){var r=t.signingRegion;if(r)return r;if(t.useFipsEndpoint){var n=t.regionRegex.replace("\\\\","\\").replace(/^\^/g,"\\.").replace(/\$$/g,"\\."),o=e.match(n);if(o)return o[0].slice(1,-1)}}(b,{signingRegion:null===(a=h[g])||void 0===a?void 0:a.signingRegion,regionRegex:m[v].regionRegex,useFipsEndpoint:l});return i(i({partition:v,signingService:p,hostname:b},w&&{signingRegion:w}),(null===(u=h[g])||void 0===u?void 0:u.signingService)&&{signingService:h[g].signingService})},yr={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},br=function(e){return{applyToStack:function(t){t.add(function(e){var t=this;return function(r){return function(n){return a(t,void 0,void 0,(function(){var t,o,s,a,c;return u(this,(function(u){return t=n.request,Q.isInstance(t)&&(o=t.body,s=t.headers,o&&-1===Object.keys(s).map((function(e){return e.toLowerCase()})).indexOf("content-length")&&void 0!==(a=e(o))&&(t.headers=i(i({},t.headers),((c={})["content-length"]=String(a),c)))),[2,r(i(i({},n),{request:t}))]}))}))}}}(e.bodyLengthChecker),yr)}}},wr={name:"hostHeaderMiddleware",step:"build",priority:"low",tags:["HOST"],override:!0},Er=function(e){return{applyToStack:function(t){t.add(function(e){return function(t){return function(r){return a(void 0,void 0,void 0,(function(){var n,o;return u(this,(function(i){return Q.isInstance(r.request)?(n=r.request,(void 0===(o=(e.requestHandler.metadata||{}).handlerProtocol)?"":o).indexOf("h2")>=0&&!n.headers[":authority"]?(delete n.headers.host,n.headers[":authority"]=""):n.headers.host||(n.headers.host=n.hostname),[2,t(r)]):[2,t(r)]}))}))}}}(e),wr)}}},Ar={name:"loggerMiddleware",tags:["LOGGER"],step:"initialize",override:!0},Sr=function(e){return{applyToStack:function(e){e.add((function(e,t){return function(r){return a(void 0,void 0,void 0,(function(){var n,o,i,a,c,l,d,f,p;return u(this,(function(u){switch(u.label){case 0:return n=t.clientName,o=t.commandName,i=t.inputFilterSensitiveLog,a=t.logger,c=t.outputFilterSensitiveLog,[4,e(r)];case 1:return l=u.sent(),a?("function"==typeof a.info&&(d=l.output,f=d.$metadata,p=s(d,["$metadata"]),a.info({clientName:n,commandName:o,input:i(r.input),output:c(p),metadata:f})),[2,l]):[2,l]}}))}))}}),Ar)}}};!function(e){e.STANDARD="standard",e.ADAPTIVE="adaptive"}(ir||(ir={}));var Cr=ir.STANDARD,Rr=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],Tr=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],xr=["AbortError","TimeoutError","RequestTimeout","RequestTimeoutException"],Or=[500,502,503,504],Pr=function(e){var t,r;return 429===(null===(t=e.$metadata)||void 0===t?void 0:t.httpStatusCode)||Tr.includes(e.name)||1==(null===(r=e.$retryable)||void 0===r?void 0:r.throttling)},_r=function(){function e(e){var t,r,n,o,i;this.currentCapacity=0,this.enabled=!1,this.lastMaxRate=0,this.measuredTxRate=0,this.requestCount=0,this.lastTimestamp=0,this.timeWindow=0,this.beta=null!==(t=null==e?void 0:e.beta)&&void 0!==t?t:.7,this.minCapacity=null!==(r=null==e?void 0:e.minCapacity)&&void 0!==r?r:1,this.minFillRate=null!==(n=null==e?void 0:e.minFillRate)&&void 0!==n?n:.5,this.scaleConstant=null!==(o=null==e?void 0:e.scaleConstant)&&void 0!==o?o:.4,this.smooth=null!==(i=null==e?void 0:e.smooth)&&void 0!==i?i:.8;var s=this.getCurrentTimeInSeconds();this.lastThrottleTime=s,this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}return e.prototype.getCurrentTimeInSeconds=function(){return Date.now()/1e3},e.prototype.getSendToken=function(){return a(this,void 0,void 0,(function(){return u(this,(function(e){return[2,this.acquireTokenBucket(1)]}))}))},e.prototype.acquireTokenBucket=function(e){return a(this,void 0,void 0,(function(){var t;return u(this,(function(r){switch(r.label){case 0:return this.enabled?(this.refillTokenBucket(),e>this.currentCapacity?(t=(e-this.currentCapacity)/this.fillRate*1e3,[4,new Promise((function(e){return setTimeout(e,t)}))]):[3,2]):[2];case 1:r.sent(),r.label=2;case 2:return this.currentCapacity=this.currentCapacity-e,[2]}}))}))},e.prototype.refillTokenBucket=function(){var e=this.getCurrentTimeInSeconds();if(this.lastTimestamp){var t=(e-this.lastTimestamp)*this.fillRate;this.currentCapacity=Math.min(this.maxCapacity,this.currentCapacity+t),this.lastTimestamp=e}else this.lastTimestamp=e},e.prototype.updateClientSendingRate=function(e){var t;if(this.updateMeasuredRate(),Pr(e)){var r=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=r,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),t=this.cubicThrottle(r),this.enableTokenBucket()}else this.calculateTimeWindow(),t=this.cubicSuccess(this.getCurrentTimeInSeconds());var n=Math.min(t,2*this.measuredTxRate);this.updateTokenBucketRate(n)},e.prototype.calculateTimeWindow=function(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))},e.prototype.cubicThrottle=function(e){return this.getPrecise(e*this.beta)},e.prototype.cubicSuccess=function(e){return this.getPrecise(this.scaleConstant*Math.pow(e-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)},e.prototype.enableTokenBucket=function(){this.enabled=!0},e.prototype.updateTokenBucketRate=function(e){this.refillTokenBucket(),this.fillRate=Math.max(e,this.minFillRate),this.maxCapacity=Math.max(e,this.minCapacity),this.currentCapacity=Math.min(this.currentCapacity,this.maxCapacity)},e.prototype.updateMeasuredRate=function(){var e=this.getCurrentTimeInSeconds(),t=Math.floor(2*e)/2;if(this.requestCount++,t>this.lastTxRateBucket){var r=this.requestCount/(t-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(r*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=t}},e.prototype.getPrecise=function(e){return parseFloat(e.toFixed(8))},e}();const kr=require("crypto");var Ir=r.n(kr);const qr=new Uint8Array(256);let Nr=qr.length;function Dr(){return Nr>qr.length-16&&(Ir().randomFillSync(qr),Nr=0),qr.slice(Nr,Nr+=16)}const Lr=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i,Fr=[];for(let e=0;e<256;++e)Fr.push((e+256).toString(16).substr(1));const Mr=function(e,t=0){const r=(Fr[e[t+0]]+Fr[e[t+1]]+Fr[e[t+2]]+Fr[e[t+3]]+"-"+Fr[e[t+4]]+Fr[e[t+5]]+"-"+Fr[e[t+6]]+Fr[e[t+7]]+"-"+Fr[e[t+8]]+Fr[e[t+9]]+"-"+Fr[e[t+10]]+Fr[e[t+11]]+Fr[e[t+12]]+Fr[e[t+13]]+Fr[e[t+14]]+Fr[e[t+15]]).toLowerCase();if(!function(e){return"string"==typeof e&&Lr.test(e)}(r))throw TypeError("Stringified UUID is invalid");return r},jr=function(e,t,r){const n=(e=e||{}).random||(e.rng||Dr)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,t){r=r||0;for(let e=0;e<16;++e)t[r+e]=n[e];return t}return Mr(n)};var Ur=function(e,t){return Math.floor(Math.min(2e4,Math.random()*Math.pow(2,t)*e))},Br=function(e){return!!e&&(function(e){return void 0!==e.$retryable}(e)||function(e){return Rr.includes(e.name)}(e)||Pr(e)||function(e){var t;return xr.includes(e.name)||Or.includes((null===(t=e.$metadata)||void 0===t?void 0:t.httpStatusCode)||0)}(e))},zr=function(){function e(e,t){var r,n,o,i,s,a,u,c,l;this.maxAttemptsProvider=e,this.mode=ir.STANDARD,this.retryDecider=null!==(r=null==t?void 0:t.retryDecider)&&void 0!==r?r:Br,this.delayDecider=null!==(n=null==t?void 0:t.delayDecider)&&void 0!==n?n:Ur,this.retryQuota=null!==(o=null==t?void 0:t.retryQuota)&&void 0!==o?o:(i=1,s=5,a=10,u=500,c=function(e){return"TimeoutError"===e.name?a:s},l=function(e){return c(e)<=u},Object.freeze({hasRetryTokens:l,retrieveRetryTokens:function(e){if(!l(e))throw new Error("No retry token available");var t=c(e);return u-=t,t},releaseRetryTokens:function(e){u+=null!=e?e:i,u=Math.min(u,500)}}))}return e.prototype.shouldRetry=function(e,t,r){return t0})).map((function(e){return null==e?void 0:e.replace(rn,"_")})).join("/")},on={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0},sn=function(e){return{applyToStack:function(t){var r;t.add((r=e,function(e,t){return function(n){return a(void 0,void 0,void 0,(function(){var o,s,a,c,f,p,h,m,v;return u(this,(function(u){switch(u.label){case 0:return o=n.request,Q.isInstance(o)?(s=o.headers,a=(null===(m=null==t?void 0:t.userAgent)||void 0===m?void 0:m.map(nn))||[],[4,r.defaultUserAgentProvider()]):[2,e(n)];case 1:return c=u.sent().map(nn),f=(null===(v=null==r?void 0:r.customUserAgent)||void 0===v?void 0:v.map(nn))||[],p=d(d(d([],l(c)),l(a)),l(f)).join(" "),h=d(d([],l(c.filter((function(e){return e.startsWith("aws-sdk-")})))),l(f)).join(" "),"browser"!==r.runtime?(h&&(s[tn]=s[tn]?s[en]+" "+h:h),s[en]=p):s[tn]=p,[2,e(i(i({},n),{request:o}))]}}))}))}}),on)}}};var an="us-east-1",un=function(e){return"function"!=typeof e?void 0===e?an:e:function(){return a(void 0,void 0,void 0,(function(){return u(this,(function(t){switch(t.label){case 0:return t.trys.push([0,2,,3]),[4,e()];case 1:return[2,t.sent()];case 2:return t.sent(),[2,an];case 3:return[2]}}))}))}},cn=function(e,t){var r,n;return function(o,s){return a(void 0,void 0,void 0,(function(){var c,l,d,f;return u(this,(function(p){switch(p.label){case 0:return n=o,r||(c=e.logger,l=e.region,d=e.requestHandler,r=new t(i({logger:c,credentialDefaultProvider:function(){return function(){return a(void 0,void 0,void 0,(function(){return u(this,(function(e){return[2,n]}))}))}},region:un(l||e.region)},d?{requestHandler:d}:{}))),[4,r.send(new Xt(s))];case 1:if(!(f=p.sent().Credentials)||!f.AccessKeyId||!f.SecretAccessKey)throw new Error("Invalid response from STS.assumeRole call with role "+s.RoleArn);return[2,{accessKeyId:f.AccessKeyId,secretAccessKey:f.SecretAccessKey,sessionToken:f.SessionToken,expiration:f.Expiration}]}}))}))}},ln=function(e,t){var r;return function(n){return a(void 0,void 0,void 0,(function(){var o,s,a,c;return u(this,(function(u){switch(u.label){case 0:return r||(o=e.logger,s=e.region,a=e.requestHandler,r=new t(i({logger:o,region:un(s||e.region)},a?{requestHandler:a}:{}))),[4,r.send(new Qt(n))];case 1:if(!(c=u.sent().Credentials)||!c.AccessKeyId||!c.SecretAccessKey)throw new Error("Invalid response from STS.assumeRoleWithWebIdentity call with role "+n.RoleArn);return[2,{accessKeyId:c.AccessKeyId,secretAccessKey:c.SecretAccessKey,sessionToken:c.SessionToken,expiration:c.Expiration}]}}))}))}};function dn(){return function(){var e=process.env.AWS_ACCESS_KEY_ID,t=process.env.AWS_SECRET_ACCESS_KEY,r=process.env.AWS_CREDENTIAL_EXPIRATION;return e&&t?Promise.resolve({accessKeyId:e,secretAccessKey:t,sessionToken:process.env.AWS_SESSION_TOKEN,expiration:r?new Date(r):void 0}):Promise.reject(new v("Unable to find environment variable credentials."))}}var fn=r(7310);const pn=require("buffer");var hn=r(3685);function mn(e){return new Promise((function(t,r){var n,o=(0,hn.request)(i(i({method:"GET"},e),{hostname:null===(n=e.hostname)||void 0===n?void 0:n.replace(/^\[(.+)\]$/,"$1")}));o.on("error",(function(e){r(Object.assign(new m("Unable to connect to instance metadata service"),e)),o.destroy()})),o.on("timeout",(function(){r(new m("TimeoutError from instance metadata service")),o.destroy()})),o.on("response",(function(e){var n=e.statusCode,i=void 0===n?400:n;(i<200||300<=i)&&(r(Object.assign(new m("Error response received from instance metadata service"),{statusCode:i})),o.destroy());var s=[];e.on("data",(function(e){s.push(e)})),e.on("end",(function(){t(pn.Buffer.concat(s)),o.destroy()}))})),o.end()}))}var vn,gn=function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.AccessKeyId&&"string"==typeof e.SecretAccessKey&&"string"==typeof e.Token&&"string"==typeof e.Expiration},yn=function(e){return{accessKeyId:e.AccessKeyId,secretAccessKey:e.SecretAccessKey,sessionToken:e.Token,expiration:new Date(e.Expiration)}},bn=function(e){var t=e.maxRetries,r=void 0===t?0:t,n=e.timeout;return{maxRetries:r,timeout:void 0===n?1e3:n}},wn=function(e,t){for(var r=e(),n=0;n0&&!t)return o[0];var i=(0,uo.connect)(e),s=function(){r.destroySession(i),r.deleteSessionFromCache(e,i)};i.on("goaway",s),i.on("error",s),i.on("frameError",s);var a=this.sessionTimeout;return a&&i.setTimeout(a,s),o.push(i),n.set(e,o),i},e.prototype.destroySession=function(e){e.destroyed||e.destroy()},e.prototype.deleteSessionFromCache=function(e,t){var r=this.sessionCache.get(e)||[];r.includes(t)&&this.sessionCache.set(e,r.filter((function(e){return e!==t})))}}();var co=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.bufferedBytes=[],t}return o(t,e),t.prototype._write=function(e,t,r){this.bufferedBytes.push(e),r()},t}(oo.Writable),lo=function(e){return new Promise((function(t,r){var n=new co;e.pipe(n),e.on("error",(function(e){n.end(),r(e)})),n.on("error",r),n.on("finish",(function(){var e=new Uint8Array(Buffer.concat(this.bufferedBytes));t(e)}))}))},fo=/^[A-Za-z0-9+/]*={0,2}$/;function po(e){if(3*e.length%4!=0)throw new TypeError("Incorrect padding on base64 string.");if(!fo.exec(e))throw new TypeError("Invalid base64 string.");var t=Xn(e,"base64");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}function ho(e){return Yn(e.buffer,e.byteOffset,e.byteLength).toString("base64")}function mo(e){return e?"string"==typeof e?Buffer.from(e).length:"number"==typeof e.byteLength?e.byteLength:"number"==typeof e.size?e.size:"string"==typeof e.path?(0,Pn.lstatSync)(e.path).size:void 0:0}const vo=require("process");var go,yo,bo,wo,Eo,Ao,So,Co,Ro,To,xo,Oo,Po,_o,ko=r(890),Io=function(e){var t=e.serviceId,r=e.clientVersion,n=[["aws-sdk-js",r],["os/"+(0,_n.platform)(),(0,_n.release)()],["lang/js"],["md/nodejs",""+vo.versions.node]],o=(0,ko.E)();o&&n.push(o),t&&n.push(["api/"+t,r]),vo.env.AWS_EXECUTION_ENV&&n.push(["exec-env/"+vo.env.AWS_EXECUTION_ENV]);var i=Un({environmentVariableSelector:function(e){return e.AWS_SDK_UA_APP_ID},configFileSelector:function(e){return e["sdk-ua-app-id"]},default:void 0})(),s=void 0;return function(){return a(void 0,void 0,void 0,(function(){var e;return u(this,(function(t){switch(t.label){case 0:return s?[3,2]:[4,i];case 1:e=t.sent(),s=e?d(d([],l(n)),[["app/"+e]]):d([],l(n)),t.label=2;case 2:return[2,s]}}))}))}},qo=function(e){var t=Xn(e,"utf8");return new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT)},No=function(e){return Yn(e.buffer,e.byteOffset,e.byteLength).toString("utf8")},Do={"ap-northeast-1":{variants:[{hostname:"portal.sso.ap-northeast-1.amazonaws.com",tags:[]}],signingRegion:"ap-northeast-1"},"ap-northeast-2":{variants:[{hostname:"portal.sso.ap-northeast-2.amazonaws.com",tags:[]}],signingRegion:"ap-northeast-2"},"ap-south-1":{variants:[{hostname:"portal.sso.ap-south-1.amazonaws.com",tags:[]}],signingRegion:"ap-south-1"},"ap-southeast-1":{variants:[{hostname:"portal.sso.ap-southeast-1.amazonaws.com",tags:[]}],signingRegion:"ap-southeast-1"},"ap-southeast-2":{variants:[{hostname:"portal.sso.ap-southeast-2.amazonaws.com",tags:[]}],signingRegion:"ap-southeast-2"},"ca-central-1":{variants:[{hostname:"portal.sso.ca-central-1.amazonaws.com",tags:[]}],signingRegion:"ca-central-1"},"eu-central-1":{variants:[{hostname:"portal.sso.eu-central-1.amazonaws.com",tags:[]}],signingRegion:"eu-central-1"},"eu-north-1":{variants:[{hostname:"portal.sso.eu-north-1.amazonaws.com",tags:[]}],signingRegion:"eu-north-1"},"eu-west-1":{variants:[{hostname:"portal.sso.eu-west-1.amazonaws.com",tags:[]}],signingRegion:"eu-west-1"},"eu-west-2":{variants:[{hostname:"portal.sso.eu-west-2.amazonaws.com",tags:[]}],signingRegion:"eu-west-2"},"eu-west-3":{variants:[{hostname:"portal.sso.eu-west-3.amazonaws.com",tags:[]}],signingRegion:"eu-west-3"},"sa-east-1":{variants:[{hostname:"portal.sso.sa-east-1.amazonaws.com",tags:[]}],signingRegion:"sa-east-1"},"us-east-1":{variants:[{hostname:"portal.sso.us-east-1.amazonaws.com",tags:[]}],signingRegion:"us-east-1"},"us-east-2":{variants:[{hostname:"portal.sso.us-east-2.amazonaws.com",tags:[]}],signingRegion:"us-east-2"},"us-gov-west-1":{variants:[{hostname:"portal.sso.us-gov-west-1.amazonaws.com",tags:[]}],signingRegion:"us-gov-west-1"},"us-west-2":{variants:[{hostname:"portal.sso.us-west-2.amazonaws.com",tags:[]}],signingRegion:"us-west-2"}},Lo={aws:{regions:["af-south-1","ap-east-1","ap-northeast-1","ap-northeast-2","ap-northeast-3","ap-south-1","ap-southeast-1","ap-southeast-2","ap-southeast-3","ca-central-1","eu-central-1","eu-north-1","eu-south-1","eu-west-1","eu-west-2","eu-west-3","me-south-1","sa-east-1","us-east-1","us-east-2","us-west-1","us-west-2"],regionRegex:"^(us|eu|ap|sa|ca|me|af)\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.amazonaws.com",tags:[]},{hostname:"portal.sso-fips.{region}.amazonaws.com",tags:["fips"]},{hostname:"portal.sso-fips.{region}.api.aws",tags:["dualstack","fips"]},{hostname:"portal.sso.{region}.api.aws",tags:["dualstack"]}]},"aws-cn":{regions:["cn-north-1","cn-northwest-1"],regionRegex:"^cn\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.amazonaws.com.cn",tags:[]},{hostname:"portal.sso-fips.{region}.amazonaws.com.cn",tags:["fips"]},{hostname:"portal.sso-fips.{region}.api.amazonwebservices.com.cn",tags:["dualstack","fips"]},{hostname:"portal.sso.{region}.api.amazonwebservices.com.cn",tags:["dualstack"]}]},"aws-iso":{regions:["us-iso-east-1","us-iso-west-1"],regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.c2s.ic.gov",tags:[]},{hostname:"portal.sso-fips.{region}.c2s.ic.gov",tags:["fips"]}]},"aws-iso-b":{regions:["us-isob-east-1"],regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.sc2s.sgov.gov",tags:[]},{hostname:"portal.sso-fips.{region}.sc2s.sgov.gov",tags:["fips"]}]},"aws-us-gov":{regions:["us-gov-east-1","us-gov-west-1"],regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",variants:[{hostname:"portal.sso.{region}.amazonaws.com",tags:[]},{hostname:"portal.sso-fips.{region}.amazonaws.com",tags:["fips"]},{hostname:"portal.sso-fips.{region}.api.aws",tags:["dualstack","fips"]},{hostname:"portal.sso.{region}.api.aws",tags:["dualstack"]}]}},Fo=function(e,t){return a(void 0,void 0,void 0,(function(){return u(this,(function(r){return[2,gr(e,i(i({},t),{signingService:"awsssoportal",regionHash:Do,partitionHash:Lo}))]}))}))},Mo=function(e){function t(t){var r=this,n=function(e){var t,r,n,o,s,a,u,c,l,d,f,p,h,m;qe(process.version);var v=function(e){var t,r,n,o,i;return{apiVersion:"2019-06-10",disableHostPrefix:null!==(t=null==e?void 0:e.disableHostPrefix)&&void 0!==t&&t,logger:null!==(r=null==e?void 0:e.logger)&&void 0!==r?r:{},regionInfoProvider:null!==(n=null==e?void 0:e.regionInfoProvider)&&void 0!==n?n:Fo,serviceId:null!==(o=null==e?void 0:e.serviceId)&&void 0!==o?o:"SSO",urlParser:null!==(i=null==e?void 0:e.urlParser)&&void 0!==i?i:Bn}}(e);return i(i(i({},v),e),{runtime:"node",base64Decoder:null!==(t=null==e?void 0:e.base64Decoder)&&void 0!==t?t:po,base64Encoder:null!==(r=null==e?void 0:e.base64Encoder)&&void 0!==r?r:ho,bodyLengthChecker:null!==(n=null==e?void 0:e.bodyLengthChecker)&&void 0!==n?n:mo,defaultUserAgentProvider:null!==(o=null==e?void 0:e.defaultUserAgentProvider)&&void 0!==o?o:Io({serviceId:v.serviceId,clientVersion:"3.45.0"}),maxAttempts:null!==(s=null==e?void 0:e.maxAttempts)&&void 0!==s?s:Un(Vr),region:null!==(a=null==e?void 0:e.region)&&void 0!==a?a:Un(dr,fr),requestHandler:null!==(u=null==e?void 0:e.requestHandler)&&void 0!==u?u:new ao,retryMode:null!==(c=null==e?void 0:e.retryMode)&&void 0!==c?c:Un(Jr),sha256:null!==(l=null==e?void 0:e.sha256)&&void 0!==l?l:Zn.bind(null,"sha256"),streamCollector:null!==(d=null==e?void 0:e.streamCollector)&&void 0!==d?d:lo,useDualstackEndpoint:null!==(f=null==e?void 0:e.useDualstackEndpoint)&&void 0!==f?f:Un(ar),useFipsEndpoint:null!==(p=null==e?void 0:e.useFipsEndpoint)&&void 0!==p?p:Un(ur),utf8Decoder:null!==(h=null==e?void 0:e.utf8Decoder)&&void 0!==h?h:qo,utf8Encoder:null!==(m=null==e?void 0:e.utf8Encoder)&&void 0!==m?m:No})}(t),o=mr(n),s=lr(o),a=Qr(Gr(s));return(r=e.call(this,a)||this).config=a,r.middlewareStack.use(Xr(r.config)),r.middlewareStack.use(br(r.config)),r.middlewareStack.use(Er(r.config)),r.middlewareStack.use(Sr(r.config)),r.middlewareStack.use(sn(r.config)),r}return o(t,e),t.prototype.destroy=function(){e.prototype.destroy.call(this)},t}(ue);!function(e){e.filterSensitiveLog=function(e){return i({},e)}}(go||(go={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(yo||(yo={})),function(e){e.filterSensitiveLog=function(e){return i(i(i({},e),e.secretAccessKey&&{secretAccessKey:le}),e.sessionToken&&{sessionToken:le})}}(bo||(bo={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.roleCredentials&&{roleCredentials:bo.filterSensitiveLog(e.roleCredentials)})}}(wo||(wo={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Eo||(Eo={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Ao||(Ao={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(So||(So={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Co||(Co={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(Ro||(Ro={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(To||(To={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(xo||(xo={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(Oo||(Oo={})),function(e){e.filterSensitiveLog=function(e){return i({},e)}}(Po||(Po={})),function(e){e.filterSensitiveLog=function(e){return i(i({},e),e.accessToken&&{accessToken:le})}}(_o||(_o={}));var jo=function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o,s,a,c,l,d,f,p,h;return u(this,(function(u){switch(u.label){case 0:return n=[i({},e)],h={},[4,Vo(e.body,t)];case 1:switch(r=i.apply(void 0,n.concat([(h.body=u.sent(),h)])),s="UnknownError",s=Go(e,r.body)){case"InvalidRequestException":case"com.amazonaws.sso#InvalidRequestException":return[3,2];case"ResourceNotFoundException":case"com.amazonaws.sso#ResourceNotFoundException":return[3,4];case"TooManyRequestsException":case"com.amazonaws.sso#TooManyRequestsException":return[3,6];case"UnauthorizedException":case"com.amazonaws.sso#UnauthorizedException":return[3,8]}return[3,10];case 2:return a=[{}],[4,Uo(r,t)];case 3:return o=i.apply(void 0,[i.apply(void 0,a.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 4:return c=[{}],[4,Bo(r,t)];case 5:return o=i.apply(void 0,[i.apply(void 0,c.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 6:return l=[{}],[4,zo(r,t)];case 7:return o=i.apply(void 0,[i.apply(void 0,l.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 8:return d=[{}],[4,Ho(r,t)];case 9:return o=i.apply(void 0,[i.apply(void 0,d.concat([u.sent()])),{name:s,$metadata:$o(e)}]),[3,11];case 10:f=r.body,s=f.code||f.Code||s,o=i(i({},f),{name:""+s,message:f.message||f.Message||s,$fault:"client",$metadata:$o(e)}),u.label=11;case 11:return p=o.message||o.Message||s,o.message=p,delete o.Message,[2,Promise.reject(Object.assign(new Error(p),o))]}}))}))},Uo=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"InvalidRequestException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},Bo=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"ResourceNotFoundException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},zo=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"TooManyRequestsException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},Ho=function(e,t){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){return t={name:"UnauthorizedException",$fault:"client",$metadata:$o(e),message:void 0},void 0!==(r=e.body).message&&null!==r.message&&(t.message=ye(r.message)),[2,t]}))}))},$o=function(e){var t;return{httpStatusCode:e.statusCode,requestId:null!==(t=e.headers["x-amzn-requestid"])&&void 0!==t?t:e.headers["x-amzn-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}},Vo=function(e,t){return function(e,t){return function(e,t){return void 0===e&&(e=new Uint8Array),e instanceof Uint8Array?Promise.resolve(e):t.streamCollector(e)||Promise.resolve(new Uint8Array)}(e,t).then((function(e){return t.utf8Encoder(e)}))}(e,t).then((function(e){return e.length?JSON.parse(e):{}}))},Go=function(e,t){var r,n=function(e){var t=e;return t.indexOf(":")>=0&&(t=t.split(":")[0]),t.indexOf("#")>=0&&(t=t.split("#")[1]),t},o=(r=e.headers,"x-amzn-errortype",Object.keys(r).find((function(e){return e.toLowerCase()==="x-amzn-errortype".toLowerCase()})));return void 0!==o?n(e.headers[o]):void 0!==t.code?n(t.code):void 0!==t.__type?n(t.__type):""},Ko=function(e){function t(t){var r=e.call(this)||this;return r.input=t,r}return o(t,e),t.prototype.resolveMiddleware=function(e,t,r){this.middlewareStack.use(h(t,this.serialize,this.deserialize));var n=e.concat(this.middlewareStack),o={logger:t.logger,clientName:"SSOClient",commandName:"GetRoleCredentialsCommand",inputFilterSensitiveLog:yo.filterSensitiveLog,outputFilterSensitiveLog:wo.filterSensitiveLog},i=t.requestHandler;return n.resolve((function(e){return i.handle(e.request,r||{})}),o)},t.prototype.serialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o,s,a,c,l,d,f;return u(this,(function(u){switch(u.label){case 0:return[4,t.endpoint()];case 1:return r=u.sent(),n=r.hostname,o=r.protocol,s=void 0===o?"https":o,a=r.port,c=r.path,l=i({},!(null==(p=e.accessToken)||""===p||Object.getOwnPropertyNames(p).includes("length")&&0==p.length||Object.getOwnPropertyNames(p).includes("size")&&0==p.size)&&{"x-amz-sso_bearer_token":e.accessToken}),d=((null==c?void 0:c.endsWith("/"))?c.slice(0,-1):c||"")+"/federation/credentials",f=i(i({},void 0!==e.roleName&&{role_name:e.roleName}),void 0!==e.accountId&&{account_id:e.accountId}),[2,new Q({protocol:s,hostname:n,port:a,method:"GET",headers:l,path:d,query:f,body:void 0})]}var p}))}))}(e,t)},t.prototype.deserialize=function(e,t){return function(e,t){return a(void 0,void 0,void 0,(function(){var r,n,o,i;return u(this,(function(s){switch(s.label){case 0:return 200!==e.statusCode&&e.statusCode>=300?[2,jo(e,t)]:(r={$metadata:$o(e),roleCredentials:void 0},o=ve,i=ge,[4,Vo(e.body,t)]);case 1:return void 0!==(n=o.apply(void 0,[i.apply(void 0,[s.sent()]),"body"])).roleCredentials&&null!==n.roleCredentials&&(r.roleCredentials=function(e,t){return{accessKeyId:ye(e.accessKeyId),expiration:pe(e.expiration),secretAccessKey:ye(e.secretAccessKey),sessionToken:ye(e.sessionToken)}}(n.roleCredentials)),[2,Promise.resolve(r)]}}))}))}(e,t)},t}(ce),Wo=function(e){return a(void 0,void 0,void 0,(function(){var t,r;return u(this,(function(n){switch(n.label){case 0:return[4,void 0===(t=e.loadedConfig)?qn(e):t];case 1:return r=n.sent(),[2,i(i({},r.configFile),r.credentialsFile)]}}))}))},Jo=function(e){return e.profile||process.env.AWS_PROFILE||"default"},Yo=!1,Xo=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){var t,r,n,o,i,s,a,c,l,d,f,p,h;return u(this,(function(u){switch(u.label){case 0:return t=e.ssoStartUrl,r=e.ssoAccountId,n=e.ssoRegion,o=e.ssoRoleName,i=e.ssoClient,t||r||n||o?[3,2]:[4,Wo(e)];case 1:if(s=u.sent(),a=Jo(e),c=s[a],!ei(c))throw new v("Profile "+a+" is not configured with SSO credentials.");return l=Qo(c),d=l.sso_start_url,f=l.sso_account_id,p=l.sso_region,h=l.sso_role_name,[2,Zo({ssoStartUrl:d,ssoAccountId:f,ssoRegion:p,ssoRoleName:h,ssoClient:i})];case 2:if(t&&r&&n&&o)return[2,Zo({ssoStartUrl:t,ssoAccountId:r,ssoRegion:n,ssoRoleName:o,ssoClient:i})];throw new v('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"');case 3:return[2]}}))}))}},Zo=function(e){var t=e.ssoStartUrl,r=e.ssoAccountId,n=e.ssoRegion,o=e.ssoRoleName,i=e.ssoClient;return a(void 0,void 0,void 0,(function(){var e,s,a,c,l,d,f,p,h,m,g,y,b,w;return u(this,(function(u){switch(u.label){case 0:e=(0,kr.createHash)("sha1"),s=e.update(t).digest("hex"),a=(0,kn.join)(jn(),".aws","sso","cache",s+".json");try{if(c=JSON.parse((0,Pn.readFileSync)(a,{encoding:"utf-8"})),new Date(c.expiresAt).getTime()-Date.now()<=9e5)throw new Error("SSO token is expired.")}catch(e){throw new v("The SSO session associated with this profile has expired or is otherwise invalid. To refresh this SSO session run aws sso login with the corresponding profile.",Yo)}l=c.accessToken,d=i||new Mo({region:n}),u.label=1;case 1:return u.trys.push([1,3,,4]),[4,d.send(new Ko({accountId:r,roleName:o,accessToken:l}))];case 2:return f=u.sent(),[3,4];case 3:throw p=u.sent(),v.from(p,Yo);case 4:if(h=f.roleCredentials,g=(m=void 0===h?{}:h).accessKeyId,y=m.secretAccessKey,b=m.sessionToken,w=m.expiration,!(g&&y&&b&&w))throw new v("SSO returns an invalid temporary credential.",Yo);return[2,{accessKeyId:g,secretAccessKey:y,sessionToken:b,expiration:new Date(w)}]}}))}))},Qo=function(e){var t=e.sso_start_url,r=e.sso_account_id,n=e.sso_region,o=e.sso_role_name;if(!(t&&r&&n&&o))throw new v('Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got '+Object.keys(e).join(", ")+"\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html",Yo);return e},ei=function(e){return e&&("string"==typeof e.sso_start_url||"string"==typeof e.sso_account_id||"string"==typeof e.sso_region||"string"==typeof e.sso_role_name)},ti=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){return u(this,(function(t){return[2,ri(e)]}))}))}},ri=function(e){var t,r,n,o=null!==(t=null==e?void 0:e.webIdentityTokenFile)&&void 0!==t?t:process.env.AWS_WEB_IDENTITY_TOKEN_FILE,s=null!==(r=null==e?void 0:e.roleArn)&&void 0!==r?r:process.env.AWS_ROLE_ARN,a=null!==(n=null==e?void 0:e.roleSessionName)&&void 0!==n?n:process.env.AWS_ROLE_SESSION_NAME;if(!o||!s)throw new v("Web identity configuration not specified");return function(e){return function(){var t=e.roleArn,r=e.roleSessionName,n=e.webIdentityToken,o=e.providerId,i=e.policyArns,s=e.policy,a=e.durationSeconds,u=e.roleAssumerWithWebIdentity;if(!u)throw new v("Role Arn '"+t+"' needs to be assumed with web identity, but no role assumption callback was provided.",!1);return u({RoleArn:t,RoleSessionName:null!=r?r:"aws-sdk-js-session-"+Date.now(),WebIdentityToken:n,ProviderId:o,PolicyArns:i,Policy:s,DurationSeconds:a})}}(i(i({},e),{webIdentityToken:(0,Pn.readFileSync)(o,{encoding:"ascii"}),roleArn:s,roleSessionName:a}))()},ni=function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.aws_access_key_id&&"string"==typeof e.aws_secret_access_key&&["undefined","string"].indexOf(typeof e.aws_session_token)>-1},oi=function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.role_arn&&["undefined","string"].indexOf(typeof e.role_session_name)>-1&&["undefined","string"].indexOf(typeof e.external_id)>-1&&["undefined","string"].indexOf(typeof e.mfa_serial)>-1},ii=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){var t;return u(this,(function(r){switch(r.label){case 0:return[4,Wo(e)];case 1:return t=r.sent(),[2,si(Jo(e),t,e)]}}))}))}},si=function(e,t,r,n){return void 0===n&&(n={}),a(void 0,void 0,void 0,(function(){var o,s,a,c,l,d,f,p,h,m,g,y,b,w,E,A,S,C,R;return u(this,(function(u){switch(u.label){case 0:if(o=t[e],Object.keys(n).length>0&&ni(o))return[2,ui(o)];if(!(oi(T=o)&&"string"==typeof T.source_profile&&void 0===T.credential_source||function(e){return oi(e)&&"string"==typeof e.credential_source&&void 0===e.source_profile}(o)))return[3,4];if(s=o.external_id,a=o.mfa_serial,c=o.role_arn,l=o.role_session_name,d=void 0===l?"aws-sdk-js-"+Date.now():l,f=o.source_profile,p=o.credential_source,!r.roleAssumer)throw new v("Profile "+e+" requires a role to be assumed, but no role assumption callback was provided.",!1);if(f&&f in n)throw new v("Detected a cycle attempting to resolve credentials for profile "+Jo(r)+". Profiles visited: "+Object.keys(n).join(", "),!1);if(h=f?si(f,t,r,i(i({},n),((R={})[f]=!0,R))):ai(p,e)(),m={RoleArn:c,RoleSessionName:d,ExternalId:s},!a)return[3,2];if(!r.mfaCodeProvider)throw new v("Profile "+e+" requires multi-factor authentication, but no MFA code callback was provided.",!1);return m.SerialNumber=a,g=m,[4,r.mfaCodeProvider(a)];case 1:g.TokenCode=u.sent(),u.label=2;case 2:return b=(y=r).roleAssumer,[4,h];case 3:return[2,b.apply(y,[u.sent(),m])];case 4:if(ni(o))return[2,ui(o)];if(function(e){return Boolean(e)&&"object"==typeof e&&"string"==typeof e.web_identity_token_file&&"string"==typeof e.role_arn&&["undefined","string"].indexOf(typeof e.role_session_name)>-1}(o))return[2,ci(o,r)];if(ei(o))return w=Qo(o),E=w.sso_start_url,A=w.sso_account_id,S=w.sso_region,C=w.sso_role_name,[2,Xo({ssoStartUrl:E,ssoAccountId:A,ssoRegion:S,ssoRoleName:C})()];throw new v("Profile "+e+" could not be found or parsed in shared credentials file.")}var T}))}))},ai=function(e,t){var r={EcsContainer:Cn,Ec2InstanceMetadata:Gn,Environment:dn};if(e in r)return r[e]();throw new v("Unsupported credential source in profile "+t+". Got "+e+", expected EcsContainer or Ec2InstanceMetadata or Environment.")},ui=function(e){return Promise.resolve({accessKeyId:e.aws_access_key_id,secretAccessKey:e.aws_secret_access_key,sessionToken:e.aws_session_token})},ci=function(e,t){return a(void 0,void 0,void 0,(function(){return u(this,(function(r){return[2,ti({webIdentityTokenFile:e.web_identity_token_file,roleArn:e.role_arn,roleSessionName:e.role_session_name,roleAssumerWithWebIdentity:t.roleAssumerWithWebIdentity})()]}))}))};const li=require("child_process");var di=function(e){return void 0===e&&(e={}),function(){return a(void 0,void 0,void 0,(function(){var t;return u(this,(function(r){switch(r.label){case 0:return[4,Wo(e)];case 1:return t=r.sent(),[2,fi(Jo(e),t)]}}))}))}},fi=function(e,t){return a(void 0,void 0,void 0,(function(){var r,n;return u(this,(function(o){switch(o.label){case 0:return r=t[e],t[e]?void 0===(n=r.credential_process)?[3,2]:[4,pi(n).then((function(t){var r;try{r=JSON.parse(t)}catch(t){throw Error("Profile "+e+" credential_process returned invalid JSON.")}var n,o=r.Version,i=r.AccessKeyId,s=r.SecretAccessKey,a=r.SessionToken,u=r.Expiration;if(1!==o)throw Error("Profile "+e+" credential_process did not return Version 1.");if(void 0===i||void 0===s)throw Error("Profile "+e+" credential_process returned invalid credentials.");if(u){var c=new Date;if(new Date(u){"use strict";r.d(t,{E:()=>n}),e=r.hmd(e);var n=function(){try{return e.require&&r(Object(function(){var e=new Error("Cannot find module 'aws-crt'");throw e.code="MODULE_NOT_FOUND",e}()))?["md/crt-avail"]:null}catch(e){return null}}},9669:(e,t,r)=>{e.exports=r(1609)},7970:(e,t,r)=>{"use strict";var n=r(4867),o=r(6026),i=r(4097),s=r(5327),a=r(3685),u=r(5687),c=r(938).http,l=r(938).https,d=r(7310),f=r(9796),p=r(7288).version,h=r(5061),m=r(481),v=r(5655),g=r(5263),y=/https:?/;function b(e,t,r){if(e.hostname=t.host,e.host=t.host,e.port=t.port,e.path=r,t.auth){var n=Buffer.from(t.auth.username+":"+t.auth.password,"utf8").toString("base64");e.headers["Proxy-Authorization"]="Basic "+n}e.beforeRedirect=function(e){e.headers.host=e.host,b(e,t,e.href)}}e.exports=function(e){return new Promise((function(t,r){var w;function E(){e.cancelToken&&e.cancelToken.unsubscribe(w),e.signal&&e.signal.removeEventListener("abort",w)}var A=function(e){E(),t(e)},S=function(e){E(),r(e)},C=e.data,R=e.headers,T={};if(Object.keys(R).forEach((function(e){T[e.toLowerCase()]=e})),"user-agent"in T?R[T["user-agent"]]||delete R[T["user-agent"]]:R["User-Agent"]="axios/"+p,C&&!n.isStream(C)){if(Buffer.isBuffer(C));else if(n.isArrayBuffer(C))C=Buffer.from(new Uint8Array(C));else{if(!n.isString(C))return S(h("Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream",e));C=Buffer.from(C,"utf-8")}T["content-length"]||(R["Content-Length"]=C.length)}var x=void 0;e.auth&&(x=(e.auth.username||"")+":"+(e.auth.password||""));var O=i(e.baseURL,e.url),P=d.parse(O),_=P.protocol||"http:";if(!x&&P.auth){var k=P.auth.split(":");x=(k[0]||"")+":"+(k[1]||"")}x&&T.authorization&&delete R[T.authorization];var I=y.test(_),q=I?e.httpsAgent:e.httpAgent,N={path:s(P.path,e.params,e.paramsSerializer).replace(/^\?/,""),method:e.method.toUpperCase(),headers:R,agent:q,agents:{http:e.httpAgent,https:e.httpsAgent},auth:x};e.socketPath?N.socketPath=e.socketPath:(N.hostname=P.hostname,N.port=P.port);var D,L=e.proxy;if(!L&&!1!==L){var F=_.slice(0,-1)+"_proxy",M=process.env[F]||process.env[F.toUpperCase()];if(M){var j=d.parse(M),U=process.env.no_proxy||process.env.NO_PROXY,B=!0;if(U&&(B=!U.split(",").map((function(e){return e.trim()})).some((function(e){return!!e&&("*"===e||"."===e[0]&&P.hostname.substr(P.hostname.length-e.length)===e||P.hostname===e)}))),B&&(L={host:j.hostname,port:j.port,protocol:j.protocol},j.auth)){var z=j.auth.split(":");L.auth={username:z[0],password:z[1]}}}}L&&(N.headers.host=P.hostname+(P.port?":"+P.port:""),b(N,L,_+"//"+P.hostname+(P.port?":"+P.port:"")+N.path));var H=I&&(!L||y.test(L.protocol));e.transport?D=e.transport:0===e.maxRedirects?D=H?u:a:(e.maxRedirects&&(N.maxRedirects=e.maxRedirects),D=H?l:c),e.maxBodyLength>-1&&(N.maxBodyLength=e.maxBodyLength),e.insecureHTTPParser&&(N.insecureHTTPParser=e.insecureHTTPParser);var $=D.request(N,(function(t){if(!$.aborted){var r=t,i=t.req||$;if(204!==t.statusCode&&"HEAD"!==i.method&&!1!==e.decompress)switch(t.headers["content-encoding"]){case"gzip":case"compress":case"deflate":r=r.pipe(f.createUnzip()),delete t.headers["content-encoding"]}var s={status:t.statusCode,statusText:t.statusMessage,headers:t.headers,config:e,request:i};if("stream"===e.responseType)s.data=r,o(A,S,s);else{var a=[],u=0;r.on("data",(function(t){a.push(t),u+=t.length,e.maxContentLength>-1&&u>e.maxContentLength&&(r.destroy(),S(h("maxContentLength size of "+e.maxContentLength+" exceeded",e,null,i)))})),r.on("error",(function(t){$.aborted||S(m(t,e,null,i))})),r.on("end",(function(){var t=Buffer.concat(a);"arraybuffer"!==e.responseType&&(t=t.toString(e.responseEncoding),e.responseEncoding&&"utf8"!==e.responseEncoding||(t=n.stripBOM(t))),s.data=t,o(A,S,s)}))}}}));if($.on("error",(function(t){$.aborted&&"ERR_FR_TOO_MANY_REDIRECTS"!==t.code||S(m(t,e,null,$))})),e.timeout){var V=parseInt(e.timeout,10);if(isNaN(V))return void S(h("error trying to parse `config.timeout` to int",e,"ERR_PARSE_TIMEOUT",$));$.setTimeout(V,(function(){$.abort();var t=e.transitional||v.transitional;S(h("timeout of "+V+"ms exceeded",e,t.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",$))}))}(e.cancelToken||e.signal)&&(w=function(e){$.aborted||($.abort(),S(!e||e&&e.type?new g("canceled"):e))},e.cancelToken&&e.cancelToken.subscribe(w),e.signal&&(e.signal.aborted?w():e.signal.addEventListener("abort",w))),n.isStream(C)?C.on("error",(function(t){S(m(t,e,null,$))})).pipe($):$.end(C)}))}},5448:(e,t,r)=>{"use strict";var n=r(4867),o=r(6026),i=r(4372),s=r(5327),a=r(4097),u=r(4109),c=r(7985),l=r(5061),d=r(5655),f=r(5263);e.exports=function(e){return new Promise((function(t,r){var p,h=e.data,m=e.headers,v=e.responseType;function g(){e.cancelToken&&e.cancelToken.unsubscribe(p),e.signal&&e.signal.removeEventListener("abort",p)}n.isFormData(h)&&delete m["Content-Type"];var y=new XMLHttpRequest;if(e.auth){var b=e.auth.username||"",w=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";m.Authorization="Basic "+btoa(b+":"+w)}var E=a(e.baseURL,e.url);function A(){if(y){var n="getAllResponseHeaders"in y?u(y.getAllResponseHeaders()):null,i={data:v&&"text"!==v&&"json"!==v?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:n,config:e,request:y};o((function(e){t(e),g()}),(function(e){r(e),g()}),i),y=null}}if(y.open(e.method.toUpperCase(),s(E,e.params,e.paramsSerializer),!0),y.timeout=e.timeout,"onloadend"in y?y.onloadend=A:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(A)},y.onabort=function(){y&&(r(l("Request aborted",e,"ECONNABORTED",y)),y=null)},y.onerror=function(){r(l("Network Error",e,null,y)),y=null},y.ontimeout=function(){var t=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded",n=e.transitional||d.transitional;e.timeoutErrorMessage&&(t=e.timeoutErrorMessage),r(l(t,e,n.clarifyTimeoutError?"ETIMEDOUT":"ECONNABORTED",y)),y=null},n.isStandardBrowserEnv()){var S=(e.withCredentials||c(E))&&e.xsrfCookieName?i.read(e.xsrfCookieName):void 0;S&&(m[e.xsrfHeaderName]=S)}"setRequestHeader"in y&&n.forEach(m,(function(e,t){void 0===h&&"content-type"===t.toLowerCase()?delete m[t]:y.setRequestHeader(t,e)})),n.isUndefined(e.withCredentials)||(y.withCredentials=!!e.withCredentials),v&&"json"!==v&&(y.responseType=e.responseType),"function"==typeof e.onDownloadProgress&&y.addEventListener("progress",e.onDownloadProgress),"function"==typeof e.onUploadProgress&&y.upload&&y.upload.addEventListener("progress",e.onUploadProgress),(e.cancelToken||e.signal)&&(p=function(e){y&&(r(!e||e&&e.type?new f("canceled"):e),y.abort(),y=null)},e.cancelToken&&e.cancelToken.subscribe(p),e.signal&&(e.signal.aborted?p():e.signal.addEventListener("abort",p))),h||(h=null),y.send(h)}))}},1609:(e,t,r)=>{"use strict";var n=r(4867),o=r(1849),i=r(321),s=r(7185),a=function e(t){var r=new i(t),a=o(i.prototype.request,r);return n.extend(a,i.prototype,r),n.extend(a,r),a.create=function(r){return e(s(t,r))},a}(r(5655));a.Axios=i,a.Cancel=r(5263),a.CancelToken=r(4972),a.isCancel=r(6502),a.VERSION=r(7288).version,a.all=function(e){return Promise.all(e)},a.spread=r(8713),a.isAxiosError=r(6268),e.exports=a,e.exports.default=a},5263:e=>{"use strict";function t(e){this.message=e}t.prototype.toString=function(){return"Cancel"+(this.message?": "+this.message:"")},t.prototype.__CANCEL__=!0,e.exports=t},4972:(e,t,r)=>{"use strict";var n=r(5263);function o(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");var t;this.promise=new Promise((function(e){t=e}));var r=this;this.promise.then((function(e){if(r._listeners){var t,n=r._listeners.length;for(t=0;t{"use strict";e.exports=function(e){return!(!e||!e.__CANCEL__)}},321:(e,t,r)=>{"use strict";var n=r(4867),o=r(5327),i=r(782),s=r(3572),a=r(7185),u=r(4875),c=u.validators;function l(e){this.defaults=e,this.interceptors={request:new i,response:new i}}l.prototype.request=function(e){"string"==typeof e?(e=arguments[1]||{}).url=arguments[0]:e=e||{},(e=a(this.defaults,e)).method?e.method=e.method.toLowerCase():this.defaults.method?e.method=this.defaults.method.toLowerCase():e.method="get";var t=e.transitional;void 0!==t&&u.assertOptions(t,{silentJSONParsing:c.transitional(c.boolean),forcedJSONParsing:c.transitional(c.boolean),clarifyTimeoutError:c.transitional(c.boolean)},!1);var r=[],n=!0;this.interceptors.request.forEach((function(t){"function"==typeof t.runWhen&&!1===t.runWhen(e)||(n=n&&t.synchronous,r.unshift(t.fulfilled,t.rejected))}));var o,i=[];if(this.interceptors.response.forEach((function(e){i.push(e.fulfilled,e.rejected)})),!n){var l=[s,void 0];for(Array.prototype.unshift.apply(l,r),l=l.concat(i),o=Promise.resolve(e);l.length;)o=o.then(l.shift(),l.shift());return o}for(var d=e;r.length;){var f=r.shift(),p=r.shift();try{d=f(d)}catch(e){p(e);break}}try{o=s(d)}catch(e){return Promise.reject(e)}for(;i.length;)o=o.then(i.shift(),i.shift());return o},l.prototype.getUri=function(e){return e=a(this.defaults,e),o(e.url,e.params,e.paramsSerializer).replace(/^\?/,"")},n.forEach(["delete","get","head","options"],(function(e){l.prototype[e]=function(t,r){return this.request(a(r||{},{method:e,url:t,data:(r||{}).data}))}})),n.forEach(["post","put","patch"],(function(e){l.prototype[e]=function(t,r,n){return this.request(a(n||{},{method:e,url:t,data:r}))}})),e.exports=l},782:(e,t,r)=>{"use strict";var n=r(4867);function o(){this.handlers=[]}o.prototype.use=function(e,t,r){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!r&&r.synchronous,runWhen:r?r.runWhen:null}),this.handlers.length-1},o.prototype.eject=function(e){this.handlers[e]&&(this.handlers[e]=null)},o.prototype.forEach=function(e){n.forEach(this.handlers,(function(t){null!==t&&e(t)}))},e.exports=o},4097:(e,t,r)=>{"use strict";var n=r(1793),o=r(7303);e.exports=function(e,t){return e&&!n(t)?o(e,t):t}},5061:(e,t,r)=>{"use strict";var n=r(481);e.exports=function(e,t,r,o,i){var s=new Error(e);return n(s,t,r,o,i)}},3572:(e,t,r)=>{"use strict";var n=r(4867),o=r(8527),i=r(6502),s=r(5655),a=r(5263);function u(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new a("canceled")}e.exports=function(e){return u(e),e.headers=e.headers||{},e.data=o.call(e,e.data,e.headers,e.transformRequest),e.headers=n.merge(e.headers.common||{},e.headers[e.method]||{},e.headers),n.forEach(["delete","get","head","post","put","patch","common"],(function(t){delete e.headers[t]})),(e.adapter||s.adapter)(e).then((function(t){return u(e),t.data=o.call(e,t.data,t.headers,e.transformResponse),t}),(function(t){return i(t)||(u(e),t&&t.response&&(t.response.data=o.call(e,t.response.data,t.response.headers,e.transformResponse))),Promise.reject(t)}))}},481:e=>{"use strict";e.exports=function(e,t,r,n,o){return e.config=t,r&&(e.code=r),e.request=n,e.response=o,e.isAxiosError=!0,e.toJSON=function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}},e}},7185:(e,t,r)=>{"use strict";var n=r(4867);e.exports=function(e,t){t=t||{};var r={};function o(e,t){return n.isPlainObject(e)&&n.isPlainObject(t)?n.merge(e,t):n.isPlainObject(t)?n.merge({},t):n.isArray(t)?t.slice():t}function i(r){return n.isUndefined(t[r])?n.isUndefined(e[r])?void 0:o(void 0,e[r]):o(e[r],t[r])}function s(e){if(!n.isUndefined(t[e]))return o(void 0,t[e])}function a(r){return n.isUndefined(t[r])?n.isUndefined(e[r])?void 0:o(void 0,e[r]):o(void 0,t[r])}function u(r){return r in t?o(e[r],t[r]):r in e?o(void 0,e[r]):void 0}var c={url:s,method:s,data:s,baseURL:a,transformRequest:a,transformResponse:a,paramsSerializer:a,timeout:a,timeoutMessage:a,withCredentials:a,adapter:a,responseType:a,xsrfCookieName:a,xsrfHeaderName:a,onUploadProgress:a,onDownloadProgress:a,decompress:a,maxContentLength:a,maxBodyLength:a,transport:a,httpAgent:a,httpsAgent:a,cancelToken:a,socketPath:a,responseEncoding:a,validateStatus:u};return n.forEach(Object.keys(e).concat(Object.keys(t)),(function(e){var t=c[e]||i,o=t(e);n.isUndefined(o)&&t!==u||(r[e]=o)})),r}},6026:(e,t,r)=>{"use strict";var n=r(5061);e.exports=function(e,t,r){var o=r.config.validateStatus;r.status&&o&&!o(r.status)?t(n("Request failed with status code "+r.status,r.config,null,r.request,r)):e(r)}},8527:(e,t,r)=>{"use strict";var n=r(4867),o=r(5655);e.exports=function(e,t,r){var i=this||o;return n.forEach(r,(function(r){e=r.call(i,e,t)})),e}},5655:(e,t,r)=>{"use strict";var n=r(4867),o=r(6016),i=r(481),s={"Content-Type":"application/x-www-form-urlencoded"};function a(e,t){!n.isUndefined(e)&&n.isUndefined(e["Content-Type"])&&(e["Content-Type"]=t)}var u,c={transitional:{silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},adapter:("undefined"!=typeof XMLHttpRequest?u=r(5448):"undefined"!=typeof process&&"[object process]"===Object.prototype.toString.call(process)&&(u=r(7970)),u),transformRequest:[function(e,t){return o(t,"Accept"),o(t,"Content-Type"),n.isFormData(e)||n.isArrayBuffer(e)||n.isBuffer(e)||n.isStream(e)||n.isFile(e)||n.isBlob(e)?e:n.isArrayBufferView(e)?e.buffer:n.isURLSearchParams(e)?(a(t,"application/x-www-form-urlencoded;charset=utf-8"),e.toString()):n.isObject(e)||t&&"application/json"===t["Content-Type"]?(a(t,"application/json"),function(e,t,r){if(n.isString(e))try{return(0,JSON.parse)(e),n.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(0,JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){var t=this.transitional||c.transitional,r=t&&t.silentJSONParsing,o=t&&t.forcedJSONParsing,s=!r&&"json"===this.responseType;if(s||o&&n.isString(e)&&e.length)try{return JSON.parse(e)}catch(e){if(s){if("SyntaxError"===e.name)throw i(e,this,"E_JSON_PARSE");throw e}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};n.forEach(["delete","get","head"],(function(e){c.headers[e]={}})),n.forEach(["post","put","patch"],(function(e){c.headers[e]=n.merge(s)})),e.exports=c},7288:e=>{e.exports={version:"0.24.0"}},1849:e=>{"use strict";e.exports=function(e,t){return function(){for(var r=new Array(arguments.length),n=0;n{"use strict";var n=r(4867);function o(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}e.exports=function(e,t,r){if(!t)return e;var i;if(r)i=r(t);else if(n.isURLSearchParams(t))i=t.toString();else{var s=[];n.forEach(t,(function(e,t){null!=e&&(n.isArray(e)?t+="[]":e=[e],n.forEach(e,(function(e){n.isDate(e)?e=e.toISOString():n.isObject(e)&&(e=JSON.stringify(e)),s.push(o(t)+"="+o(e))})))})),i=s.join("&")}if(i){var a=e.indexOf("#");-1!==a&&(e=e.slice(0,a)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}},7303:e=>{"use strict";e.exports=function(e,t){return t?e.replace(/\/+$/,"")+"/"+t.replace(/^\/+/,""):e}},4372:(e,t,r)=>{"use strict";var n=r(4867);e.exports=n.isStandardBrowserEnv()?{write:function(e,t,r,o,i,s){var a=[];a.push(e+"="+encodeURIComponent(t)),n.isNumber(r)&&a.push("expires="+new Date(r).toGMTString()),n.isString(o)&&a.push("path="+o),n.isString(i)&&a.push("domain="+i),!0===s&&a.push("secure"),document.cookie=a.join("; ")},read:function(e){var t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove:function(e){this.write(e,"",Date.now()-864e5)}}:{write:function(){},read:function(){return null},remove:function(){}}},1793:e=>{"use strict";e.exports=function(e){return/^([a-z][a-z\d\+\-\.]*:)?\/\//i.test(e)}},6268:e=>{"use strict";e.exports=function(e){return"object"==typeof e&&!0===e.isAxiosError}},7985:(e,t,r)=>{"use strict";var n=r(4867);e.exports=n.isStandardBrowserEnv()?function(){var e,t=/(msie|trident)/i.test(navigator.userAgent),r=document.createElement("a");function o(e){var n=e;return t&&(r.setAttribute("href",n),n=r.href),r.setAttribute("href",n),{href:r.href,protocol:r.protocol?r.protocol.replace(/:$/,""):"",host:r.host,search:r.search?r.search.replace(/^\?/,""):"",hash:r.hash?r.hash.replace(/^#/,""):"",hostname:r.hostname,port:r.port,pathname:"/"===r.pathname.charAt(0)?r.pathname:"/"+r.pathname}}return e=o(window.location.href),function(t){var r=n.isString(t)?o(t):t;return r.protocol===e.protocol&&r.host===e.host}}():function(){return!0}},6016:(e,t,r)=>{"use strict";var n=r(4867);e.exports=function(e,t){n.forEach(e,(function(r,n){n!==t&&n.toUpperCase()===t.toUpperCase()&&(e[t]=r,delete e[n])}))}},4109:(e,t,r)=>{"use strict";var n=r(4867),o=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];e.exports=function(e){var t,r,i,s={};return e?(n.forEach(e.split("\n"),(function(e){if(i=e.indexOf(":"),t=n.trim(e.substr(0,i)).toLowerCase(),r=n.trim(e.substr(i+1)),t){if(s[t]&&o.indexOf(t)>=0)return;s[t]="set-cookie"===t?(s[t]?s[t]:[]).concat([r]):s[t]?s[t]+", "+r:r}})),s):s}},8713:e=>{"use strict";e.exports=function(e){return function(t){return e.apply(null,t)}}},4875:(e,t,r)=>{"use strict";var n=r(7288).version,o={};["object","boolean","number","function","string","symbol"].forEach((function(e,t){o[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}}));var i={};o.transitional=function(e,t,r){function o(e,t){return"[Axios v"+n+"] Transitional option '"+e+"'"+t+(r?". "+r:"")}return function(r,n,s){if(!1===e)throw new Error(o(n," has been removed"+(t?" in "+t:"")));return t&&!i[n]&&(i[n]=!0,console.warn(o(n," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(r,n,s)}},e.exports={assertOptions:function(e,t,r){if("object"!=typeof e)throw new TypeError("options must be an object");for(var n=Object.keys(e),o=n.length;o-- >0;){var i=n[o],s=t[i];if(s){var a=e[i],u=void 0===a||s(a,i,e);if(!0!==u)throw new TypeError("option "+i+" must be "+u)}else if(!0!==r)throw Error("Unknown option "+i)}},validators:o}},4867:(e,t,r)=>{"use strict";var n=r(1849),o=Object.prototype.toString;function i(e){return"[object Array]"===o.call(e)}function s(e){return void 0===e}function a(e){return null!==e&&"object"==typeof e}function u(e){if("[object Object]"!==o.call(e))return!1;var t=Object.getPrototypeOf(e);return null===t||t===Object.prototype}function c(e){return"[object Function]"===o.call(e)}function l(e,t){if(null!=e)if("object"!=typeof e&&(e=[e]),i(e))for(var r=0,n=e.length;r{t.formatArgs=function(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+e.exports.humanize(this.diff),!this.useColors)return;const r="color: "+this.color;t.splice(1,0,r,"color: inherit");let n=0,o=0;t[0].replace(/%[a-zA-Z%]/g,(e=>{"%%"!==e&&(n++,"%c"===e&&(o=n))})),t.splice(o,0,r)},t.save=function(e){try{e?t.storage.setItem("debug",e):t.storage.removeItem("debug")}catch(e){}},t.load=function(){let e;try{e=t.storage.getItem("debug")}catch(e){}return!e&&"undefined"!=typeof process&&"env"in process&&(e=process.env.DEBUG),e},t.useColors=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))},t.storage=function(){try{return localStorage}catch(e){}}(),t.destroy=(()=>{let e=!1;return()=>{e||(e=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})(),t.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"],t.log=console.debug||console.log||(()=>{}),e.exports=r(2447)(t);const{formatters:n}=e.exports;n.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}},2447:(e,t,r)=>{e.exports=function(e){function t(e){let r,o,i,s=null;function a(...e){if(!a.enabled)return;const n=a,o=Number(new Date),i=o-(r||o);n.diff=i,n.prev=r,n.curr=o,r=o,e[0]=t.coerce(e[0]),"string"!=typeof e[0]&&e.unshift("%O");let s=0;e[0]=e[0].replace(/%([a-zA-Z%])/g,((r,o)=>{if("%%"===r)return"%";s++;const i=t.formatters[o];if("function"==typeof i){const t=e[s];r=i.call(n,t),e.splice(s,1),s--}return r})),t.formatArgs.call(n,e),(n.log||t.log).apply(n,e)}return a.namespace=e,a.useColors=t.useColors(),a.color=t.selectColor(e),a.extend=n,a.destroy=t.destroy,Object.defineProperty(a,"enabled",{enumerable:!0,configurable:!1,get:()=>null!==s?s:(o!==t.namespaces&&(o=t.namespaces,i=t.enabled(e)),i),set:e=>{s=e}}),"function"==typeof t.init&&t.init(a),a}function n(e,r){const n=t(this.namespace+(void 0===r?":":r)+e);return n.log=this.log,n}function o(e){return e.toString().substring(2,e.toString().length-2).replace(/\.\*\?$/,"*")}return t.debug=t,t.default=t,t.coerce=function(e){return e instanceof Error?e.stack||e.message:e},t.disable=function(){const e=[...t.names.map(o),...t.skips.map(o).map((e=>"-"+e))].join(",");return t.enable(""),e},t.enable=function(e){let r;t.save(e),t.namespaces=e,t.names=[],t.skips=[];const n=("string"==typeof e?e:"").split(/[\s,]+/),o=n.length;for(r=0;r{t[r]=e[r]})),t.names=[],t.skips=[],t.formatters={},t.selectColor=function(e){let r=0;for(let t=0;t{"undefined"==typeof process||"renderer"===process.type||!0===process.browser||process.__nwjs?e.exports=r(1227):e.exports=r(39)},39:(e,t,r)=>{const n=r(6224),o=r(3837);t.init=function(e){e.inspectOpts={};const r=Object.keys(t.inspectOpts);for(let n=0;n{}),"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."),t.colors=[6,2,3,4,5,1];try{const e=r(2130);e&&(e.stderr||e).level>=2&&(t.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch(e){}t.inspectOpts=Object.keys(process.env).filter((e=>/^debug_/i.test(e))).reduce(((e,t)=>{const r=t.substring(6).toLowerCase().replace(/_([a-z])/g,((e,t)=>t.toUpperCase()));let n=process.env[t];return n=!!/^(yes|on|true|enabled)$/i.test(n)||!/^(no|off|false|disabled)$/i.test(n)&&("null"===n?null:Number(n)),e[r]=n,e}),{}),e.exports=r(2447)(t);const{formatters:i}=e.exports;i.o=function(e){return this.inspectOpts.colors=this.useColors,o.inspect(e,this.inspectOpts).split("\n").map((e=>e.trim())).join(" ")},i.O=function(e){return this.inspectOpts.colors=this.useColors,o.inspect(e,this.inspectOpts)}},4076:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.decodeHTML=t.decodeHTMLStrict=t.decodeXML=void 0;var o=n(r(9323)),i=n(r(9591)),s=n(r(2586)),a=n(r(26)),u=/&(?:[a-zA-Z0-9]+|#[xX][\da-fA-F]+|#\d+);/g;function c(e){var t=d(e);return function(e){return String(e).replace(u,t)}}t.decodeXML=c(s.default),t.decodeHTMLStrict=c(o.default);var l=function(e,t){return e65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+String.fromCharCode(e)};t.default=function(e){return e>=55296&&e<=57343||e>1114111?"�":(e in o.default&&(e=o.default[e]),i(e))}},7322:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.escapeUTF8=t.escape=t.encodeNonAsciiHTML=t.encodeHTML=t.encodeXML=void 0;var o=l(n(r(2586)).default),i=d(o);t.encodeXML=v(o);var s,a,u=l(n(r(9323)).default),c=d(u);function l(e){return Object.keys(e).sort().reduce((function(t,r){return t[e[r]]="&"+r+";",t}),{})}function d(e){for(var t=[],r=[],n=0,o=Object.keys(e);n1?p(e):e.charCodeAt(0)).toString(16).toUpperCase()+";"}var m=new RegExp(i.source+"|"+f.source,"g");function v(e){return function(t){return t.replace(m,(function(t){return e[t]||h(t)}))}}t.escape=function(e){return e.replace(m,h)},t.escapeUTF8=function(e){return e.replace(i,h)}},5863:(e,t,r)=>{"use strict";t.p1=void 0;r(4076),r(7322),r(7322);var n=r(4076);Object.defineProperty(t,"p1",{enumerable:!0,get:function(){return n.decodeHTML}})},259:(e,t,r)=>{"use strict";const n=r(7849).buildOptions,o={attributeNamePrefix:"@_",attrNodeName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataTagName:!1,cdataPositionChar:"\\c",format:!1,indentBy:" ",supressEmptyNode:!1,tagValueProcessor:function(e){return e},attrValueProcessor:function(e){return e}},i=["attributeNamePrefix","attrNodeName","textNodeName","ignoreAttributes","cdataTagName","cdataPositionChar","format","indentBy","supressEmptyNode","tagValueProcessor","attrValueProcessor"];function s(e){this.options=n(e,o,i),this.options.ignoreAttributes||this.options.attrNodeName?this.isAttribute=function(){return!1}:(this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=h),this.options.cdataTagName?this.isCDATA=m:this.isCDATA=function(){return!1},this.replaceCDATAstr=a,this.replaceCDATAarr=u,this.options.format?(this.indentate=p,this.tagEndChar=">\n",this.newLine="\n"):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine=""),this.options.supressEmptyNode?(this.buildTextNode=f,this.buildObjNode=l):(this.buildTextNode=d,this.buildObjNode=c),this.buildTextValNode=d,this.buildObjectNode=c}function a(e,t){return e=this.options.tagValueProcessor(""+e),""===this.options.cdataPositionChar||""===e?e+"");return e+this.newLine}function c(e,t,r,n){return r&&!e.includes("<")?this.indentate(n)+"<"+t+r+">"+e+""+t+this.tagEndChar:this.indentate(n)+"<"+t+r+this.tagEndChar+e+this.indentate(n)+""+t+this.tagEndChar}function l(e,t,r,n){return""!==e?this.buildObjectNode(e,t,r,n):this.indentate(n)+"<"+t+r+"/"+this.tagEndChar}function d(e,t,r,n){return this.indentate(n)+"<"+t+r+">"+this.options.tagValueProcessor(e)+""+t+this.tagEndChar}function f(e,t,r,n){return""!==e?this.buildTextValNode(e,t,r,n):this.indentate(n)+"<"+t+r+"/"+this.tagEndChar}function p(e){return this.options.indentBy.repeat(e)}function h(e){return!!e.startsWith(this.options.attributeNamePrefix)&&e.substr(this.attrPrefixLen)}function m(e){return e===this.options.cdataTagName}s.prototype.parse=function(e){return this.j2x(e,0).val},s.prototype.j2x=function(e,t){let r="",n="";const o=Object.keys(e),i=o.length;for(let s=0;s{"use strict";const n=function(e){return String.fromCharCode(e)},o={nilChar:n(176),missingChar:n(201),nilPremitive:n(175),missingPremitive:n(200),emptyChar:n(178),emptyValue:n(177),boundryChar:n(179),objStart:n(198),arrStart:n(204),arrayEnd:n(185)},i=[o.nilChar,o.nilPremitive,o.missingChar,o.missingPremitive,o.boundryChar,o.emptyChar,o.emptyValue,o.arrayEnd,o.objStart,o.arrStart],s=function(e,t,r){if("string"==typeof t)return e&&e[0]&&void 0!==e[0].val?a(e[0].val,t):a(e,t);{const i=void 0===(n=e)?o.missingChar:null===n?o.nilChar:!(n.child&&0===Object.keys(n.child).length&&(!n.attrsMap||0===Object.keys(n.attrsMap).length))||o.emptyChar;if(!0===i){let n="";if(Array.isArray(t)){n+=o.arrStart;const i=t[0],c=e.length;if("string"==typeof i)for(let t=0;t{"use strict";const n=r(7849),o=function(e,t,r){const i={};if((!e.child||n.isEmptyObject(e.child))&&(!e.attrsMap||n.isEmptyObject(e.attrsMap)))return n.isExist(e.val)?e.val:"";if(n.isExist(e.val)&&("string"!=typeof e.val||""!==e.val&&e.val!==t.cdataPositionChar)){const o=n.isTagNameInArrayMode(e.tagname,t.arrayMode,r);i[t.textNodeName]=o?[e.val]:e.val}n.merge(i,e.attrsMap,t.arrayMode);const s=Object.keys(e.child);for(let a=0;a1){i[u]=[];for(let r in e.child[u])e.child[u].hasOwnProperty(r)&&i[u].push(o(e.child[u][r],t,u))}else{const s=o(e.child[u][0],t,u),a=!0===t.arrayMode&&"object"==typeof s||n.isTagNameInArrayMode(u,t.arrayMode,r);i[u]=a?[s]:s}}return i};t.convertToJson=o},7702:(e,t,r)=>{"use strict";const n=r(7849),o=r(7849).buildOptions,i=r(3543),s=function(e,t,r){let o="{";const i=Object.keys(e.child);for(let r=0;r1){for(var u in o+='"'+a+'" : [ ',e.child[a])o+=s(e.child[a][u],t)+" , ";o=o.substr(0,o.length-1)+" ] "}else o+='"'+a+'" : '+s(e.child[a][0],t)+" ,"}return n.merge(o,e.attrsMap),n.isEmptyObject(o)?n.isExist(e.val)?e.val:"":(n.isExist(e.val)&&("string"!=typeof e.val||""!==e.val&&e.val!==t.cdataPositionChar)&&(o+='"'+t.textNodeName+'" : '+(!0!==(c=e.val)&&!1!==c&&isNaN(c)?'"'+c+'"':c)),","===o[o.length-1]&&(o=o.substr(0,o.length-2)),o+"}");var c};t.convertToJsonString=function(e,t){return(t=o(t,i.defaultOptions,i.props)).indentBy=t.indentBy||"",s(e,t,0)}},6965:(e,t,r)=>{"use strict";const n=r(284),o=r(3543),i=r(3543),s=r(7849).buildOptions,a=r(8501);t.parse=function(e,t,r){if(r){!0===r&&(r={});const t=a.validate(e,r);if(!0!==t)throw Error(t.err.msg)}t=s(t,i.defaultOptions,i.props);const u=o.getTraversalObj(e,t);return n.convertToJson(u,t)},t.convertTonimn=r(8398).convert2nimn,t.getTraversalObj=o.getTraversalObj,t.convertToJson=n.convertToJson,t.convertToJsonString=r(7702).convertToJsonString,t.validate=a.validate,t.j2xParser=r(259),t.parseToNimn=function(e,r,n){return t.convertTonimn(t.getTraversalObj(e,n),r,n)}},7849:(e,t)=>{"use strict";const r="[: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][: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\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*",n=new RegExp("^"+r+"$");t.isExist=function(e){return void 0!==e},t.isEmptyObject=function(e){return 0===Object.keys(e).length},t.merge=function(e,t,r){if(t){const n=Object.keys(t),o=n.length;for(let i=0;i{"use strict";const n=r(7849),o={allowBooleanAttributes:!1},i=["allowBooleanAttributes"];function s(e,t){for(var r=t;t5&&"xml"===n)return f("InvalidXml","XML declaration allowed only at the start of the document.",h(e,t));if("?"==e[t]&&">"==e[t+1]){t++;break}}return t}function a(e,t){if(e.length>t+5&&"-"===e[t+1]&&"-"===e[t+2]){for(t+=3;t"===e[t+2]){t+=2;break}}else if(e.length>t+8&&"D"===e[t+1]&&"O"===e[t+2]&&"C"===e[t+3]&&"T"===e[t+4]&&"Y"===e[t+5]&&"P"===e[t+6]&&"E"===e[t+7]){let r=1;for(t+=8;t"===e[t]&&(r--,0===r))break}else if(e.length>t+9&&"["===e[t+1]&&"C"===e[t+2]&&"D"===e[t+3]&&"A"===e[t+4]&&"T"===e[t+5]&&"A"===e[t+6]&&"["===e[t+7])for(t+=8;t"===e[t+2]){t+=2;break}return t}function u(e,t){let r="",n="",o=!1;for(;t"===e[t]&&""===n){o=!0;break}r+=e[t]}return""===n&&{value:r,index:t,tagClosed:o}}t.validate=function(e,t){t=n.buildOptions(t,o,i);const r=[];let c=!1,p=!1;"\ufeff"===e[0]&&(e=e.substr(1));for(let o=0;o"!==e[o]&&" "!==e[o]&&"\t"!==e[o]&&"\n"!==e[o]&&"\r"!==e[o];o++)v+=e[o];if(v=v.trim(),"/"===v[v.length-1]&&(v=v.substring(0,v.length-1),o--),m=v,!n.isName(m)){let t;return t=0===v.trim().length?"There is an unnecessary space between tag name and backward slash ' ..'.":"Tag '"+v+"' is an invalid name.",f("InvalidTag",t,h(e,o))}const g=u(e,o);if(!1===g)return f("InvalidAttr","Attributes for '"+v+"' have open quote.",h(e,o));let y=g.value;if(o=g.index,"/"===y[y.length-1]){y=y.substring(0,y.length-1);const r=l(y,t);if(!0!==r)return f(r.err.code,r.err.msg,h(e,o-y.length+r.err.line));c=!0}else if(i){if(!g.tagClosed)return f("InvalidTag","Closing tag '"+v+"' doesn't have proper closing.",h(e,o));if(y.trim().length>0)return f("InvalidTag","Closing tag '"+v+"' can't have attributes or invalid starting.",h(e,o));{const t=r.pop();if(v!==t)return f("InvalidTag","Closing tag '"+t+"' is expected inplace of '"+v+"'.",h(e,o));0==r.length&&(p=!0)}}else{const n=l(y,t);if(!0!==n)return f(n.err.code,n.err.msg,h(e,o-y.length+n.err.line));if(!0===p)return f("InvalidXml","Multiple possible root nodes found.",h(e,o));r.push(v),c=!0}for(o++;o0)||f("InvalidXml","Invalid '"+JSON.stringify(r,null,4).replace(/\r?\n/g,"")+"' found.",1):f("InvalidXml","Start tag expected.",1)};const c=new RegExp("(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['\"])(([\\s\\S])*?)\\5)?","g");function l(e,t){const r=n.getAllMatches(e,c),o={};for(let n=0;n{"use strict";e.exports=function(e,t,r){this.tagname=e,this.parent=t,this.child={},this.attrsMap={},this.val=r,this.addChild=function(e){Array.isArray(this.child[e.tagname])?this.child[e.tagname].push(e):this.child[e.tagname]=[e]}}},3543:(e,t,r)=>{"use strict";const n=r(7849),o=r(7849).buildOptions,i=r(6468);"<((!\\[CDATA\\[([\\s\\S]*?)(]]>))|((NAME:)?(NAME))([^>]*)>|((\\/)(NAME)\\s*>))([^<]*)".replace(/NAME/g,n.nameRegexp),!Number.parseInt&&window.parseInt&&(Number.parseInt=window.parseInt),!Number.parseFloat&&window.parseFloat&&(Number.parseFloat=window.parseFloat);const s={attributeNamePrefix:"@_",attrNodeName:!1,textNodeName:"#text",ignoreAttributes:!0,ignoreNameSpace:!1,allowBooleanAttributes:!1,parseNodeValue:!0,parseAttributeValue:!1,arrayMode:!1,trimValues:!0,cdataTagName:!1,cdataPositionChar:"\\c",tagValueProcessor:function(e,t){return e},attrValueProcessor:function(e,t){return e},stopNodes:[]};t.defaultOptions=s;const a=["attributeNamePrefix","attrNodeName","textNodeName","ignoreAttributes","ignoreNameSpace","allowBooleanAttributes","parseNodeValue","parseAttributeValue","arrayMode","trimValues","cdataTagName","cdataPositionChar","tagValueProcessor","attrValueProcessor","parseTrueNumberOnly","stopNodes"];function u(e,t,r){return t&&(r.trimValues&&(t=t.trim()),t=l(t=r.tagValueProcessor(t,e),r.parseNodeValue,r.parseTrueNumberOnly)),t}function c(e,t){if(t.ignoreNameSpace){const t=e.split(":"),r="/"===e.charAt(0)?"/":"";if("xmlns"===t[0])return"";2===t.length&&(e=r+t[1])}return e}function l(e,t,r){if(t&&"string"==typeof e){let t;return""===e.trim()||isNaN(e)?t="true"===e||"false"!==e&&e:(-1!==e.indexOf("0x")?t=Number.parseInt(e,16):-1!==e.indexOf(".")?(t=Number.parseFloat(e),e=e.replace(/\.?0+$/,"")):t=Number.parseInt(e,10),r&&(t=String(t)===e?t:e)),t}return n.isExist(e)?e:""}t.props=a;const d=new RegExp("([^\\s=]+)\\s*(=\\s*(['\"])(.*?)\\3)?","g");function f(e,t){if(!t.ignoreAttributes&&"string"==typeof e){e=e.replace(/\r?\n/g," ");const r=n.getAllMatches(e,d),o=r.length,i={};for(let e=0;e"===t)return{data:n,index:o};"\t"===t&&(t=" ")}n+=t}}function h(e,t,r,n){const o=e.indexOf(t,r);if(-1===o)throw new Error(n);return o+t.length-1}t.getTraversalObj=function(e,t){e=e.replace(/\r\n?/g,"\n"),t=o(t,s,a);const r=new i("!xml");let c=r,l="";for(let r=0;r",r,"Closing Tag is not closed.");let i=e.substring(r+2,o).trim();if(t.ignoreNameSpace){const e=i.indexOf(":");-1!==e&&(i=i.substr(e+1))}c&&(c.val?c.val=n.getValue(c.val)+""+u(i,l,t):c.val=u(i,l,t)),t.stopNodes.length&&t.stopNodes.includes(c.tagname)&&(c.child=[],null==c.attrsMap&&(c.attrsMap={}),c.val=e.substr(c.startIndex+1,r-c.startIndex-1)),c=c.parent,l="",r=o}else if("?"===e[r+1])r=h(e,"?>",r,"Pi Tag is not closed.");else if("!--"===e.substr(r+1,3))r=h(e,"--\x3e",r,"Comment is not closed.");else if("!D"===e.substr(r+1,2)){const t=h(e,">",r,"DOCTYPE is not closed.");r=e.substring(r,t).indexOf("[")>=0?e.indexOf("]>",r)+1:t}else if("!["===e.substr(r+1,2)){const o=h(e,"]]>",r,"CDATA is not closed.")-2,s=e.substring(r+9,o);if(l&&(c.val=n.getValue(c.val)+""+u(c.tagname,l,t),l=""),t.cdataTagName){const e=new i(t.cdataTagName,c,s);c.addChild(e),c.val=n.getValue(c.val)+t.cdataPositionChar,s&&(e.val=s)}else c.val=(c.val||"")+(s||"");r=o+2}else{const o=p(e,r+1);let s=o.data;const a=o.index,d=s.indexOf(" ");let h=s,m=!0;if(-1!==d&&(h=s.substr(0,d).replace(/\s\s*$/,""),s=s.substr(d+1)),t.ignoreNameSpace){const e=h.indexOf(":");-1!==e&&(h=h.substr(e+1),m=h!==o.data.substr(e+1))}if(c&&l&&"!xml"!==c.tagname&&(c.val=n.getValue(c.val)+""+u(c.tagname,l,t)),s.length>0&&s.lastIndexOf("/")===s.length-1){"/"===h[h.length-1]?(h=h.substr(0,h.length-1),s=h):s=s.substr(0,s.length-1);const e=new i(h,c,"");h!==s&&(e.attrsMap=f(s,t)),c.addChild(e)}else{const e=new i(h,c);t.stopNodes.length&&t.stopNodes.includes(e.tagname)&&(e.startIndex=a),h!==s&&m&&(e.attrsMap=f(s,t)),c.addChild(e),c=e}l="",r=a}else l+=e[r];return r}},2261:(e,t,r)=>{var n;e.exports=function(){if(!n){try{n=r(5158)("follow-redirects")}catch(e){}"function"!=typeof n&&(n=function(){})}n.apply(null,arguments)}},938:(e,t,r)=>{var n=r(7310),o=n.URL,i=r(3685),s=r(5687),a=r(2781).Writable,u=r(9491),c=r(2261),l=["abort","aborted","connect","error","socket","timeout"],d=Object.create(null);l.forEach((function(e){d[e]=function(t,r,n){this._redirectable.emit(e,t,r,n)}}));var f=E("ERR_FR_REDIRECTION_FAILURE","Redirected request failed"),p=E("ERR_FR_TOO_MANY_REDIRECTS","Maximum number of redirects exceeded"),h=E("ERR_FR_MAX_BODY_LENGTH_EXCEEDED","Request body larger than maxBodyLength limit"),m=E("ERR_STREAM_WRITE_AFTER_END","write after end");function v(e,t){a.call(this),this._sanitizeOptions(e),this._options=e,this._ended=!1,this._ending=!1,this._redirectCount=0,this._redirects=[],this._requestBodyLength=0,this._requestBodyBuffers=[],t&&this.on("response",t);var r=this;this._onNativeResponse=function(e){r._processResponse(e)},this._performRequest()}function g(e){var t={maxRedirects:21,maxBodyLength:10485760},r={};return Object.keys(e).forEach((function(i){var s=i+":",a=r[s]=e[i],l=t[i]=Object.create(a);Object.defineProperties(l,{request:{value:function(e,i,a){if("string"==typeof e){var l=e;try{e=b(new o(l))}catch(t){e=n.parse(l)}}else o&&e instanceof o?e=b(e):(a=i,i=e,e={protocol:s});return"function"==typeof i&&(a=i,i=null),(i=Object.assign({maxRedirects:t.maxRedirects,maxBodyLength:t.maxBodyLength},e,i)).nativeProtocols=r,u.equal(i.protocol,s,"protocol mismatch"),c("options",i),new v(i,a)},configurable:!0,enumerable:!0,writable:!0},get:{value:function(e,t,r){var n=l.request(e,t,r);return n.end(),n},configurable:!0,enumerable:!0,writable:!0}})})),t}function y(){}function b(e){var t={protocol:e.protocol,hostname:e.hostname.startsWith("[")?e.hostname.slice(1,-1):e.hostname,hash:e.hash,search:e.search,pathname:e.pathname,path:e.pathname+e.search,href:e.href};return""!==e.port&&(t.port=Number(e.port)),t}function w(e,t){var r;for(var n in t)e.test(n)&&(r=t[n],delete t[n]);return null==r?void 0:String(r).trim()}function E(e,t){function r(e){Error.captureStackTrace(this,this.constructor),e?(this.message=t+": "+e.message,this.cause=e):this.message=t}return r.prototype=new Error,r.prototype.constructor=r,r.prototype.name="Error ["+e+"]",r.prototype.code=e,r}function A(e){for(var t=0;t=300&&t<400){if(A(this._currentRequest),e.destroy(),++this._redirectCount>this._options.maxRedirects)return void this.emit("error",new p);((301===t||302===t)&&"POST"===this._options.method||303===t&&!/^(?:GET|HEAD)$/.test(this._options.method))&&(this._options.method="GET",this._requestBodyBuffers=[],w(/^content-/i,this._options.headers));var o,i=w(/^host$/i,this._options.headers),s=n.parse(this._currentUrl),a=i||s.host,u=/^\w+:/.test(r)?this._currentUrl:n.format(Object.assign(s,{host:a}));try{o=n.resolve(u,r)}catch(e){return void this.emit("error",new f(e))}c("redirecting to",o),this._isRedirect=!0;var l=n.parse(o);if(Object.assign(this._options,l),l.host===a||function(e,t){const r=e.length-t.length-1;return r>0&&"."===e[r]&&e.endsWith(t)}(l.host,a)||w(/^authorization$/i,this._options.headers),"function"==typeof this._options.beforeRedirect){var d={headers:e.headers};try{this._options.beforeRedirect.call(null,this._options,d)}catch(e){return void this.emit("error",e)}this._sanitizeOptions(this._options)}try{this._performRequest()}catch(e){this.emit("error",new f(e))}}else e.responseUrl=this._currentUrl,e.redirects=this._redirects,this.emit("response",e),this._requestBodyBuffers=[]},e.exports=g({http:i,https:s}),e.exports.wrap=g},6560:e=>{"use strict";e.exports=(e,t=process.argv)=>{const r=e.startsWith("-")?"":1===e.length?"-":"--",n=t.indexOf(r+e),o=t.indexOf("--");return-1!==n&&(-1===o||n{var t=1e3,r=60*t,n=60*r,o=24*n;function i(e,t,r,n){var o=t>=1.5*r;return Math.round(e/r)+" "+n+(o?"s":"")}e.exports=function(e,s){s=s||{};var a,u,c=typeof e;if("string"===c&&e.length>0)return function(e){if(!((e=String(e)).length>100)){var i=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(e);if(i){var s=parseFloat(i[1]);switch((i[2]||"ms").toLowerCase()){case"years":case"year":case"yrs":case"yr":case"y":return 315576e5*s;case"weeks":case"week":case"w":return 6048e5*s;case"days":case"day":case"d":return s*o;case"hours":case"hour":case"hrs":case"hr":case"h":return s*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return}}}}(e);if("number"===c&&isFinite(e))return s.long?(a=e,(u=Math.abs(a))>=o?i(a,u,o,"day"):u>=n?i(a,u,n,"hour"):u>=r?i(a,u,r,"minute"):u>=t?i(a,u,t,"second"):a+" ms"):function(e){var i=Math.abs(e);return i>=o?Math.round(e/o)+"d":i>=n?Math.round(e/n)+"h":i>=r?Math.round(e/r)+"m":i>=t?Math.round(e/t)+"s":e+"ms"}(e);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))}},2130:(e,t,r)=>{"use strict";const n=r(2037),o=r(6224),i=r(6560),{env:s}=process;let a;function u(e){return 0!==e&&{level:e,hasBasic:!0,has256:e>=2,has16m:e>=3}}function c(e,t){if(0===a)return 0;if(i("color=16m")||i("color=full")||i("color=truecolor"))return 3;if(i("color=256"))return 2;if(e&&!t&&void 0===a)return 0;const r=a||0;if("dumb"===s.TERM)return r;if("win32"===process.platform){const e=n.release().split(".");return Number(e[0])>=10&&Number(e[2])>=10586?Number(e[2])>=14931?3:2:1}if("CI"in s)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some((e=>e in s))||"codeship"===s.CI_NAME?1:r;if("TEAMCITY_VERSION"in s)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(s.TEAMCITY_VERSION)?1:0;if("truecolor"===s.COLORTERM)return 3;if("TERM_PROGRAM"in s){const e=parseInt((s.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(s.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(s.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(s.TERM)||"COLORTERM"in s?1:r}i("no-color")||i("no-colors")||i("color=false")||i("color=never")?a=0:(i("color")||i("colors")||i("color=true")||i("color=always"))&&(a=1),"FORCE_COLOR"in s&&(a="true"===s.FORCE_COLOR?1:"false"===s.FORCE_COLOR?0:0===s.FORCE_COLOR.length?1:Math.min(parseInt(s.FORCE_COLOR,10),3)),e.exports={supportsColor:function(e){return u(c(e,e&&e.isTTY))},stdout:u(c(!0,o.isatty(1))),stderr:u(c(!0,o.isatty(2)))}},6703:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.IDPApi=t.IDPApiFactory=t.IDPApiFp=t.IDPApiAxiosParamCreator=t.HealthApi=t.HealthApiFactory=t.HealthApiFp=t.HealthApiAxiosParamCreator=t.GithubSlsRestApiSupportedVersions=t.GithubSlsRestApiNameIdFormatV1=t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum=t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum=void 0;const o=n(r(9669)),i=r(476),s=r(3347);var a,u;(t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum||(t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum={})).GithubLoginTokenEvent="GithubLoginTokenEvent",(u=t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum||(t.GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum={}))[u.NUMBER_1=1]="NUMBER_1",(a=t.GithubSlsRestApiNameIdFormatV1||(t.GithubSlsRestApiNameIdFormatV1={})).Id="id",a.Login="login",a.Email="email",a.EmailV2="emailV2",(t.GithubSlsRestApiSupportedVersions||(t.GithubSlsRestApiSupportedVersions={}))._20220101="20220101",t.HealthApiAxiosParamCreator=function(e){return{get:async(t={})=>{const r=new URL("/api/health",i.DUMMY_BASE_URL);let n;e&&(n=e.baseOptions);const o={method:"GET",...n,...t};(0,i.setSearchParams)(r,{});let s=n&&n.headers?n.headers:{};return o.headers={...s,...t.headers},{url:(0,i.toPathString)(r),options:o}}}},t.HealthApiFp=function(e){const r=(0,t.HealthApiAxiosParamCreator)(e);return{async get(t){const n=await r.get(t);return(0,i.createRequestFunction)(n,o.default,s.BASE_PATH,e)}}},t.HealthApiFactory=function(e,r,n){const o=(0,t.HealthApiFp)(e);return{get:e=>o.get(e).then((e=>e(n,r)))}};class c extends s.BaseAPI{get(e){return(0,t.HealthApiFp)(this.configuration).get(e).then((e=>e(this.axios,this.basePath)))}}t.HealthApi=c,t.IDPApiAxiosParamCreator=function(e){return{assumeRole:async(t,r,n,o={})=>{(0,i.assertParamExists)("assumeRole","role",t);const s="/api/v1/idp/roles/{role}/assume".replace("{role}",encodeURIComponent(String(t))),a=new URL(s,i.DUMMY_BASE_URL);let u;e&&(u=e.baseOptions);const c={method:"POST",...u,...o},l={},d={};await(0,i.setBearerAuthToObject)(l,e),void 0!==r&&(d.org=r),void 0!==n&&(d.provider=n),(0,i.setSearchParams)(a,d);let f=u&&u.headers?u.headers:{};return c.headers={...l,...f,...o.headers},{url:(0,i.toPathString)(a),options:c}},assumeRoleForBrowser:async(t,r,n,o={})=>{(0,i.assertParamExists)("assumeRoleForBrowser","role",t);const s="/api/v1/idp/roles/{role}/assume/browser".replace("{role}",encodeURIComponent(String(t))),a=new URL(s,i.DUMMY_BASE_URL);let u;e&&(u=e.baseOptions);const c={method:"GET",...u,...o},l={};void 0!==r&&(l.org=r),void 0!==n&&(l.provider=n),(0,i.setSearchParams)(a,l);let d=u&&u.headers?u.headers:{};return c.headers={...d,...o.headers},{url:(0,i.toPathString)(a),options:c}},assumeRoleForRepo:async(t,r,n,o,s,a,u={})=>{(0,i.assertParamExists)("assumeRoleForRepo","org",t),(0,i.assertParamExists)("assumeRoleForRepo","repo",r),(0,i.assertParamExists)("assumeRoleForRepo","role",n);const c="/api/v1/idp/orgs/{org}/repos/{repo}/roles/{role}/assume".replace("{org}",encodeURIComponent(String(t))).replace("{repo}",encodeURIComponent(String(r))).replace("{role}",encodeURIComponent(String(n))),l=new URL(c,i.DUMMY_BASE_URL);let d;e&&(d=e.baseOptions);const f={method:"POST",...d,...u},p={},h={};await(0,i.setBearerAuthToObject)(p,e),void 0!==o&&(h.provider=o),void 0!==s&&(h.commitSha=s),void 0!==a&&(h.configOwner=a),(0,i.setSearchParams)(l,h);let m=d&&d.headers?d.headers:{};return f.headers={...p,...m,...u.headers},{url:(0,i.toPathString)(l),options:f}},encrypt:async(t,r,n={})=>{(0,i.assertParamExists)("encrypt","org",t),(0,i.assertParamExists)("encrypt","githubSlsRestApiEncryptRequest",r);const o="/api/v1/idp/orgs/{org}/encrypt".replace("{org}",encodeURIComponent(String(t))),s=new URL(o,i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"POST",...a,...n},c={"Content-Type":"application/json"};(0,i.setSearchParams)(s,{});let l=a&&a.headers?a.headers:{};return u.headers={...c,...l,...n.headers},u.data=(0,i.serializeDataIfNeeded)(r,u,e),{url:(0,i.toPathString)(s),options:u}},getIdentity:async(t={})=>{const r=new URL("/api/v1/idp/me",i.DUMMY_BASE_URL);let n;e&&(n=e.baseOptions);const o={method:"GET",...n,...t},s={};await(0,i.setBearerAuthToObject)(s,e),(0,i.setSearchParams)(r,{});let a=n&&n.headers?n.headers:{};return o.headers={...s,...a,...t.headers},{url:(0,i.toPathString)(r),options:o}},getOrgConfig:async(t,r,n={})=>{(0,i.assertParamExists)("getOrgConfig","org",t);const o="/api/v1/idp/orgs/{org}/config".replace("{org}",encodeURIComponent(String(t))),s=new URL(o,i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"GET",...a,...n},c={},l={};await(0,i.setBearerAuthToObject)(c,e),void 0!==r&&(l.raw=r),(0,i.setSearchParams)(s,l);let d=a&&a.headers?a.headers:{};return u.headers={...c,...d,...n.headers},{url:(0,i.toPathString)(s),options:u}},getOrgMetadata:async(t,r={})=>{(0,i.assertParamExists)("getOrgMetadata","org",t);const n="/api/v1/idp/orgs/{org}/metadata".replace("{org}",encodeURIComponent(String(t))),o=new URL(n,i.DUMMY_BASE_URL);let s;e&&(s=e.baseOptions);const a={method:"GET",...s,...r};(0,i.setSearchParams)(o,{});let u=s&&s.headers?s.headers:{};return a.headers={...u,...r.headers},{url:(0,i.toPathString)(o),options:a}},listLogins:async(t,r,n={})=>{const o=new URL("/api/v1/idp/logins",i.DUMMY_BASE_URL);let s;e&&(s=e.baseOptions);const a={method:"GET",...s,...n},u={},c={};await(0,i.setBearerAuthToObject)(u,e),void 0!==t&&(c.org=t),void 0!==r&&(c.refresh=r),(0,i.setSearchParams)(o,c);let l=s&&s.headers?s.headers:{};return a.headers={...u,...l,...n.headers},{url:(0,i.toPathString)(o),options:a}},listOrgRepos:async(t={})=>{const r=new URL("/api/v1/idp/orgs",i.DUMMY_BASE_URL);let n;e&&(n=e.baseOptions);const o={method:"GET",...n,...t},s={};await(0,i.setBearerAuthToObject)(s,e),(0,i.setSearchParams)(r,{});let a=n&&n.headers?n.headers:{};return o.headers={...s,...a,...t.headers},{url:(0,i.toPathString)(r),options:o}},listRoles:async(t,r,n,o={})=>{const s=new URL("/api/v1/idp/roles",i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"GET",...a,...o},c={},l={};await(0,i.setBearerAuthToObject)(c,e),void 0!==t&&(l.org=t),void 0!==r&&(l.provider=r),void 0!==n&&(l.refresh=n),(0,i.setSearchParams)(s,l);let d=a&&a.headers?a.headers:{};return u.headers={...c,...d,...o.headers},{url:(0,i.toPathString)(s),options:u}},providerLogin:async(t,r,n={})=>{(0,i.assertParamExists)("providerLogin","provider",t);const o="/api/v1/idp/logins/{provider}/login".replace("{provider}",encodeURIComponent(String(t))),s=new URL(o,i.DUMMY_BASE_URL);let a;e&&(a=e.baseOptions);const u={method:"POST",...a,...n},c={},l={};await(0,i.setBearerAuthToObject)(c,e),void 0!==r&&(l.org=r),(0,i.setSearchParams)(s,l);let d=a&&a.headers?a.headers:{};return u.headers={...c,...d,...n.headers},{url:(0,i.toPathString)(s),options:u}},refreshOrgRepoConfig:async(t,r,n,o,s={})=>{(0,i.assertParamExists)("refreshOrgRepoConfig","org",t),(0,i.assertParamExists)("refreshOrgRepoConfig","repo",r);const a="/api/v1/idp/orgs/{org}/repos/{repo}/config".replace("{org}",encodeURIComponent(String(t))).replace("{repo}",encodeURIComponent(String(r))),u=new URL(a,i.DUMMY_BASE_URL);let c;e&&(c=e.baseOptions);const l={method:"POST",...c,...s},d={},f={};await(0,i.setBearerAuthToObject)(d,e),void 0!==n&&(f.dryrun=n),void 0!==o&&(f.commitSha=o),(0,i.setSearchParams)(u,f);let p=c&&c.headers?c.headers:{};return l.headers={...d,...p,...s.headers},{url:(0,i.toPathString)(u),options:l}},setOrgAndRepo:async(t,r,n,o={})=>{(0,i.assertParamExists)("setOrgAndRepo","org",t),(0,i.assertParamExists)("setOrgAndRepo","repo",r);const s="/api/v1/idp/orgs/{org}/repos/{repo}".replace("{org}",encodeURIComponent(String(t))).replace("{repo}",encodeURIComponent(String(r))),a=new URL(s,i.DUMMY_BASE_URL);let u;e&&(u=e.baseOptions);const c={method:"POST",...u,...o},l={},d={};await(0,i.setBearerAuthToObject)(l,e),void 0!==n&&(d.force=n),(0,i.setSearchParams)(a,d);let f=u&&u.headers?u.headers:{};return c.headers={...l,...f,...o.headers},{url:(0,i.toPathString)(a),options:c}}}},t.IDPApiFp=function(e){const r=(0,t.IDPApiAxiosParamCreator)(e);return{async assumeRole(t,n,a,u){const c=await r.assumeRole(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)},async assumeRoleForBrowser(t,n,a,u){const c=await r.assumeRoleForBrowser(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)},async assumeRoleForRepo(t,n,a,u,c,l,d){const f=await r.assumeRoleForRepo(t,n,a,u,c,l,d);return(0,i.createRequestFunction)(f,o.default,s.BASE_PATH,e)},async encrypt(t,n,a){const u=await r.encrypt(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async getIdentity(t){const n=await r.getIdentity(t);return(0,i.createRequestFunction)(n,o.default,s.BASE_PATH,e)},async getOrgConfig(t,n,a){const u=await r.getOrgConfig(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async getOrgMetadata(t,n){const a=await r.getOrgMetadata(t,n);return(0,i.createRequestFunction)(a,o.default,s.BASE_PATH,e)},async listLogins(t,n,a){const u=await r.listLogins(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async listOrgRepos(t){const n=await r.listOrgRepos(t);return(0,i.createRequestFunction)(n,o.default,s.BASE_PATH,e)},async listRoles(t,n,a,u){const c=await r.listRoles(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)},async providerLogin(t,n,a){const u=await r.providerLogin(t,n,a);return(0,i.createRequestFunction)(u,o.default,s.BASE_PATH,e)},async refreshOrgRepoConfig(t,n,a,u,c){const l=await r.refreshOrgRepoConfig(t,n,a,u,c);return(0,i.createRequestFunction)(l,o.default,s.BASE_PATH,e)},async setOrgAndRepo(t,n,a,u){const c=await r.setOrgAndRepo(t,n,a,u);return(0,i.createRequestFunction)(c,o.default,s.BASE_PATH,e)}}},t.IDPApiFactory=function(e,r,n){const o=(0,t.IDPApiFp)(e);return{assumeRole:(e,t,i,s)=>o.assumeRole(e,t,i,s).then((e=>e(n,r))),assumeRoleForBrowser:(e,t,i,s)=>o.assumeRoleForBrowser(e,t,i,s).then((e=>e(n,r))),assumeRoleForRepo:(e,t,i,s,a,u,c)=>o.assumeRoleForRepo(e,t,i,s,a,u,c).then((e=>e(n,r))),encrypt:(e,t,i)=>o.encrypt(e,t,i).then((e=>e(n,r))),getIdentity:e=>o.getIdentity(e).then((e=>e(n,r))),getOrgConfig:(e,t,i)=>o.getOrgConfig(e,t,i).then((e=>e(n,r))),getOrgMetadata:(e,t)=>o.getOrgMetadata(e,t).then((e=>e(n,r))),listLogins:(e,t,i)=>o.listLogins(e,t,i).then((e=>e(n,r))),listOrgRepos:e=>o.listOrgRepos(e).then((e=>e(n,r))),listRoles:(e,t,i,s)=>o.listRoles(e,t,i,s).then((e=>e(n,r))),providerLogin:(e,t,i)=>o.providerLogin(e,t,i).then((e=>e(n,r))),refreshOrgRepoConfig:(e,t,i,s,a)=>o.refreshOrgRepoConfig(e,t,i,s,a).then((e=>e(n,r))),setOrgAndRepo:(e,t,i,s)=>o.setOrgAndRepo(e,t,i,s).then((e=>e(n,r)))}};class l extends s.BaseAPI{assumeRole(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).assumeRole(e,r,n,o).then((e=>e(this.axios,this.basePath)))}assumeRoleForBrowser(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).assumeRoleForBrowser(e,r,n,o).then((e=>e(this.axios,this.basePath)))}assumeRoleForRepo(e,r,n,o,i,s,a){return(0,t.IDPApiFp)(this.configuration).assumeRoleForRepo(e,r,n,o,i,s,a).then((e=>e(this.axios,this.basePath)))}encrypt(e,r,n){return(0,t.IDPApiFp)(this.configuration).encrypt(e,r,n).then((e=>e(this.axios,this.basePath)))}getIdentity(e){return(0,t.IDPApiFp)(this.configuration).getIdentity(e).then((e=>e(this.axios,this.basePath)))}getOrgConfig(e,r,n){return(0,t.IDPApiFp)(this.configuration).getOrgConfig(e,r,n).then((e=>e(this.axios,this.basePath)))}getOrgMetadata(e,r){return(0,t.IDPApiFp)(this.configuration).getOrgMetadata(e,r).then((e=>e(this.axios,this.basePath)))}listLogins(e,r,n){return(0,t.IDPApiFp)(this.configuration).listLogins(e,r,n).then((e=>e(this.axios,this.basePath)))}listOrgRepos(e){return(0,t.IDPApiFp)(this.configuration).listOrgRepos(e).then((e=>e(this.axios,this.basePath)))}listRoles(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).listRoles(e,r,n,o).then((e=>e(this.axios,this.basePath)))}providerLogin(e,r,n){return(0,t.IDPApiFp)(this.configuration).providerLogin(e,r,n).then((e=>e(this.axios,this.basePath)))}refreshOrgRepoConfig(e,r,n,o,i){return(0,t.IDPApiFp)(this.configuration).refreshOrgRepoConfig(e,r,n,o,i).then((e=>e(this.axios,this.basePath)))}setOrgAndRepo(e,r,n,o){return(0,t.IDPApiFp)(this.configuration).setOrgAndRepo(e,r,n,o).then((e=>e(this.axios,this.basePath)))}}t.IDPApi=l},3347:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.RequiredError=t.BaseAPI=t.COLLECTION_FORMATS=t.BASE_PATH=void 0;const o=n(r(9669));t.BASE_PATH="https://sso.saml.to/github".replace(/\/+$/,""),t.COLLECTION_FORMATS={csv:",",ssv:" ",tsv:"\t",pipes:"|"},t.BaseAPI=class{basePath;axios;configuration;constructor(e,r=t.BASE_PATH,n=o.default){this.basePath=r,this.axios=n,e&&(this.configuration=e,this.basePath=e.basePath||this.basePath)}};class i extends Error{field;name="RequiredError";constructor(e,t){super(t),this.field=e}}t.RequiredError=i},476:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.createRequestFunction=t.toPathString=t.serializeDataIfNeeded=t.setSearchParams=t.setOAuthToObject=t.setBearerAuthToObject=t.setBasicAuthToObject=t.setApiKeyToObject=t.assertParamExists=t.DUMMY_BASE_URL=void 0;const n=r(3347);t.DUMMY_BASE_URL="https://example.com",t.assertParamExists=function(e,t,r){if(null==r)throw new n.RequiredError(t,`Required parameter ${t} was null or undefined when calling ${e}.`)},t.setApiKeyToObject=async function(e,t,r){if(r&&r.apiKey){const n="function"==typeof r.apiKey?await r.apiKey(t):await r.apiKey;e[t]=n}},t.setBasicAuthToObject=function(e,t){t&&(t.username||t.password)&&(e.auth={username:t.username,password:t.password})},t.setBearerAuthToObject=async function(e,t){if(t&&t.accessToken){const r="function"==typeof t.accessToken?await t.accessToken():await t.accessToken;e.Authorization="Bearer "+r}},t.setOAuthToObject=async function(e,t,r,n){if(n&&n.accessToken){const o="function"==typeof n.accessToken?await n.accessToken(t,r):await n.accessToken;e.Authorization="Bearer "+o}},t.setSearchParams=function(e,...t){const r=new URLSearchParams(e.search);for(const e of t)for(const t in e)if(Array.isArray(e[t])){r.delete(t);for(const n of e[t])r.append(t,n)}else r.set(t,e[t]);e.search=r.toString()},t.serializeDataIfNeeded=function(e,t,r){const n="string"!=typeof e;return(n&&r&&r.isJsonMime?r.isJsonMime(t.headers["Content-Type"]):n)?JSON.stringify(void 0!==e?e:{}):e||""},t.toPathString=function(e){return e.pathname+e.search+e.hash},t.createRequestFunction=function(e,t,r,n){return(o=t,i=r)=>{const s={...e.options,url:(n?.basePath||i)+e.url};return o.request(s)}}},339:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Configuration=void 0,t.Configuration=class{apiKey;username;password;accessToken;basePath;baseOptions;formDataCtor;constructor(e={}){this.apiKey=e.apiKey,this.username=e.username,this.password=e.password,this.accessToken=e.accessToken,this.basePath=e.basePath,this.baseOptions=e.baseOptions,this.formDataCtor=e.formDataCtor}isJsonMime(e){const t=new RegExp("^(application/json|[^;/ \t]+/[^;/ \t]+[+]json)[ \t]*(;.*)?$","i");return null!==e&&(t.test(e)||"application/json-patch+json"===e.toLowerCase())}}},7918:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),o=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),o(r(6703),t),o(r(339),t)},1034:function(e,t,r){"use strict";var n=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.Action=void 0;const o=r(2225),i=r(246),s=n(r(9669)),a=r(7918),{GITHUB_TOKEN:u,GITHUB_REPOSITORY:c,GITHUB_SHA:l,SAML_TO_NONLIVE:d,SAML_TO_API_KEY:f}=process.env;t.Action=class{async run(){if(!u)return void(0,o.setFailed)("Missing GITHUB_TOKEN environment variable");if(!c)throw new Error("Missing GITHUB_REPOSITORY environment variable");const[e,t]=c.split("/");if(!e||!t)throw new Error(`Unable to parse owner and repo from GITHUB_REPOSITORY environment variable: ${c}`);const r=(0,o.getInput)("role",{required:!0}),n=(0,o.getInput)("provider",{required:!1}),i=(0,o.getInput)("region",{required:!1})||"us-east-1",p=(0,o.getInput)("configOwner",{required:!1})||e;n?(0,o.info)(`Assuming ${n} Role: ${r} in ${i}`):(0,o.info)(`Assuming Role: ${r} in ${i}`);const h=new a.Configuration({accessToken:u});d&&(h.basePath="https://sso-nonlive.saml.to/github",h.apiKey=f);const m=new a.IDPApi(h);let v;try{const{data:s}=await m.assumeRoleForRepo(e,t,r,n||void 0,l,p);(0,o.info)(`SAML Response generated for login to ${s.provider} via ${s.recipient}`),v=s.sdkOptions,s.attributes&&Object.keys(s.attributes).length&&((0,o.info)("\nSAML Attributes:"),Object.entries(s.attributes).forEach((([e,t])=>(0,o.info)(` - ${e}: ${t}`)))),await this.assumeAws(s,i)}catch(i){const a=v?` (${v.PrincipalArn}) `:" ";if((0,o.error)(`Unable to assume the role with an ARN of \`${r}\`${n?` (with explicitly specified provider: ${n})`:""}.\n\nPlease ensure all of the following:\n 1) the SAML Provider Metadata${a}in AWS IAM is correct. It can be obtained by downloading it from: https://saml.to/metadata/github/${e}\n 2) the SAML Provider ARN${a}is correct in the \`saml-to.yml\` configuration file, and in the format of \`arn:aws:iam::ACCOUNT_ID:saml-provider/PROVIDER_NAME\`,\n 3) the Role ARN (${r}) is correct in the \`saml-to.yml\` configuration file, and in the format of \`arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME\`\n 4) the Role (${r}) has the correct Trust Relationship ${v?`with ${v.PrincipalArn}`:""}, which can be found by opening the Role in AWS IAM, choosing the Trust Relationship tab, editing it to ensure it's in the following format:\n {\n "Version": "2012-10-17",\n "Statement": [\n {\n "Effect": "Allow",\n "Principal": {\n "Federated": "${v?v.PrincipalArn:"YOUR_PROVIDER_ARN"}"\n },\n "Action": "sts:AssumeRoleWithSAML",\n "Condition": {\n "StringEquals": {\n "SAML:aud": "https://signin.aws.amazon.com/saml"\n }\n }\n }\n ]\n }\n \nIf a provider or role hasn't been created or configured yet, please follow the configuration instructions: https://github.com/saml-to/assume-aws-role-action/blob/main/README.md#configuration`),s.default.isAxiosError(i)){let r=i.message;if(i.response&&i.response.data&&i.response.data.message&&(r=i.response.data.message),i.response&&403===i.response.status){const{data:r}=i.response;if(r){const{context:n}=r;n&&n.org&&n.repo&&n.configFile&&n.repo!==t&&(0,o.notice)(`The SAML.to configuration for \`${e}/${t}\` is managed in a separate repository:\n User/Org: ${n.org}\n Repo: ${n.repo}\n File: ${n.configFile}\n\nProvider configuration and role permissions must be made there.\n\nFor more information on configuration files managed in a separate repository, visit:\nhttps://docs.saml.to/usage/github-actions/assume-aws-role-action#centrally-managed-configuration\n`)}}throw new Error(`Error: ${r}`)}throw i}}async assumeAws(e,t){const r=new i.STS({region:t}),n=e.sdkOptions;if(!n)throw new Error("Missing sdk options from saml response");const s=await r.assumeRoleWithSAML({...n,SAMLAssertion:e.samlResponse});if(!(s.Credentials&&s.Credentials.AccessKeyId&&s.Credentials.SecretAccessKey&&s.Credentials.SessionToken))throw new Error("Missing credentials");const a=new i.STS({region:t,credentials:{accessKeyId:s.Credentials.AccessKeyId,secretAccessKey:s.Credentials.SecretAccessKey,sessionToken:s.Credentials.SessionToken}}),u=await a.getCallerIdentity({});(0,o.info)(`\nAssumed ${n.RoleArn}: ${u.Arn} (Credential expiration at ${s.Credentials.Expiration})`),(0,o.exportVariable)("AWS_DEFAULT_REGION",t),(0,o.exportVariable)("AWS_ACCESS_KEY_ID",s.Credentials.AccessKeyId),(0,o.exportVariable)("AWS_SECRET_ACCESS_KEY",s.Credentials.SecretAccessKey),(0,o.exportVariable)("AWS_SESSION_TOKEN",s.Credentials.SessionToken),(0,o.setOutput)("region",t),(0,o.setOutput)("accountId",u.Account),(0,o.setOutput)("userId",u.UserId),(0,o.setOutput)("roleArn",n.RoleArn),(0,o.setOutput)("assumedRoleArn",u.Arn),(0,o.setOutput)("accessKeyId",s.Credentials.AccessKeyId),(0,o.setOutput)("secretAccessKey",s.Credentials.SecretAccessKey),(0,o.setOutput)("sessionToken",s.Credentials.SessionToken)}}},6149:(e,t,r)=>{e.exports=r(5468)},5468:(e,t,r)=>{"use strict";r(1808);var n,o=r(4404),i=r(3685),s=r(5687),a=r(2361),u=(r(9491),r(3837));function c(e){var t=this;t.options=e||{},t.proxyOptions=t.options.proxy||{},t.maxSockets=t.options.maxSockets||i.Agent.defaultMaxSockets,t.requests=[],t.sockets=[],t.on("free",(function(e,r,n,o){for(var i=d(r,n,o),s=0,a=t.requests.length;s=this.maxSockets?o.requests.push(i):o.createSocket(i,(function(t){function r(){o.emit("free",t,i)}function n(e){o.removeSocket(t),t.removeListener("free",r),t.removeListener("close",n),t.removeListener("agentRemove",n)}t.on("free",r),t.on("close",n),t.on("agentRemove",n),e.onSocket(t)}))},c.prototype.createSocket=function(e,t){var r=this,o={};r.sockets.push(o);var i=f({},r.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(i.localAddress=e.localAddress),i.proxyAuth&&(i.headers=i.headers||{},i.headers["Proxy-Authorization"]="Basic "+new Buffer(i.proxyAuth).toString("base64")),n("making CONNECT request");var s=r.request(i);function a(i,a,u){var c;return s.removeAllListeners(),a.removeAllListeners(),200!==i.statusCode?(n("tunneling socket could not be established, statusCode=%d",i.statusCode),a.destroy(),(c=new Error("tunneling socket could not be established, statusCode="+i.statusCode)).code="ECONNRESET",e.request.emit("error",c),void r.removeSocket(o)):u.length>0?(n("got illegal response body from proxy"),a.destroy(),(c=new Error("got illegal response body from proxy")).code="ECONNRESET",e.request.emit("error",c),void r.removeSocket(o)):(n("tunneling connection has established"),r.sockets[r.sockets.indexOf(o)]=a,t(a))}s.useChunkedEncodingByDefault=!1,s.once("response",(function(e){e.upgrade=!0})),s.once("upgrade",(function(e,t,r){process.nextTick((function(){a(e,t,r)}))})),s.once("connect",a),s.once("error",(function(t){s.removeAllListeners(),n("tunneling socket could not be established, cause=%s\n",t.message,t.stack);var i=new Error("tunneling socket could not be established, cause="+t.message);i.code="ECONNRESET",e.request.emit("error",i),r.removeSocket(o)})),s.end()},c.prototype.removeSocket=function(e){var t=this.sockets.indexOf(e);if(-1!==t){this.sockets.splice(t,1);var r=this.requests.shift();r&&this.createSocket(r,(function(e){r.request.onSocket(e)}))}},n=process.env.NODE_DEBUG&&/\btunnel\b/.test(process.env.NODE_DEBUG)?function(){var e=Array.prototype.slice.call(arguments);"string"==typeof e[0]?e[0]="TUNNEL: "+e[0]:e.unshift("TUNNEL:"),console.error.apply(console,e)}:function(){},t.debug=n},9491:e=>{"use strict";e.exports=require("assert")},2361:e=>{"use strict";e.exports=require("events")},7147:e=>{"use strict";e.exports=require("fs")},3685:e=>{"use strict";e.exports=require("http")},5687:e=>{"use strict";e.exports=require("https")},1808:e=>{"use strict";e.exports=require("net")},2037:e=>{"use strict";e.exports=require("os")},1017:e=>{"use strict";e.exports=require("path")},2781:e=>{"use strict";e.exports=require("stream")},4404:e=>{"use strict";e.exports=require("tls")},6224:e=>{"use strict";e.exports=require("tty")},7310:e=>{"use strict";e.exports=require("url")},3837:e=>{"use strict";e.exports=require("util")},9796:e=>{"use strict";e.exports=require("zlib")},3600:e=>{"use strict";e.exports=JSON.parse('{"0":65533,"128":8364,"130":8218,"131":402,"132":8222,"133":8230,"134":8224,"135":8225,"136":710,"137":8240,"138":352,"139":8249,"140":338,"142":381,"145":8216,"146":8217,"147":8220,"148":8221,"149":8226,"150":8211,"151":8212,"152":732,"153":8482,"154":353,"155":8250,"156":339,"158":382,"159":376}')},9323:e=>{"use strict";e.exports=JSON.parse('{"Aacute":"Á","aacute":"á","Abreve":"Ă","abreve":"ă","ac":"∾","acd":"∿","acE":"∾̳","Acirc":"Â","acirc":"â","acute":"´","Acy":"А","acy":"а","AElig":"Æ","aelig":"æ","af":"","Afr":"𝔄","afr":"𝔞","Agrave":"À","agrave":"à","alefsym":"ℵ","aleph":"ℵ","Alpha":"Α","alpha":"α","Amacr":"Ā","amacr":"ā","amalg":"⨿","amp":"&","AMP":"&","andand":"⩕","And":"⩓","and":"∧","andd":"⩜","andslope":"⩘","andv":"⩚","ang":"∠","ange":"⦤","angle":"∠","angmsdaa":"⦨","angmsdab":"⦩","angmsdac":"⦪","angmsdad":"⦫","angmsdae":"⦬","angmsdaf":"⦭","angmsdag":"⦮","angmsdah":"⦯","angmsd":"∡","angrt":"∟","angrtvb":"⊾","angrtvbd":"⦝","angsph":"∢","angst":"Å","angzarr":"⍼","Aogon":"Ą","aogon":"ą","Aopf":"𝔸","aopf":"𝕒","apacir":"⩯","ap":"≈","apE":"⩰","ape":"≊","apid":"≋","apos":"\'","ApplyFunction":"","approx":"≈","approxeq":"≊","Aring":"Å","aring":"å","Ascr":"𝒜","ascr":"𝒶","Assign":"≔","ast":"*","asymp":"≈","asympeq":"≍","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","awconint":"∳","awint":"⨑","backcong":"≌","backepsilon":"϶","backprime":"‵","backsim":"∽","backsimeq":"⋍","Backslash":"∖","Barv":"⫧","barvee":"⊽","barwed":"⌅","Barwed":"⌆","barwedge":"⌅","bbrk":"⎵","bbrktbrk":"⎶","bcong":"≌","Bcy":"Б","bcy":"б","bdquo":"„","becaus":"∵","because":"∵","Because":"∵","bemptyv":"⦰","bepsi":"϶","bernou":"ℬ","Bernoullis":"ℬ","Beta":"Β","beta":"β","beth":"ℶ","between":"≬","Bfr":"𝔅","bfr":"𝔟","bigcap":"⋂","bigcirc":"◯","bigcup":"⋃","bigodot":"⨀","bigoplus":"⨁","bigotimes":"⨂","bigsqcup":"⨆","bigstar":"★","bigtriangledown":"▽","bigtriangleup":"△","biguplus":"⨄","bigvee":"⋁","bigwedge":"⋀","bkarow":"⤍","blacklozenge":"⧫","blacksquare":"▪","blacktriangle":"▴","blacktriangledown":"▾","blacktriangleleft":"◂","blacktriangleright":"▸","blank":"␣","blk12":"▒","blk14":"░","blk34":"▓","block":"█","bne":"=⃥","bnequiv":"≡⃥","bNot":"⫭","bnot":"⌐","Bopf":"𝔹","bopf":"𝕓","bot":"⊥","bottom":"⊥","bowtie":"⋈","boxbox":"⧉","boxdl":"┐","boxdL":"╕","boxDl":"╖","boxDL":"╗","boxdr":"┌","boxdR":"╒","boxDr":"╓","boxDR":"╔","boxh":"─","boxH":"═","boxhd":"┬","boxHd":"╤","boxhD":"╥","boxHD":"╦","boxhu":"┴","boxHu":"╧","boxhU":"╨","boxHU":"╩","boxminus":"⊟","boxplus":"⊞","boxtimes":"⊠","boxul":"┘","boxuL":"╛","boxUl":"╜","boxUL":"╝","boxur":"└","boxuR":"╘","boxUr":"╙","boxUR":"╚","boxv":"│","boxV":"║","boxvh":"┼","boxvH":"╪","boxVh":"╫","boxVH":"╬","boxvl":"┤","boxvL":"╡","boxVl":"╢","boxVL":"╣","boxvr":"├","boxvR":"╞","boxVr":"╟","boxVR":"╠","bprime":"‵","breve":"˘","Breve":"˘","brvbar":"¦","bscr":"𝒷","Bscr":"ℬ","bsemi":"⁏","bsim":"∽","bsime":"⋍","bsolb":"⧅","bsol":"\\\\","bsolhsub":"⟈","bull":"•","bullet":"•","bump":"≎","bumpE":"⪮","bumpe":"≏","Bumpeq":"≎","bumpeq":"≏","Cacute":"Ć","cacute":"ć","capand":"⩄","capbrcup":"⩉","capcap":"⩋","cap":"∩","Cap":"⋒","capcup":"⩇","capdot":"⩀","CapitalDifferentialD":"ⅅ","caps":"∩︀","caret":"⁁","caron":"ˇ","Cayleys":"ℭ","ccaps":"⩍","Ccaron":"Č","ccaron":"č","Ccedil":"Ç","ccedil":"ç","Ccirc":"Ĉ","ccirc":"ĉ","Cconint":"∰","ccups":"⩌","ccupssm":"⩐","Cdot":"Ċ","cdot":"ċ","cedil":"¸","Cedilla":"¸","cemptyv":"⦲","cent":"¢","centerdot":"·","CenterDot":"·","cfr":"𝔠","Cfr":"ℭ","CHcy":"Ч","chcy":"ч","check":"✓","checkmark":"✓","Chi":"Χ","chi":"χ","circ":"ˆ","circeq":"≗","circlearrowleft":"↺","circlearrowright":"↻","circledast":"⊛","circledcirc":"⊚","circleddash":"⊝","CircleDot":"⊙","circledR":"®","circledS":"Ⓢ","CircleMinus":"⊖","CirclePlus":"⊕","CircleTimes":"⊗","cir":"○","cirE":"⧃","cire":"≗","cirfnint":"⨐","cirmid":"⫯","cirscir":"⧂","ClockwiseContourIntegral":"∲","CloseCurlyDoubleQuote":"”","CloseCurlyQuote":"’","clubs":"♣","clubsuit":"♣","colon":":","Colon":"∷","Colone":"⩴","colone":"≔","coloneq":"≔","comma":",","commat":"@","comp":"∁","compfn":"∘","complement":"∁","complexes":"ℂ","cong":"≅","congdot":"⩭","Congruent":"≡","conint":"∮","Conint":"∯","ContourIntegral":"∮","copf":"𝕔","Copf":"ℂ","coprod":"∐","Coproduct":"∐","copy":"©","COPY":"©","copysr":"℗","CounterClockwiseContourIntegral":"∳","crarr":"↵","cross":"✗","Cross":"⨯","Cscr":"𝒞","cscr":"𝒸","csub":"⫏","csube":"⫑","csup":"⫐","csupe":"⫒","ctdot":"⋯","cudarrl":"⤸","cudarrr":"⤵","cuepr":"⋞","cuesc":"⋟","cularr":"↶","cularrp":"⤽","cupbrcap":"⩈","cupcap":"⩆","CupCap":"≍","cup":"∪","Cup":"⋓","cupcup":"⩊","cupdot":"⊍","cupor":"⩅","cups":"∪︀","curarr":"↷","curarrm":"⤼","curlyeqprec":"⋞","curlyeqsucc":"⋟","curlyvee":"⋎","curlywedge":"⋏","curren":"¤","curvearrowleft":"↶","curvearrowright":"↷","cuvee":"⋎","cuwed":"⋏","cwconint":"∲","cwint":"∱","cylcty":"⌭","dagger":"†","Dagger":"‡","daleth":"ℸ","darr":"↓","Darr":"↡","dArr":"⇓","dash":"‐","Dashv":"⫤","dashv":"⊣","dbkarow":"⤏","dblac":"˝","Dcaron":"Ď","dcaron":"ď","Dcy":"Д","dcy":"д","ddagger":"‡","ddarr":"⇊","DD":"ⅅ","dd":"ⅆ","DDotrahd":"⤑","ddotseq":"⩷","deg":"°","Del":"∇","Delta":"Δ","delta":"δ","demptyv":"⦱","dfisht":"⥿","Dfr":"𝔇","dfr":"𝔡","dHar":"⥥","dharl":"⇃","dharr":"⇂","DiacriticalAcute":"´","DiacriticalDot":"˙","DiacriticalDoubleAcute":"˝","DiacriticalGrave":"`","DiacriticalTilde":"˜","diam":"⋄","diamond":"⋄","Diamond":"⋄","diamondsuit":"♦","diams":"♦","die":"¨","DifferentialD":"ⅆ","digamma":"ϝ","disin":"⋲","div":"÷","divide":"÷","divideontimes":"⋇","divonx":"⋇","DJcy":"Ђ","djcy":"ђ","dlcorn":"⌞","dlcrop":"⌍","dollar":"$","Dopf":"𝔻","dopf":"𝕕","Dot":"¨","dot":"˙","DotDot":"⃜","doteq":"≐","doteqdot":"≑","DotEqual":"≐","dotminus":"∸","dotplus":"∔","dotsquare":"⊡","doublebarwedge":"⌆","DoubleContourIntegral":"∯","DoubleDot":"¨","DoubleDownArrow":"⇓","DoubleLeftArrow":"⇐","DoubleLeftRightArrow":"⇔","DoubleLeftTee":"⫤","DoubleLongLeftArrow":"⟸","DoubleLongLeftRightArrow":"⟺","DoubleLongRightArrow":"⟹","DoubleRightArrow":"⇒","DoubleRightTee":"⊨","DoubleUpArrow":"⇑","DoubleUpDownArrow":"⇕","DoubleVerticalBar":"∥","DownArrowBar":"⤓","downarrow":"↓","DownArrow":"↓","Downarrow":"⇓","DownArrowUpArrow":"⇵","DownBreve":"̑","downdownarrows":"⇊","downharpoonleft":"⇃","downharpoonright":"⇂","DownLeftRightVector":"⥐","DownLeftTeeVector":"⥞","DownLeftVectorBar":"⥖","DownLeftVector":"↽","DownRightTeeVector":"⥟","DownRightVectorBar":"⥗","DownRightVector":"⇁","DownTeeArrow":"↧","DownTee":"⊤","drbkarow":"⤐","drcorn":"⌟","drcrop":"⌌","Dscr":"𝒟","dscr":"𝒹","DScy":"Ѕ","dscy":"ѕ","dsol":"⧶","Dstrok":"Đ","dstrok":"đ","dtdot":"⋱","dtri":"▿","dtrif":"▾","duarr":"⇵","duhar":"⥯","dwangle":"⦦","DZcy":"Џ","dzcy":"џ","dzigrarr":"⟿","Eacute":"É","eacute":"é","easter":"⩮","Ecaron":"Ě","ecaron":"ě","Ecirc":"Ê","ecirc":"ê","ecir":"≖","ecolon":"≕","Ecy":"Э","ecy":"э","eDDot":"⩷","Edot":"Ė","edot":"ė","eDot":"≑","ee":"ⅇ","efDot":"≒","Efr":"𝔈","efr":"𝔢","eg":"⪚","Egrave":"È","egrave":"è","egs":"⪖","egsdot":"⪘","el":"⪙","Element":"∈","elinters":"⏧","ell":"ℓ","els":"⪕","elsdot":"⪗","Emacr":"Ē","emacr":"ē","empty":"∅","emptyset":"∅","EmptySmallSquare":"◻","emptyv":"∅","EmptyVerySmallSquare":"▫","emsp13":" ","emsp14":" ","emsp":" ","ENG":"Ŋ","eng":"ŋ","ensp":" ","Eogon":"Ę","eogon":"ę","Eopf":"𝔼","eopf":"𝕖","epar":"⋕","eparsl":"⧣","eplus":"⩱","epsi":"ε","Epsilon":"Ε","epsilon":"ε","epsiv":"ϵ","eqcirc":"≖","eqcolon":"≕","eqsim":"≂","eqslantgtr":"⪖","eqslantless":"⪕","Equal":"⩵","equals":"=","EqualTilde":"≂","equest":"≟","Equilibrium":"⇌","equiv":"≡","equivDD":"⩸","eqvparsl":"⧥","erarr":"⥱","erDot":"≓","escr":"ℯ","Escr":"ℰ","esdot":"≐","Esim":"⩳","esim":"≂","Eta":"Η","eta":"η","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","euro":"€","excl":"!","exist":"∃","Exists":"∃","expectation":"ℰ","exponentiale":"ⅇ","ExponentialE":"ⅇ","fallingdotseq":"≒","Fcy":"Ф","fcy":"ф","female":"♀","ffilig":"ffi","fflig":"ff","ffllig":"ffl","Ffr":"𝔉","ffr":"𝔣","filig":"fi","FilledSmallSquare":"◼","FilledVerySmallSquare":"▪","fjlig":"fj","flat":"♭","fllig":"fl","fltns":"▱","fnof":"ƒ","Fopf":"𝔽","fopf":"𝕗","forall":"∀","ForAll":"∀","fork":"⋔","forkv":"⫙","Fouriertrf":"ℱ","fpartint":"⨍","frac12":"½","frac13":"⅓","frac14":"¼","frac15":"⅕","frac16":"⅙","frac18":"⅛","frac23":"⅔","frac25":"⅖","frac34":"¾","frac35":"⅗","frac38":"⅜","frac45":"⅘","frac56":"⅚","frac58":"⅝","frac78":"⅞","frasl":"⁄","frown":"⌢","fscr":"𝒻","Fscr":"ℱ","gacute":"ǵ","Gamma":"Γ","gamma":"γ","Gammad":"Ϝ","gammad":"ϝ","gap":"⪆","Gbreve":"Ğ","gbreve":"ğ","Gcedil":"Ģ","Gcirc":"Ĝ","gcirc":"ĝ","Gcy":"Г","gcy":"г","Gdot":"Ġ","gdot":"ġ","ge":"≥","gE":"≧","gEl":"⪌","gel":"⋛","geq":"≥","geqq":"≧","geqslant":"⩾","gescc":"⪩","ges":"⩾","gesdot":"⪀","gesdoto":"⪂","gesdotol":"⪄","gesl":"⋛︀","gesles":"⪔","Gfr":"𝔊","gfr":"𝔤","gg":"≫","Gg":"⋙","ggg":"⋙","gimel":"ℷ","GJcy":"Ѓ","gjcy":"ѓ","gla":"⪥","gl":"≷","glE":"⪒","glj":"⪤","gnap":"⪊","gnapprox":"⪊","gne":"⪈","gnE":"≩","gneq":"⪈","gneqq":"≩","gnsim":"⋧","Gopf":"𝔾","gopf":"𝕘","grave":"`","GreaterEqual":"≥","GreaterEqualLess":"⋛","GreaterFullEqual":"≧","GreaterGreater":"⪢","GreaterLess":"≷","GreaterSlantEqual":"⩾","GreaterTilde":"≳","Gscr":"𝒢","gscr":"ℊ","gsim":"≳","gsime":"⪎","gsiml":"⪐","gtcc":"⪧","gtcir":"⩺","gt":">","GT":">","Gt":"≫","gtdot":"⋗","gtlPar":"⦕","gtquest":"⩼","gtrapprox":"⪆","gtrarr":"⥸","gtrdot":"⋗","gtreqless":"⋛","gtreqqless":"⪌","gtrless":"≷","gtrsim":"≳","gvertneqq":"≩︀","gvnE":"≩︀","Hacek":"ˇ","hairsp":" ","half":"½","hamilt":"ℋ","HARDcy":"Ъ","hardcy":"ъ","harrcir":"⥈","harr":"↔","hArr":"⇔","harrw":"↭","Hat":"^","hbar":"ℏ","Hcirc":"Ĥ","hcirc":"ĥ","hearts":"♥","heartsuit":"♥","hellip":"…","hercon":"⊹","hfr":"𝔥","Hfr":"ℌ","HilbertSpace":"ℋ","hksearow":"⤥","hkswarow":"⤦","hoarr":"⇿","homtht":"∻","hookleftarrow":"↩","hookrightarrow":"↪","hopf":"𝕙","Hopf":"ℍ","horbar":"―","HorizontalLine":"─","hscr":"𝒽","Hscr":"ℋ","hslash":"ℏ","Hstrok":"Ħ","hstrok":"ħ","HumpDownHump":"≎","HumpEqual":"≏","hybull":"⁃","hyphen":"‐","Iacute":"Í","iacute":"í","ic":"","Icirc":"Î","icirc":"î","Icy":"И","icy":"и","Idot":"İ","IEcy":"Е","iecy":"е","iexcl":"¡","iff":"⇔","ifr":"𝔦","Ifr":"ℑ","Igrave":"Ì","igrave":"ì","ii":"ⅈ","iiiint":"⨌","iiint":"∭","iinfin":"⧜","iiota":"℩","IJlig":"IJ","ijlig":"ij","Imacr":"Ī","imacr":"ī","image":"ℑ","ImaginaryI":"ⅈ","imagline":"ℐ","imagpart":"ℑ","imath":"ı","Im":"ℑ","imof":"⊷","imped":"Ƶ","Implies":"⇒","incare":"℅","in":"∈","infin":"∞","infintie":"⧝","inodot":"ı","intcal":"⊺","int":"∫","Int":"∬","integers":"ℤ","Integral":"∫","intercal":"⊺","Intersection":"⋂","intlarhk":"⨗","intprod":"⨼","InvisibleComma":"","InvisibleTimes":"","IOcy":"Ё","iocy":"ё","Iogon":"Į","iogon":"į","Iopf":"𝕀","iopf":"𝕚","Iota":"Ι","iota":"ι","iprod":"⨼","iquest":"¿","iscr":"𝒾","Iscr":"ℐ","isin":"∈","isindot":"⋵","isinE":"⋹","isins":"⋴","isinsv":"⋳","isinv":"∈","it":"","Itilde":"Ĩ","itilde":"ĩ","Iukcy":"І","iukcy":"і","Iuml":"Ï","iuml":"ï","Jcirc":"Ĵ","jcirc":"ĵ","Jcy":"Й","jcy":"й","Jfr":"𝔍","jfr":"𝔧","jmath":"ȷ","Jopf":"𝕁","jopf":"𝕛","Jscr":"𝒥","jscr":"𝒿","Jsercy":"Ј","jsercy":"ј","Jukcy":"Є","jukcy":"є","Kappa":"Κ","kappa":"κ","kappav":"ϰ","Kcedil":"Ķ","kcedil":"ķ","Kcy":"К","kcy":"к","Kfr":"𝔎","kfr":"𝔨","kgreen":"ĸ","KHcy":"Х","khcy":"х","KJcy":"Ќ","kjcy":"ќ","Kopf":"𝕂","kopf":"𝕜","Kscr":"𝒦","kscr":"𝓀","lAarr":"⇚","Lacute":"Ĺ","lacute":"ĺ","laemptyv":"⦴","lagran":"ℒ","Lambda":"Λ","lambda":"λ","lang":"⟨","Lang":"⟪","langd":"⦑","langle":"⟨","lap":"⪅","Laplacetrf":"ℒ","laquo":"«","larrb":"⇤","larrbfs":"⤟","larr":"←","Larr":"↞","lArr":"⇐","larrfs":"⤝","larrhk":"↩","larrlp":"↫","larrpl":"⤹","larrsim":"⥳","larrtl":"↢","latail":"⤙","lAtail":"⤛","lat":"⪫","late":"⪭","lates":"⪭︀","lbarr":"⤌","lBarr":"⤎","lbbrk":"❲","lbrace":"{","lbrack":"[","lbrke":"⦋","lbrksld":"⦏","lbrkslu":"⦍","Lcaron":"Ľ","lcaron":"ľ","Lcedil":"Ļ","lcedil":"ļ","lceil":"⌈","lcub":"{","Lcy":"Л","lcy":"л","ldca":"⤶","ldquo":"“","ldquor":"„","ldrdhar":"⥧","ldrushar":"⥋","ldsh":"↲","le":"≤","lE":"≦","LeftAngleBracket":"⟨","LeftArrowBar":"⇤","leftarrow":"←","LeftArrow":"←","Leftarrow":"⇐","LeftArrowRightArrow":"⇆","leftarrowtail":"↢","LeftCeiling":"⌈","LeftDoubleBracket":"⟦","LeftDownTeeVector":"⥡","LeftDownVectorBar":"⥙","LeftDownVector":"⇃","LeftFloor":"⌊","leftharpoondown":"↽","leftharpoonup":"↼","leftleftarrows":"⇇","leftrightarrow":"↔","LeftRightArrow":"↔","Leftrightarrow":"⇔","leftrightarrows":"⇆","leftrightharpoons":"⇋","leftrightsquigarrow":"↭","LeftRightVector":"⥎","LeftTeeArrow":"↤","LeftTee":"⊣","LeftTeeVector":"⥚","leftthreetimes":"⋋","LeftTriangleBar":"⧏","LeftTriangle":"⊲","LeftTriangleEqual":"⊴","LeftUpDownVector":"⥑","LeftUpTeeVector":"⥠","LeftUpVectorBar":"⥘","LeftUpVector":"↿","LeftVectorBar":"⥒","LeftVector":"↼","lEg":"⪋","leg":"⋚","leq":"≤","leqq":"≦","leqslant":"⩽","lescc":"⪨","les":"⩽","lesdot":"⩿","lesdoto":"⪁","lesdotor":"⪃","lesg":"⋚︀","lesges":"⪓","lessapprox":"⪅","lessdot":"⋖","lesseqgtr":"⋚","lesseqqgtr":"⪋","LessEqualGreater":"⋚","LessFullEqual":"≦","LessGreater":"≶","lessgtr":"≶","LessLess":"⪡","lesssim":"≲","LessSlantEqual":"⩽","LessTilde":"≲","lfisht":"⥼","lfloor":"⌊","Lfr":"𝔏","lfr":"𝔩","lg":"≶","lgE":"⪑","lHar":"⥢","lhard":"↽","lharu":"↼","lharul":"⥪","lhblk":"▄","LJcy":"Љ","ljcy":"љ","llarr":"⇇","ll":"≪","Ll":"⋘","llcorner":"⌞","Lleftarrow":"⇚","llhard":"⥫","lltri":"◺","Lmidot":"Ŀ","lmidot":"ŀ","lmoustache":"⎰","lmoust":"⎰","lnap":"⪉","lnapprox":"⪉","lne":"⪇","lnE":"≨","lneq":"⪇","lneqq":"≨","lnsim":"⋦","loang":"⟬","loarr":"⇽","lobrk":"⟦","longleftarrow":"⟵","LongLeftArrow":"⟵","Longleftarrow":"⟸","longleftrightarrow":"⟷","LongLeftRightArrow":"⟷","Longleftrightarrow":"⟺","longmapsto":"⟼","longrightarrow":"⟶","LongRightArrow":"⟶","Longrightarrow":"⟹","looparrowleft":"↫","looparrowright":"↬","lopar":"⦅","Lopf":"𝕃","lopf":"𝕝","loplus":"⨭","lotimes":"⨴","lowast":"∗","lowbar":"_","LowerLeftArrow":"↙","LowerRightArrow":"↘","loz":"◊","lozenge":"◊","lozf":"⧫","lpar":"(","lparlt":"⦓","lrarr":"⇆","lrcorner":"⌟","lrhar":"⇋","lrhard":"⥭","lrm":"","lrtri":"⊿","lsaquo":"‹","lscr":"𝓁","Lscr":"ℒ","lsh":"↰","Lsh":"↰","lsim":"≲","lsime":"⪍","lsimg":"⪏","lsqb":"[","lsquo":"‘","lsquor":"‚","Lstrok":"Ł","lstrok":"ł","ltcc":"⪦","ltcir":"⩹","lt":"<","LT":"<","Lt":"≪","ltdot":"⋖","lthree":"⋋","ltimes":"⋉","ltlarr":"⥶","ltquest":"⩻","ltri":"◃","ltrie":"⊴","ltrif":"◂","ltrPar":"⦖","lurdshar":"⥊","luruhar":"⥦","lvertneqq":"≨︀","lvnE":"≨︀","macr":"¯","male":"♂","malt":"✠","maltese":"✠","Map":"⤅","map":"↦","mapsto":"↦","mapstodown":"↧","mapstoleft":"↤","mapstoup":"↥","marker":"▮","mcomma":"⨩","Mcy":"М","mcy":"м","mdash":"—","mDDot":"∺","measuredangle":"∡","MediumSpace":" ","Mellintrf":"ℳ","Mfr":"𝔐","mfr":"𝔪","mho":"℧","micro":"µ","midast":"*","midcir":"⫰","mid":"∣","middot":"·","minusb":"⊟","minus":"−","minusd":"∸","minusdu":"⨪","MinusPlus":"∓","mlcp":"⫛","mldr":"…","mnplus":"∓","models":"⊧","Mopf":"𝕄","mopf":"𝕞","mp":"∓","mscr":"𝓂","Mscr":"ℳ","mstpos":"∾","Mu":"Μ","mu":"μ","multimap":"⊸","mumap":"⊸","nabla":"∇","Nacute":"Ń","nacute":"ń","nang":"∠⃒","nap":"≉","napE":"⩰̸","napid":"≋̸","napos":"ʼn","napprox":"≉","natural":"♮","naturals":"ℕ","natur":"♮","nbsp":" ","nbump":"≎̸","nbumpe":"≏̸","ncap":"⩃","Ncaron":"Ň","ncaron":"ň","Ncedil":"Ņ","ncedil":"ņ","ncong":"≇","ncongdot":"⩭̸","ncup":"⩂","Ncy":"Н","ncy":"н","ndash":"–","nearhk":"⤤","nearr":"↗","neArr":"⇗","nearrow":"↗","ne":"≠","nedot":"≐̸","NegativeMediumSpace":"","NegativeThickSpace":"","NegativeThinSpace":"","NegativeVeryThinSpace":"","nequiv":"≢","nesear":"⤨","nesim":"≂̸","NestedGreaterGreater":"≫","NestedLessLess":"≪","NewLine":"\\n","nexist":"∄","nexists":"∄","Nfr":"𝔑","nfr":"𝔫","ngE":"≧̸","nge":"≱","ngeq":"≱","ngeqq":"≧̸","ngeqslant":"⩾̸","nges":"⩾̸","nGg":"⋙̸","ngsim":"≵","nGt":"≫⃒","ngt":"≯","ngtr":"≯","nGtv":"≫̸","nharr":"↮","nhArr":"⇎","nhpar":"⫲","ni":"∋","nis":"⋼","nisd":"⋺","niv":"∋","NJcy":"Њ","njcy":"њ","nlarr":"↚","nlArr":"⇍","nldr":"‥","nlE":"≦̸","nle":"≰","nleftarrow":"↚","nLeftarrow":"⇍","nleftrightarrow":"↮","nLeftrightarrow":"⇎","nleq":"≰","nleqq":"≦̸","nleqslant":"⩽̸","nles":"⩽̸","nless":"≮","nLl":"⋘̸","nlsim":"≴","nLt":"≪⃒","nlt":"≮","nltri":"⋪","nltrie":"⋬","nLtv":"≪̸","nmid":"∤","NoBreak":"","NonBreakingSpace":" ","nopf":"𝕟","Nopf":"ℕ","Not":"⫬","not":"¬","NotCongruent":"≢","NotCupCap":"≭","NotDoubleVerticalBar":"∦","NotElement":"∉","NotEqual":"≠","NotEqualTilde":"≂̸","NotExists":"∄","NotGreater":"≯","NotGreaterEqual":"≱","NotGreaterFullEqual":"≧̸","NotGreaterGreater":"≫̸","NotGreaterLess":"≹","NotGreaterSlantEqual":"⩾̸","NotGreaterTilde":"≵","NotHumpDownHump":"≎̸","NotHumpEqual":"≏̸","notin":"∉","notindot":"⋵̸","notinE":"⋹̸","notinva":"∉","notinvb":"⋷","notinvc":"⋶","NotLeftTriangleBar":"⧏̸","NotLeftTriangle":"⋪","NotLeftTriangleEqual":"⋬","NotLess":"≮","NotLessEqual":"≰","NotLessGreater":"≸","NotLessLess":"≪̸","NotLessSlantEqual":"⩽̸","NotLessTilde":"≴","NotNestedGreaterGreater":"⪢̸","NotNestedLessLess":"⪡̸","notni":"∌","notniva":"∌","notnivb":"⋾","notnivc":"⋽","NotPrecedes":"⊀","NotPrecedesEqual":"⪯̸","NotPrecedesSlantEqual":"⋠","NotReverseElement":"∌","NotRightTriangleBar":"⧐̸","NotRightTriangle":"⋫","NotRightTriangleEqual":"⋭","NotSquareSubset":"⊏̸","NotSquareSubsetEqual":"⋢","NotSquareSuperset":"⊐̸","NotSquareSupersetEqual":"⋣","NotSubset":"⊂⃒","NotSubsetEqual":"⊈","NotSucceeds":"⊁","NotSucceedsEqual":"⪰̸","NotSucceedsSlantEqual":"⋡","NotSucceedsTilde":"≿̸","NotSuperset":"⊃⃒","NotSupersetEqual":"⊉","NotTilde":"≁","NotTildeEqual":"≄","NotTildeFullEqual":"≇","NotTildeTilde":"≉","NotVerticalBar":"∤","nparallel":"∦","npar":"∦","nparsl":"⫽⃥","npart":"∂̸","npolint":"⨔","npr":"⊀","nprcue":"⋠","nprec":"⊀","npreceq":"⪯̸","npre":"⪯̸","nrarrc":"⤳̸","nrarr":"↛","nrArr":"⇏","nrarrw":"↝̸","nrightarrow":"↛","nRightarrow":"⇏","nrtri":"⋫","nrtrie":"⋭","nsc":"⊁","nsccue":"⋡","nsce":"⪰̸","Nscr":"𝒩","nscr":"𝓃","nshortmid":"∤","nshortparallel":"∦","nsim":"≁","nsime":"≄","nsimeq":"≄","nsmid":"∤","nspar":"∦","nsqsube":"⋢","nsqsupe":"⋣","nsub":"⊄","nsubE":"⫅̸","nsube":"⊈","nsubset":"⊂⃒","nsubseteq":"⊈","nsubseteqq":"⫅̸","nsucc":"⊁","nsucceq":"⪰̸","nsup":"⊅","nsupE":"⫆̸","nsupe":"⊉","nsupset":"⊃⃒","nsupseteq":"⊉","nsupseteqq":"⫆̸","ntgl":"≹","Ntilde":"Ñ","ntilde":"ñ","ntlg":"≸","ntriangleleft":"⋪","ntrianglelefteq":"⋬","ntriangleright":"⋫","ntrianglerighteq":"⋭","Nu":"Ν","nu":"ν","num":"#","numero":"№","numsp":" ","nvap":"≍⃒","nvdash":"⊬","nvDash":"⊭","nVdash":"⊮","nVDash":"⊯","nvge":"≥⃒","nvgt":">⃒","nvHarr":"⤄","nvinfin":"⧞","nvlArr":"⤂","nvle":"≤⃒","nvlt":"<⃒","nvltrie":"⊴⃒","nvrArr":"⤃","nvrtrie":"⊵⃒","nvsim":"∼⃒","nwarhk":"⤣","nwarr":"↖","nwArr":"⇖","nwarrow":"↖","nwnear":"⤧","Oacute":"Ó","oacute":"ó","oast":"⊛","Ocirc":"Ô","ocirc":"ô","ocir":"⊚","Ocy":"О","ocy":"о","odash":"⊝","Odblac":"Ő","odblac":"ő","odiv":"⨸","odot":"⊙","odsold":"⦼","OElig":"Œ","oelig":"œ","ofcir":"⦿","Ofr":"𝔒","ofr":"𝔬","ogon":"˛","Ograve":"Ò","ograve":"ò","ogt":"⧁","ohbar":"⦵","ohm":"Ω","oint":"∮","olarr":"↺","olcir":"⦾","olcross":"⦻","oline":"‾","olt":"⧀","Omacr":"Ō","omacr":"ō","Omega":"Ω","omega":"ω","Omicron":"Ο","omicron":"ο","omid":"⦶","ominus":"⊖","Oopf":"𝕆","oopf":"𝕠","opar":"⦷","OpenCurlyDoubleQuote":"“","OpenCurlyQuote":"‘","operp":"⦹","oplus":"⊕","orarr":"↻","Or":"⩔","or":"∨","ord":"⩝","order":"ℴ","orderof":"ℴ","ordf":"ª","ordm":"º","origof":"⊶","oror":"⩖","orslope":"⩗","orv":"⩛","oS":"Ⓢ","Oscr":"𝒪","oscr":"ℴ","Oslash":"Ø","oslash":"ø","osol":"⊘","Otilde":"Õ","otilde":"õ","otimesas":"⨶","Otimes":"⨷","otimes":"⊗","Ouml":"Ö","ouml":"ö","ovbar":"⌽","OverBar":"‾","OverBrace":"⏞","OverBracket":"⎴","OverParenthesis":"⏜","para":"¶","parallel":"∥","par":"∥","parsim":"⫳","parsl":"⫽","part":"∂","PartialD":"∂","Pcy":"П","pcy":"п","percnt":"%","period":".","permil":"‰","perp":"⊥","pertenk":"‱","Pfr":"𝔓","pfr":"𝔭","Phi":"Φ","phi":"φ","phiv":"ϕ","phmmat":"ℳ","phone":"☎","Pi":"Π","pi":"π","pitchfork":"⋔","piv":"ϖ","planck":"ℏ","planckh":"ℎ","plankv":"ℏ","plusacir":"⨣","plusb":"⊞","pluscir":"⨢","plus":"+","plusdo":"∔","plusdu":"⨥","pluse":"⩲","PlusMinus":"±","plusmn":"±","plussim":"⨦","plustwo":"⨧","pm":"±","Poincareplane":"ℌ","pointint":"⨕","popf":"𝕡","Popf":"ℙ","pound":"£","prap":"⪷","Pr":"⪻","pr":"≺","prcue":"≼","precapprox":"⪷","prec":"≺","preccurlyeq":"≼","Precedes":"≺","PrecedesEqual":"⪯","PrecedesSlantEqual":"≼","PrecedesTilde":"≾","preceq":"⪯","precnapprox":"⪹","precneqq":"⪵","precnsim":"⋨","pre":"⪯","prE":"⪳","precsim":"≾","prime":"′","Prime":"″","primes":"ℙ","prnap":"⪹","prnE":"⪵","prnsim":"⋨","prod":"∏","Product":"∏","profalar":"⌮","profline":"⌒","profsurf":"⌓","prop":"∝","Proportional":"∝","Proportion":"∷","propto":"∝","prsim":"≾","prurel":"⊰","Pscr":"𝒫","pscr":"𝓅","Psi":"Ψ","psi":"ψ","puncsp":" ","Qfr":"𝔔","qfr":"𝔮","qint":"⨌","qopf":"𝕢","Qopf":"ℚ","qprime":"⁗","Qscr":"𝒬","qscr":"𝓆","quaternions":"ℍ","quatint":"⨖","quest":"?","questeq":"≟","quot":"\\"","QUOT":"\\"","rAarr":"⇛","race":"∽̱","Racute":"Ŕ","racute":"ŕ","radic":"√","raemptyv":"⦳","rang":"⟩","Rang":"⟫","rangd":"⦒","range":"⦥","rangle":"⟩","raquo":"»","rarrap":"⥵","rarrb":"⇥","rarrbfs":"⤠","rarrc":"⤳","rarr":"→","Rarr":"↠","rArr":"⇒","rarrfs":"⤞","rarrhk":"↪","rarrlp":"↬","rarrpl":"⥅","rarrsim":"⥴","Rarrtl":"⤖","rarrtl":"↣","rarrw":"↝","ratail":"⤚","rAtail":"⤜","ratio":"∶","rationals":"ℚ","rbarr":"⤍","rBarr":"⤏","RBarr":"⤐","rbbrk":"❳","rbrace":"}","rbrack":"]","rbrke":"⦌","rbrksld":"⦎","rbrkslu":"⦐","Rcaron":"Ř","rcaron":"ř","Rcedil":"Ŗ","rcedil":"ŗ","rceil":"⌉","rcub":"}","Rcy":"Р","rcy":"р","rdca":"⤷","rdldhar":"⥩","rdquo":"”","rdquor":"”","rdsh":"↳","real":"ℜ","realine":"ℛ","realpart":"ℜ","reals":"ℝ","Re":"ℜ","rect":"▭","reg":"®","REG":"®","ReverseElement":"∋","ReverseEquilibrium":"⇋","ReverseUpEquilibrium":"⥯","rfisht":"⥽","rfloor":"⌋","rfr":"𝔯","Rfr":"ℜ","rHar":"⥤","rhard":"⇁","rharu":"⇀","rharul":"⥬","Rho":"Ρ","rho":"ρ","rhov":"ϱ","RightAngleBracket":"⟩","RightArrowBar":"⇥","rightarrow":"→","RightArrow":"→","Rightarrow":"⇒","RightArrowLeftArrow":"⇄","rightarrowtail":"↣","RightCeiling":"⌉","RightDoubleBracket":"⟧","RightDownTeeVector":"⥝","RightDownVectorBar":"⥕","RightDownVector":"⇂","RightFloor":"⌋","rightharpoondown":"⇁","rightharpoonup":"⇀","rightleftarrows":"⇄","rightleftharpoons":"⇌","rightrightarrows":"⇉","rightsquigarrow":"↝","RightTeeArrow":"↦","RightTee":"⊢","RightTeeVector":"⥛","rightthreetimes":"⋌","RightTriangleBar":"⧐","RightTriangle":"⊳","RightTriangleEqual":"⊵","RightUpDownVector":"⥏","RightUpTeeVector":"⥜","RightUpVectorBar":"⥔","RightUpVector":"↾","RightVectorBar":"⥓","RightVector":"⇀","ring":"˚","risingdotseq":"≓","rlarr":"⇄","rlhar":"⇌","rlm":"","rmoustache":"⎱","rmoust":"⎱","rnmid":"⫮","roang":"⟭","roarr":"⇾","robrk":"⟧","ropar":"⦆","ropf":"𝕣","Ropf":"ℝ","roplus":"⨮","rotimes":"⨵","RoundImplies":"⥰","rpar":")","rpargt":"⦔","rppolint":"⨒","rrarr":"⇉","Rrightarrow":"⇛","rsaquo":"›","rscr":"𝓇","Rscr":"ℛ","rsh":"↱","Rsh":"↱","rsqb":"]","rsquo":"’","rsquor":"’","rthree":"⋌","rtimes":"⋊","rtri":"▹","rtrie":"⊵","rtrif":"▸","rtriltri":"⧎","RuleDelayed":"⧴","ruluhar":"⥨","rx":"℞","Sacute":"Ś","sacute":"ś","sbquo":"‚","scap":"⪸","Scaron":"Š","scaron":"š","Sc":"⪼","sc":"≻","sccue":"≽","sce":"⪰","scE":"⪴","Scedil":"Ş","scedil":"ş","Scirc":"Ŝ","scirc":"ŝ","scnap":"⪺","scnE":"⪶","scnsim":"⋩","scpolint":"⨓","scsim":"≿","Scy":"С","scy":"с","sdotb":"⊡","sdot":"⋅","sdote":"⩦","searhk":"⤥","searr":"↘","seArr":"⇘","searrow":"↘","sect":"§","semi":";","seswar":"⤩","setminus":"∖","setmn":"∖","sext":"✶","Sfr":"𝔖","sfr":"𝔰","sfrown":"⌢","sharp":"♯","SHCHcy":"Щ","shchcy":"щ","SHcy":"Ш","shcy":"ш","ShortDownArrow":"↓","ShortLeftArrow":"←","shortmid":"∣","shortparallel":"∥","ShortRightArrow":"→","ShortUpArrow":"↑","shy":"","Sigma":"Σ","sigma":"σ","sigmaf":"ς","sigmav":"ς","sim":"∼","simdot":"⩪","sime":"≃","simeq":"≃","simg":"⪞","simgE":"⪠","siml":"⪝","simlE":"⪟","simne":"≆","simplus":"⨤","simrarr":"⥲","slarr":"←","SmallCircle":"∘","smallsetminus":"∖","smashp":"⨳","smeparsl":"⧤","smid":"∣","smile":"⌣","smt":"⪪","smte":"⪬","smtes":"⪬︀","SOFTcy":"Ь","softcy":"ь","solbar":"⌿","solb":"⧄","sol":"/","Sopf":"𝕊","sopf":"𝕤","spades":"♠","spadesuit":"♠","spar":"∥","sqcap":"⊓","sqcaps":"⊓︀","sqcup":"⊔","sqcups":"⊔︀","Sqrt":"√","sqsub":"⊏","sqsube":"⊑","sqsubset":"⊏","sqsubseteq":"⊑","sqsup":"⊐","sqsupe":"⊒","sqsupset":"⊐","sqsupseteq":"⊒","square":"□","Square":"□","SquareIntersection":"⊓","SquareSubset":"⊏","SquareSubsetEqual":"⊑","SquareSuperset":"⊐","SquareSupersetEqual":"⊒","SquareUnion":"⊔","squarf":"▪","squ":"□","squf":"▪","srarr":"→","Sscr":"𝒮","sscr":"𝓈","ssetmn":"∖","ssmile":"⌣","sstarf":"⋆","Star":"⋆","star":"☆","starf":"★","straightepsilon":"ϵ","straightphi":"ϕ","strns":"¯","sub":"⊂","Sub":"⋐","subdot":"⪽","subE":"⫅","sube":"⊆","subedot":"⫃","submult":"⫁","subnE":"⫋","subne":"⊊","subplus":"⪿","subrarr":"⥹","subset":"⊂","Subset":"⋐","subseteq":"⊆","subseteqq":"⫅","SubsetEqual":"⊆","subsetneq":"⊊","subsetneqq":"⫋","subsim":"⫇","subsub":"⫕","subsup":"⫓","succapprox":"⪸","succ":"≻","succcurlyeq":"≽","Succeeds":"≻","SucceedsEqual":"⪰","SucceedsSlantEqual":"≽","SucceedsTilde":"≿","succeq":"⪰","succnapprox":"⪺","succneqq":"⪶","succnsim":"⋩","succsim":"≿","SuchThat":"∋","sum":"∑","Sum":"∑","sung":"♪","sup1":"¹","sup2":"²","sup3":"³","sup":"⊃","Sup":"⋑","supdot":"⪾","supdsub":"⫘","supE":"⫆","supe":"⊇","supedot":"⫄","Superset":"⊃","SupersetEqual":"⊇","suphsol":"⟉","suphsub":"⫗","suplarr":"⥻","supmult":"⫂","supnE":"⫌","supne":"⊋","supplus":"⫀","supset":"⊃","Supset":"⋑","supseteq":"⊇","supseteqq":"⫆","supsetneq":"⊋","supsetneqq":"⫌","supsim":"⫈","supsub":"⫔","supsup":"⫖","swarhk":"⤦","swarr":"↙","swArr":"⇙","swarrow":"↙","swnwar":"⤪","szlig":"ß","Tab":"\\t","target":"⌖","Tau":"Τ","tau":"τ","tbrk":"⎴","Tcaron":"Ť","tcaron":"ť","Tcedil":"Ţ","tcedil":"ţ","Tcy":"Т","tcy":"т","tdot":"⃛","telrec":"⌕","Tfr":"𝔗","tfr":"𝔱","there4":"∴","therefore":"∴","Therefore":"∴","Theta":"Θ","theta":"θ","thetasym":"ϑ","thetav":"ϑ","thickapprox":"≈","thicksim":"∼","ThickSpace":" ","ThinSpace":" ","thinsp":" ","thkap":"≈","thksim":"∼","THORN":"Þ","thorn":"þ","tilde":"˜","Tilde":"∼","TildeEqual":"≃","TildeFullEqual":"≅","TildeTilde":"≈","timesbar":"⨱","timesb":"⊠","times":"×","timesd":"⨰","tint":"∭","toea":"⤨","topbot":"⌶","topcir":"⫱","top":"⊤","Topf":"𝕋","topf":"𝕥","topfork":"⫚","tosa":"⤩","tprime":"‴","trade":"™","TRADE":"™","triangle":"▵","triangledown":"▿","triangleleft":"◃","trianglelefteq":"⊴","triangleq":"≜","triangleright":"▹","trianglerighteq":"⊵","tridot":"◬","trie":"≜","triminus":"⨺","TripleDot":"⃛","triplus":"⨹","trisb":"⧍","tritime":"⨻","trpezium":"⏢","Tscr":"𝒯","tscr":"𝓉","TScy":"Ц","tscy":"ц","TSHcy":"Ћ","tshcy":"ћ","Tstrok":"Ŧ","tstrok":"ŧ","twixt":"≬","twoheadleftarrow":"↞","twoheadrightarrow":"↠","Uacute":"Ú","uacute":"ú","uarr":"↑","Uarr":"↟","uArr":"⇑","Uarrocir":"⥉","Ubrcy":"Ў","ubrcy":"ў","Ubreve":"Ŭ","ubreve":"ŭ","Ucirc":"Û","ucirc":"û","Ucy":"У","ucy":"у","udarr":"⇅","Udblac":"Ű","udblac":"ű","udhar":"⥮","ufisht":"⥾","Ufr":"𝔘","ufr":"𝔲","Ugrave":"Ù","ugrave":"ù","uHar":"⥣","uharl":"↿","uharr":"↾","uhblk":"▀","ulcorn":"⌜","ulcorner":"⌜","ulcrop":"⌏","ultri":"◸","Umacr":"Ū","umacr":"ū","uml":"¨","UnderBar":"_","UnderBrace":"⏟","UnderBracket":"⎵","UnderParenthesis":"⏝","Union":"⋃","UnionPlus":"⊎","Uogon":"Ų","uogon":"ų","Uopf":"𝕌","uopf":"𝕦","UpArrowBar":"⤒","uparrow":"↑","UpArrow":"↑","Uparrow":"⇑","UpArrowDownArrow":"⇅","updownarrow":"↕","UpDownArrow":"↕","Updownarrow":"⇕","UpEquilibrium":"⥮","upharpoonleft":"↿","upharpoonright":"↾","uplus":"⊎","UpperLeftArrow":"↖","UpperRightArrow":"↗","upsi":"υ","Upsi":"ϒ","upsih":"ϒ","Upsilon":"Υ","upsilon":"υ","UpTeeArrow":"↥","UpTee":"⊥","upuparrows":"⇈","urcorn":"⌝","urcorner":"⌝","urcrop":"⌎","Uring":"Ů","uring":"ů","urtri":"◹","Uscr":"𝒰","uscr":"𝓊","utdot":"⋰","Utilde":"Ũ","utilde":"ũ","utri":"▵","utrif":"▴","uuarr":"⇈","Uuml":"Ü","uuml":"ü","uwangle":"⦧","vangrt":"⦜","varepsilon":"ϵ","varkappa":"ϰ","varnothing":"∅","varphi":"ϕ","varpi":"ϖ","varpropto":"∝","varr":"↕","vArr":"⇕","varrho":"ϱ","varsigma":"ς","varsubsetneq":"⊊︀","varsubsetneqq":"⫋︀","varsupsetneq":"⊋︀","varsupsetneqq":"⫌︀","vartheta":"ϑ","vartriangleleft":"⊲","vartriangleright":"⊳","vBar":"⫨","Vbar":"⫫","vBarv":"⫩","Vcy":"В","vcy":"в","vdash":"⊢","vDash":"⊨","Vdash":"⊩","VDash":"⊫","Vdashl":"⫦","veebar":"⊻","vee":"∨","Vee":"⋁","veeeq":"≚","vellip":"⋮","verbar":"|","Verbar":"‖","vert":"|","Vert":"‖","VerticalBar":"∣","VerticalLine":"|","VerticalSeparator":"❘","VerticalTilde":"≀","VeryThinSpace":" ","Vfr":"𝔙","vfr":"𝔳","vltri":"⊲","vnsub":"⊂⃒","vnsup":"⊃⃒","Vopf":"𝕍","vopf":"𝕧","vprop":"∝","vrtri":"⊳","Vscr":"𝒱","vscr":"𝓋","vsubnE":"⫋︀","vsubne":"⊊︀","vsupnE":"⫌︀","vsupne":"⊋︀","Vvdash":"⊪","vzigzag":"⦚","Wcirc":"Ŵ","wcirc":"ŵ","wedbar":"⩟","wedge":"∧","Wedge":"⋀","wedgeq":"≙","weierp":"℘","Wfr":"𝔚","wfr":"𝔴","Wopf":"𝕎","wopf":"𝕨","wp":"℘","wr":"≀","wreath":"≀","Wscr":"𝒲","wscr":"𝓌","xcap":"⋂","xcirc":"◯","xcup":"⋃","xdtri":"▽","Xfr":"𝔛","xfr":"𝔵","xharr":"⟷","xhArr":"⟺","Xi":"Ξ","xi":"ξ","xlarr":"⟵","xlArr":"⟸","xmap":"⟼","xnis":"⋻","xodot":"⨀","Xopf":"𝕏","xopf":"𝕩","xoplus":"⨁","xotime":"⨂","xrarr":"⟶","xrArr":"⟹","Xscr":"𝒳","xscr":"𝓍","xsqcup":"⨆","xuplus":"⨄","xutri":"△","xvee":"⋁","xwedge":"⋀","Yacute":"Ý","yacute":"ý","YAcy":"Я","yacy":"я","Ycirc":"Ŷ","ycirc":"ŷ","Ycy":"Ы","ycy":"ы","yen":"¥","Yfr":"𝔜","yfr":"𝔶","YIcy":"Ї","yicy":"ї","Yopf":"𝕐","yopf":"𝕪","Yscr":"𝒴","yscr":"𝓎","YUcy":"Ю","yucy":"ю","yuml":"ÿ","Yuml":"Ÿ","Zacute":"Ź","zacute":"ź","Zcaron":"Ž","zcaron":"ž","Zcy":"З","zcy":"з","Zdot":"Ż","zdot":"ż","zeetrf":"ℨ","ZeroWidthSpace":"","Zeta":"Ζ","zeta":"ζ","zfr":"𝔷","Zfr":"ℨ","ZHcy":"Ж","zhcy":"ж","zigrarr":"⇝","zopf":"𝕫","Zopf":"ℤ","Zscr":"𝒵","zscr":"𝓏","zwj":"","zwnj":""}')},9591:e=>{"use strict";e.exports=JSON.parse('{"Aacute":"Á","aacute":"á","Acirc":"Â","acirc":"â","acute":"´","AElig":"Æ","aelig":"æ","Agrave":"À","agrave":"à","amp":"&","AMP":"&","Aring":"Å","aring":"å","Atilde":"Ã","atilde":"ã","Auml":"Ä","auml":"ä","brvbar":"¦","Ccedil":"Ç","ccedil":"ç","cedil":"¸","cent":"¢","copy":"©","COPY":"©","curren":"¤","deg":"°","divide":"÷","Eacute":"É","eacute":"é","Ecirc":"Ê","ecirc":"ê","Egrave":"È","egrave":"è","ETH":"Ð","eth":"ð","Euml":"Ë","euml":"ë","frac12":"½","frac14":"¼","frac34":"¾","gt":">","GT":">","Iacute":"Í","iacute":"í","Icirc":"Î","icirc":"î","iexcl":"¡","Igrave":"Ì","igrave":"ì","iquest":"¿","Iuml":"Ï","iuml":"ï","laquo":"«","lt":"<","LT":"<","macr":"¯","micro":"µ","middot":"·","nbsp":" ","not":"¬","Ntilde":"Ñ","ntilde":"ñ","Oacute":"Ó","oacute":"ó","Ocirc":"Ô","ocirc":"ô","Ograve":"Ò","ograve":"ò","ordf":"ª","ordm":"º","Oslash":"Ø","oslash":"ø","Otilde":"Õ","otilde":"õ","Ouml":"Ö","ouml":"ö","para":"¶","plusmn":"±","pound":"£","quot":"\\"","QUOT":"\\"","raquo":"»","reg":"®","REG":"®","sect":"§","shy":"","sup1":"¹","sup2":"²","sup3":"³","szlig":"ß","THORN":"Þ","thorn":"þ","times":"×","Uacute":"Ú","uacute":"ú","Ucirc":"Û","ucirc":"û","Ugrave":"Ù","ugrave":"ù","uml":"¨","Uuml":"Ü","uuml":"ü","Yacute":"Ý","yacute":"ý","yen":"¥","yuml":"ÿ"}')},2586:e=>{"use strict";e.exports=JSON.parse('{"amp":"&","apos":"\'","gt":">","lt":"<","quot":"\\""}')}},t={};function r(n){var o=t[n];if(void 0!==o)return o.exports;var i=t[n]={id:n,loaded:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.loaded=!0,i.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(()=>{"use strict";const e=r(1034),t=r(2225);(async()=>{try{const t=new e.Action;await t.run()}catch(e){if(e instanceof Error)return(0,t.setFailed)(e.message),void(0,t.warning)("Need help? https://docs.saml.to/troubleshooting/get-help");throw e}process.exit(0)})()})()})();
//# sourceMappingURL=main.js.map
\ No newline at end of file
diff --git a/dist/main.js.map b/dist/main.js.map
index 219bdbf..c68d49b 100644
--- a/dist/main.js.map
+++ b/dist/main.js.map
@@ -1 +1 @@
-{"version":3,"file":"main.js","mappings":"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CACVmH,KAAM,IAEV,CACInH,SAAU,kCACVmH,KAAM,CAAC,WAInB,YAAa,CACT2kB,SAAU,CACN,CACI9rB,SAAU,8BACVmH,KAAM,IAEV,CACInH,SAAU,mCACVmH,KAAM,CAAC,WAInB,YAAa,CACT2kB,SAAU,CACN,CACI9rB,SAAU,8BACVmH,KAAM,IAEV,CACInH,SAAU,mCACVmH,KAAM,CAAC,YAKnB,GAAgB,CAChBs7B,IAAK,CACDrW,QAAS,CACL,aACA,YACA,iBACA,iBACA,iBACA,aACA,iBACA,iBACA,iBACA,aACA,eACA,eACA,aACA,aACA,YACA,YACA,YACA,aACA,YACA,YACA,iBACA,YACA,iBACA,YACA,iBACA,YACA,kBAEJQ,YAAa,yCACbd,SAAU,CACN,CACI9rB,SAAU,6BACVmH,KAAM,IAEV,CACInH,SAAU,kCACVmH,KAAM,CAAC,SAEX,CACInH,SAAU,4BACVmH,KAAM,CAAC,YAAa,SAExB,CACInH,SAAU,uBACVmH,KAAM,CAAC,gBAInB,SAAU,CACNilB,QAAS,CAAC,aAAc,kBACxBQ,YAAa,qBACbd,SAAU,CACN,CACI9rB,SAAU,gCACVmH,KAAM,IAEV,CACInH,SAAU,qCACVmH,KAAM,CAAC,SAEX,CACInH,SAAU,iDACVmH,KAAM,CAAC,YAAa,SAExB,CACInH,SAAU,4CACVmH,KAAM,CAAC,gBAInB,UAAW,CACPilB,QAAS,CAAC,gBAAiB,iBAC3BQ,YAAa,2BACbd,SAAU,CACN,CACI9rB,SAAU,0BACVmH,KAAM,IAEV,CACInH,SAAU,+BACVmH,KAAM,CAAC,WAInB,YAAa,CACTilB,QAAS,CAAC,kBACVQ,YAAa,4BACbd,SAAU,CACN,CACI9rB,SAAU,6BACVmH,KAAM,IAEV,CACInH,SAAU,kCACVmH,KAAM,CAAC,WAInB,aAAc,CACVilB,QAAS,CAAC,gBAAiB,qBAAsB,gBAAiB,sBAClEQ,YAAa,2BACbd,SAAU,CACN,CACI9rB,SAAU,6BACVmH,KAAM,IAEV,CACInH,SAAU,6BACVmH,KAAM,CAAC,SAEX,CACInH,SAAU,4BACVmH,KAAM,CAAC,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","sources":["webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/command.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/core.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/file-command.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/oidc-utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/http-client/auth.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/http-client/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/http-client/proxy.js","webpack://@saml-to/assume-aws-role-action/./node_modules/tslib/tslib.es6.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-serde/dist-es/deserializerMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-serde/dist-es/serdePlugin.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-serde/dist-es/serializerMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/ProviderError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/chain.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-hex-encoding/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/fromStatic.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/memoize.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/credentialDerivation.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/getCanonicalHeaders.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-uri-escape/dist-es/escape-uri.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/is-array-buffer/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/getPayloadHash.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/cloneRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/prepareRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/SignatureV4.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/normalizeProvider.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/moveHeadersToQuery.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/headerUtil.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/getCanonicalQuery.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/utilDate.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/configurations.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/protocol-http/dist-es/httpRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/protocol-http/dist-es/httpResponse.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/utils/getSkewCorrectedDate.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/utils/getUpdatedSystemClockOffset.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/utils/isClockSkewed.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/middleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-stack/dist-es/MiddlewareStack.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/client.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/command.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/parse-utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/date-utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/extended-encode-uri-component.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/get-value-from-text-node.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/models/models_0.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/lazy-json.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-config-provider/dist-es/booleanSelector.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/protocols/Aws_query.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithSAMLCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithWebIdentityCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/DecodeAuthorizationMessageCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetAccessKeyInfoCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetCallerIdentityCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetFederationTokenCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetSessionTokenCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/config.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/utils/normalizeEndpoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/resolveEndpointsConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/utils/normalizeBoolean.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/utils/getEndpointFromRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/config.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/isFipsRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/getRealRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/resolveRegionConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getHostnameFromVariants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getRegionInfo.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getResolvedPartition.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getResolvedHostname.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getResolvedSigningRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-content-length/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/service-error-classification/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/service-error-classification/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/DefaultRateLimiter.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"crypto\"","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/rng.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/regex.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/stringify.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/validate.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/v4.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/delayDecider.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/retryDecider.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/StandardRetryStrategy.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/defaultRetryQuota.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/AdaptiveRetryStrategy.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/configurations.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/retryMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-sdk-sts/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/defaultStsRoleAssumers.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-env/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"buffer\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/httpRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/ImdsCredentials.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/Endpoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/RemoteProviderInit.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/retry.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/fromContainerMetadata.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/shared-ini-file-loader/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/configLoader.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/fromEnv.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/fromSharedConfigFiles.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/fromStatic.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/url-parser/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/querystring-parser/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/EndpointConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/EndpointMode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/EndpointModeConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/fromInstanceMetadata.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/utils/getInstanceMetadataEndpoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-buffer-from/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/hash-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/querystring-builder/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/get-transformed-headers.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/write-request-body.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/node-http-handler.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/set-connection-timeout.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/set-socket-timeout.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"http2\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/node-http2-handler.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/stream-collector/collector.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/stream-collector/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-base64-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-body-length-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"process\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/models/models_0.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-user-agent-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-utf8-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/endpoints.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/SSOClient.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.shared.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/protocols/Aws_restJson1.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/commands/GetRoleCredentialsCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-credentials/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-sso/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromTokenFile.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromWebToken.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-ini/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"child_process\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-process/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/endpoints.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/STSClient.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.shared.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/STS.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/defaultRoleAssumers.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-user-agent-node/dist-es/is-crt-available.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/adapters/http.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/adapters/xhr.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/axios.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/cancel/Cancel.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/cancel/CancelToken.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/cancel/isCancel.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/Axios.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/InterceptorManager.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/buildFullPath.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/createError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/dispatchRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/enhanceError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/mergeConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/settle.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/transformData.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/defaults.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/env/data.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/bind.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/buildURL.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/combineURLs.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/cookies.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/spread.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/validator.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/browser.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/common.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/node.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/decode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/decode_codepoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/encode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/json2xml.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/nimndata.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/node2json.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/node2json_str.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/parser.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/util.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/validator.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/xmlNode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/xmlstr2xmlnode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/follow-redirects/debug.js","webpack://@saml-to/assume-aws-role-action/./node_modules/follow-redirects/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/has-flag/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/ms/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/supports-color/index.js","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/api.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/base.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/common.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/configuration.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/index.ts","webpack://@saml-to/assume-aws-role-action/./src/action.ts","webpack://@saml-to/assume-aws-role-action/./node_modules/tunnel/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/tunnel/lib/tunnel.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"assert\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"events\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"fs\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"http\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"https\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"net\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"os\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"path\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"stream\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"tls\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"tty\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"url\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"util\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"zlib\"","webpack://@saml-to/assume-aws-role-action/webpack/bootstrap","webpack://@saml-to/assume-aws-role-action/webpack/runtime/compat get default export","webpack://@saml-to/assume-aws-role-action/webpack/runtime/define property getters","webpack://@saml-to/assume-aws-role-action/webpack/runtime/harmony module decorator","webpack://@saml-to/assume-aws-role-action/webpack/runtime/hasOwnProperty shorthand","webpack://@saml-to/assume-aws-role-action/webpack/runtime/make namespace object","webpack://@saml-to/assume-aws-role-action/./src/index.ts"],"sourcesContent":["\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.issue = exports.issueCommand = void 0;\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\n/**\n * Commands\n *\n * Command Format:\n * ::name key=value,key=value::message\n *\n * Examples:\n * ::warning::This is the message\n * ::set-env name=MY_VAR::some value\n */\nfunction issueCommand(command, properties, message) {\n const cmd = new Command(command, properties, message);\n process.stdout.write(cmd.toString() + os.EOL);\n}\nexports.issueCommand = issueCommand;\nfunction issue(name, message = '') {\n issueCommand(name, {}, message);\n}\nexports.issue = issue;\nconst CMD_STRING = '::';\nclass Command {\n constructor(command, properties, message) {\n if (!command) {\n command = 'missing.command';\n }\n this.command = command;\n this.properties = properties;\n this.message = message;\n }\n toString() {\n let cmdStr = CMD_STRING + this.command;\n if (this.properties && Object.keys(this.properties).length > 0) {\n cmdStr += ' ';\n let first = true;\n for (const key in this.properties) {\n if (this.properties.hasOwnProperty(key)) {\n const val = this.properties[key];\n if (val) {\n if (first) {\n first = false;\n }\n else {\n cmdStr += ',';\n }\n cmdStr += `${key}=${escapeProperty(val)}`;\n }\n }\n }\n }\n cmdStr += `${CMD_STRING}${escapeData(this.message)}`;\n return cmdStr;\n }\n}\nfunction escapeData(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A');\n}\nfunction escapeProperty(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A')\n .replace(/:/g, '%3A')\n .replace(/,/g, '%2C');\n}\n//# sourceMappingURL=command.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getIDToken = exports.getState = exports.saveState = exports.group = exports.endGroup = exports.startGroup = exports.info = exports.notice = exports.warning = exports.error = exports.debug = exports.isDebug = exports.setFailed = exports.setCommandEcho = exports.setOutput = exports.getBooleanInput = exports.getMultilineInput = exports.getInput = exports.addPath = exports.setSecret = exports.exportVariable = exports.ExitCode = void 0;\nconst command_1 = require(\"./command\");\nconst file_command_1 = require(\"./file-command\");\nconst utils_1 = require(\"./utils\");\nconst os = __importStar(require(\"os\"));\nconst path = __importStar(require(\"path\"));\nconst oidc_utils_1 = require(\"./oidc-utils\");\n/**\n * The code to exit an action\n */\nvar ExitCode;\n(function (ExitCode) {\n /**\n * A code indicating that the action was successful\n */\n ExitCode[ExitCode[\"Success\"] = 0] = \"Success\";\n /**\n * A code indicating that the action was a failure\n */\n ExitCode[ExitCode[\"Failure\"] = 1] = \"Failure\";\n})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));\n//-----------------------------------------------------------------------\n// Variables\n//-----------------------------------------------------------------------\n/**\n * Sets env variable for this action and future actions in the job\n * @param name the name of the variable to set\n * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction exportVariable(name, val) {\n const convertedVal = utils_1.toCommandValue(val);\n process.env[name] = convertedVal;\n const filePath = process.env['GITHUB_ENV'] || '';\n if (filePath) {\n const delimiter = '_GitHubActionsFileCommandDelimeter_';\n const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`;\n file_command_1.issueCommand('ENV', commandValue);\n }\n else {\n command_1.issueCommand('set-env', { name }, convertedVal);\n }\n}\nexports.exportVariable = exportVariable;\n/**\n * Registers a secret which will get masked from logs\n * @param secret value of the secret\n */\nfunction setSecret(secret) {\n command_1.issueCommand('add-mask', {}, secret);\n}\nexports.setSecret = setSecret;\n/**\n * Prepends inputPath to the PATH (for this action and future actions)\n * @param inputPath\n */\nfunction addPath(inputPath) {\n const filePath = process.env['GITHUB_PATH'] || '';\n if (filePath) {\n file_command_1.issueCommand('PATH', inputPath);\n }\n else {\n command_1.issueCommand('add-path', {}, inputPath);\n }\n process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;\n}\nexports.addPath = addPath;\n/**\n * Gets the value of an input.\n * Unless trimWhitespace is set to false in InputOptions, the value is also trimmed.\n * Returns an empty string if the value is not defined.\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns string\n */\nfunction getInput(name, options) {\n const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';\n if (options && options.required && !val) {\n throw new Error(`Input required and not supplied: ${name}`);\n }\n if (options && options.trimWhitespace === false) {\n return val;\n }\n return val.trim();\n}\nexports.getInput = getInput;\n/**\n * Gets the values of an multiline input. Each value is also trimmed.\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns string[]\n *\n */\nfunction getMultilineInput(name, options) {\n const inputs = getInput(name, options)\n .split('\\n')\n .filter(x => x !== '');\n return inputs;\n}\nexports.getMultilineInput = getMultilineInput;\n/**\n * Gets the input value of the boolean type in the YAML 1.2 \"core schema\" specification.\n * Support boolean input list: `true | True | TRUE | false | False | FALSE` .\n * The return value is also in boolean type.\n * ref: https://yaml.org/spec/1.2/spec.html#id2804923\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns boolean\n */\nfunction getBooleanInput(name, options) {\n const trueValue = ['true', 'True', 'TRUE'];\n const falseValue = ['false', 'False', 'FALSE'];\n const val = getInput(name, options);\n if (trueValue.includes(val))\n return true;\n if (falseValue.includes(val))\n return false;\n throw new TypeError(`Input does not meet YAML 1.2 \"Core Schema\" specification: ${name}\\n` +\n `Support boolean input list: \\`true | True | TRUE | false | False | FALSE\\``);\n}\nexports.getBooleanInput = getBooleanInput;\n/**\n * Sets the value of an output.\n *\n * @param name name of the output to set\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction setOutput(name, value) {\n process.stdout.write(os.EOL);\n command_1.issueCommand('set-output', { name }, value);\n}\nexports.setOutput = setOutput;\n/**\n * Enables or disables the echoing of commands into stdout for the rest of the step.\n * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.\n *\n */\nfunction setCommandEcho(enabled) {\n command_1.issue('echo', enabled ? 'on' : 'off');\n}\nexports.setCommandEcho = setCommandEcho;\n//-----------------------------------------------------------------------\n// Results\n//-----------------------------------------------------------------------\n/**\n * Sets the action status to failed.\n * When the action exits it will be with an exit code of 1\n * @param message add error issue message\n */\nfunction setFailed(message) {\n process.exitCode = ExitCode.Failure;\n error(message);\n}\nexports.setFailed = setFailed;\n//-----------------------------------------------------------------------\n// Logging Commands\n//-----------------------------------------------------------------------\n/**\n * Gets whether Actions Step Debug is on or not\n */\nfunction isDebug() {\n return process.env['RUNNER_DEBUG'] === '1';\n}\nexports.isDebug = isDebug;\n/**\n * Writes debug message to user log\n * @param message debug message\n */\nfunction debug(message) {\n command_1.issueCommand('debug', {}, message);\n}\nexports.debug = debug;\n/**\n * Adds an error issue\n * @param message error issue message. Errors will be converted to string via toString()\n * @param properties optional properties to add to the annotation.\n */\nfunction error(message, properties = {}) {\n command_1.issueCommand('error', utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);\n}\nexports.error = error;\n/**\n * Adds a warning issue\n * @param message warning issue message. Errors will be converted to string via toString()\n * @param properties optional properties to add to the annotation.\n */\nfunction warning(message, properties = {}) {\n command_1.issueCommand('warning', utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);\n}\nexports.warning = warning;\n/**\n * Adds a notice issue\n * @param message notice issue message. Errors will be converted to string via toString()\n * @param properties optional properties to add to the annotation.\n */\nfunction notice(message, properties = {}) {\n command_1.issueCommand('notice', utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);\n}\nexports.notice = notice;\n/**\n * Writes info to log with console.log.\n * @param message info message\n */\nfunction info(message) {\n process.stdout.write(message + os.EOL);\n}\nexports.info = info;\n/**\n * Begin an output group.\n *\n * Output until the next `groupEnd` will be foldable in this group\n *\n * @param name The name of the output group\n */\nfunction startGroup(name) {\n command_1.issue('group', name);\n}\nexports.startGroup = startGroup;\n/**\n * End an output group.\n */\nfunction endGroup() {\n command_1.issue('endgroup');\n}\nexports.endGroup = endGroup;\n/**\n * Wrap an asynchronous function call in a group.\n *\n * Returns the same type as the function itself.\n *\n * @param name The name of the group\n * @param fn The function to wrap in the group\n */\nfunction group(name, fn) {\n return __awaiter(this, void 0, void 0, function* () {\n startGroup(name);\n let result;\n try {\n result = yield fn();\n }\n finally {\n endGroup();\n }\n return result;\n });\n}\nexports.group = group;\n//-----------------------------------------------------------------------\n// Wrapper action state\n//-----------------------------------------------------------------------\n/**\n * Saves state for current action, the state can only be retrieved by this action's post job execution.\n *\n * @param name name of the state to store\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction saveState(name, value) {\n command_1.issueCommand('save-state', { name }, value);\n}\nexports.saveState = saveState;\n/**\n * Gets the value of an state set by this action's main execution.\n *\n * @param name name of the state to get\n * @returns string\n */\nfunction getState(name) {\n return process.env[`STATE_${name}`] || '';\n}\nexports.getState = getState;\nfunction getIDToken(aud) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield oidc_utils_1.OidcClient.getIDToken(aud);\n });\n}\nexports.getIDToken = getIDToken;\n//# sourceMappingURL=core.js.map","\"use strict\";\n// For internal use, subject to change.\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.issueCommand = void 0;\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst fs = __importStar(require(\"fs\"));\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\nfunction issueCommand(command, message) {\n const filePath = process.env[`GITHUB_${command}`];\n if (!filePath) {\n throw new Error(`Unable to find environment variable for file command ${command}`);\n }\n if (!fs.existsSync(filePath)) {\n throw new Error(`Missing file at path: ${filePath}`);\n }\n fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, {\n encoding: 'utf8'\n });\n}\nexports.issueCommand = issueCommand;\n//# sourceMappingURL=file-command.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.OidcClient = void 0;\nconst http_client_1 = require(\"@actions/http-client\");\nconst auth_1 = require(\"@actions/http-client/auth\");\nconst core_1 = require(\"./core\");\nclass OidcClient {\n static createHttpClient(allowRetry = true, maxRetry = 10) {\n const requestOptions = {\n allowRetries: allowRetry,\n maxRetries: maxRetry\n };\n return new http_client_1.HttpClient('actions/oidc-client', [new auth_1.BearerCredentialHandler(OidcClient.getRequestToken())], requestOptions);\n }\n static getRequestToken() {\n const token = process.env['ACTIONS_ID_TOKEN_REQUEST_TOKEN'];\n if (!token) {\n throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable');\n }\n return token;\n }\n static getIDTokenUrl() {\n const runtimeUrl = process.env['ACTIONS_ID_TOKEN_REQUEST_URL'];\n if (!runtimeUrl) {\n throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable');\n }\n return runtimeUrl;\n }\n static getCall(id_token_url) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n const httpclient = OidcClient.createHttpClient();\n const res = yield httpclient\n .getJson(id_token_url)\n .catch(error => {\n throw new Error(`Failed to get ID Token. \\n \n Error Code : ${error.statusCode}\\n \n Error Message: ${error.result.message}`);\n });\n const id_token = (_a = res.result) === null || _a === void 0 ? void 0 : _a.value;\n if (!id_token) {\n throw new Error('Response json body do not have ID Token field');\n }\n return id_token;\n });\n }\n static getIDToken(audience) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n // New ID Token is requested from action service\n let id_token_url = OidcClient.getIDTokenUrl();\n if (audience) {\n const encodedAudience = encodeURIComponent(audience);\n id_token_url = `${id_token_url}&audience=${encodedAudience}`;\n }\n core_1.debug(`ID token url is ${id_token_url}`);\n const id_token = yield OidcClient.getCall(id_token_url);\n core_1.setSecret(id_token);\n return id_token;\n }\n catch (error) {\n throw new Error(`Error message: ${error.message}`);\n }\n });\n }\n}\nexports.OidcClient = OidcClient;\n//# sourceMappingURL=oidc-utils.js.map","\"use strict\";\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toCommandProperties = exports.toCommandValue = void 0;\n/**\n * Sanitizes an input into a string so it can be passed into issueCommand safely\n * @param input input to sanitize into a string\n */\nfunction toCommandValue(input) {\n if (input === null || input === undefined) {\n return '';\n }\n else if (typeof input === 'string' || input instanceof String) {\n return input;\n }\n return JSON.stringify(input);\n}\nexports.toCommandValue = toCommandValue;\n/**\n *\n * @param annotationProperties\n * @returns The command properties to send with the actual annotation command\n * See IssueCommandProperties: https://github.com/actions/runner/blob/main/src/Runner.Worker/ActionCommandManager.cs#L646\n */\nfunction toCommandProperties(annotationProperties) {\n if (!Object.keys(annotationProperties).length) {\n return {};\n }\n return {\n title: annotationProperties.title,\n file: annotationProperties.file,\n line: annotationProperties.startLine,\n endLine: annotationProperties.endLine,\n col: annotationProperties.startColumn,\n endColumn: annotationProperties.endColumn\n };\n}\nexports.toCommandProperties = toCommandProperties;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nclass BasicCredentialHandler {\n constructor(username, password) {\n this.username = username;\n this.password = password;\n }\n prepareRequest(options) {\n options.headers['Authorization'] =\n 'Basic ' +\n Buffer.from(this.username + ':' + this.password).toString('base64');\n }\n // This handler cannot handle 401\n canHandleAuthentication(response) {\n return false;\n }\n handleAuthentication(httpClient, requestInfo, objs) {\n return null;\n }\n}\nexports.BasicCredentialHandler = BasicCredentialHandler;\nclass BearerCredentialHandler {\n constructor(token) {\n this.token = token;\n }\n // currently implements pre-authorization\n // TODO: support preAuth = false where it hooks on 401\n prepareRequest(options) {\n options.headers['Authorization'] = 'Bearer ' + this.token;\n }\n // This handler cannot handle 401\n canHandleAuthentication(response) {\n return false;\n }\n handleAuthentication(httpClient, requestInfo, objs) {\n return null;\n }\n}\nexports.BearerCredentialHandler = BearerCredentialHandler;\nclass PersonalAccessTokenCredentialHandler {\n constructor(token) {\n this.token = token;\n }\n // currently implements pre-authorization\n // TODO: support preAuth = false where it hooks on 401\n prepareRequest(options) {\n options.headers['Authorization'] =\n 'Basic ' + Buffer.from('PAT:' + this.token).toString('base64');\n }\n // This handler cannot handle 401\n canHandleAuthentication(response) {\n return false;\n }\n handleAuthentication(httpClient, requestInfo, objs) {\n return null;\n }\n}\nexports.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst http = require(\"http\");\nconst https = require(\"https\");\nconst pm = require(\"./proxy\");\nlet tunnel;\nvar HttpCodes;\n(function (HttpCodes) {\n HttpCodes[HttpCodes[\"OK\"] = 200] = \"OK\";\n HttpCodes[HttpCodes[\"MultipleChoices\"] = 300] = \"MultipleChoices\";\n HttpCodes[HttpCodes[\"MovedPermanently\"] = 301] = \"MovedPermanently\";\n HttpCodes[HttpCodes[\"ResourceMoved\"] = 302] = \"ResourceMoved\";\n HttpCodes[HttpCodes[\"SeeOther\"] = 303] = \"SeeOther\";\n HttpCodes[HttpCodes[\"NotModified\"] = 304] = \"NotModified\";\n HttpCodes[HttpCodes[\"UseProxy\"] = 305] = \"UseProxy\";\n HttpCodes[HttpCodes[\"SwitchProxy\"] = 306] = \"SwitchProxy\";\n HttpCodes[HttpCodes[\"TemporaryRedirect\"] = 307] = \"TemporaryRedirect\";\n HttpCodes[HttpCodes[\"PermanentRedirect\"] = 308] = \"PermanentRedirect\";\n HttpCodes[HttpCodes[\"BadRequest\"] = 400] = \"BadRequest\";\n HttpCodes[HttpCodes[\"Unauthorized\"] = 401] = \"Unauthorized\";\n HttpCodes[HttpCodes[\"PaymentRequired\"] = 402] = \"PaymentRequired\";\n HttpCodes[HttpCodes[\"Forbidden\"] = 403] = \"Forbidden\";\n HttpCodes[HttpCodes[\"NotFound\"] = 404] = \"NotFound\";\n HttpCodes[HttpCodes[\"MethodNotAllowed\"] = 405] = \"MethodNotAllowed\";\n HttpCodes[HttpCodes[\"NotAcceptable\"] = 406] = \"NotAcceptable\";\n HttpCodes[HttpCodes[\"ProxyAuthenticationRequired\"] = 407] = \"ProxyAuthenticationRequired\";\n HttpCodes[HttpCodes[\"RequestTimeout\"] = 408] = \"RequestTimeout\";\n HttpCodes[HttpCodes[\"Conflict\"] = 409] = \"Conflict\";\n HttpCodes[HttpCodes[\"Gone\"] = 410] = \"Gone\";\n HttpCodes[HttpCodes[\"TooManyRequests\"] = 429] = \"TooManyRequests\";\n HttpCodes[HttpCodes[\"InternalServerError\"] = 500] = \"InternalServerError\";\n HttpCodes[HttpCodes[\"NotImplemented\"] = 501] = \"NotImplemented\";\n HttpCodes[HttpCodes[\"BadGateway\"] = 502] = \"BadGateway\";\n HttpCodes[HttpCodes[\"ServiceUnavailable\"] = 503] = \"ServiceUnavailable\";\n HttpCodes[HttpCodes[\"GatewayTimeout\"] = 504] = \"GatewayTimeout\";\n})(HttpCodes = exports.HttpCodes || (exports.HttpCodes = {}));\nvar Headers;\n(function (Headers) {\n Headers[\"Accept\"] = \"accept\";\n Headers[\"ContentType\"] = \"content-type\";\n})(Headers = exports.Headers || (exports.Headers = {}));\nvar MediaTypes;\n(function (MediaTypes) {\n MediaTypes[\"ApplicationJson\"] = \"application/json\";\n})(MediaTypes = exports.MediaTypes || (exports.MediaTypes = {}));\n/**\n * Returns the proxy URL, depending upon the supplied url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\nfunction getProxyUrl(serverUrl) {\n let proxyUrl = pm.getProxyUrl(new URL(serverUrl));\n return proxyUrl ? proxyUrl.href : '';\n}\nexports.getProxyUrl = getProxyUrl;\nconst HttpRedirectCodes = [\n HttpCodes.MovedPermanently,\n HttpCodes.ResourceMoved,\n HttpCodes.SeeOther,\n HttpCodes.TemporaryRedirect,\n HttpCodes.PermanentRedirect\n];\nconst HttpResponseRetryCodes = [\n HttpCodes.BadGateway,\n HttpCodes.ServiceUnavailable,\n HttpCodes.GatewayTimeout\n];\nconst RetryableHttpVerbs = ['OPTIONS', 'GET', 'DELETE', 'HEAD'];\nconst ExponentialBackoffCeiling = 10;\nconst ExponentialBackoffTimeSlice = 5;\nclass HttpClientError extends Error {\n constructor(message, statusCode) {\n super(message);\n this.name = 'HttpClientError';\n this.statusCode = statusCode;\n Object.setPrototypeOf(this, HttpClientError.prototype);\n }\n}\nexports.HttpClientError = HttpClientError;\nclass HttpClientResponse {\n constructor(message) {\n this.message = message;\n }\n readBody() {\n return new Promise(async (resolve, reject) => {\n let output = Buffer.alloc(0);\n this.message.on('data', (chunk) => {\n output = Buffer.concat([output, chunk]);\n });\n this.message.on('end', () => {\n resolve(output.toString());\n });\n });\n }\n}\nexports.HttpClientResponse = HttpClientResponse;\nfunction isHttps(requestUrl) {\n let parsedUrl = new URL(requestUrl);\n return parsedUrl.protocol === 'https:';\n}\nexports.isHttps = isHttps;\nclass HttpClient {\n constructor(userAgent, handlers, requestOptions) {\n this._ignoreSslError = false;\n this._allowRedirects = true;\n this._allowRedirectDowngrade = false;\n this._maxRedirects = 50;\n this._allowRetries = false;\n this._maxRetries = 1;\n this._keepAlive = false;\n this._disposed = false;\n this.userAgent = userAgent;\n this.handlers = handlers || [];\n this.requestOptions = requestOptions;\n if (requestOptions) {\n if (requestOptions.ignoreSslError != null) {\n this._ignoreSslError = requestOptions.ignoreSslError;\n }\n this._socketTimeout = requestOptions.socketTimeout;\n if (requestOptions.allowRedirects != null) {\n this._allowRedirects = requestOptions.allowRedirects;\n }\n if (requestOptions.allowRedirectDowngrade != null) {\n this._allowRedirectDowngrade = requestOptions.allowRedirectDowngrade;\n }\n if (requestOptions.maxRedirects != null) {\n this._maxRedirects = Math.max(requestOptions.maxRedirects, 0);\n }\n if (requestOptions.keepAlive != null) {\n this._keepAlive = requestOptions.keepAlive;\n }\n if (requestOptions.allowRetries != null) {\n this._allowRetries = requestOptions.allowRetries;\n }\n if (requestOptions.maxRetries != null) {\n this._maxRetries = requestOptions.maxRetries;\n }\n }\n }\n options(requestUrl, additionalHeaders) {\n return this.request('OPTIONS', requestUrl, null, additionalHeaders || {});\n }\n get(requestUrl, additionalHeaders) {\n return this.request('GET', requestUrl, null, additionalHeaders || {});\n }\n del(requestUrl, additionalHeaders) {\n return this.request('DELETE', requestUrl, null, additionalHeaders || {});\n }\n post(requestUrl, data, additionalHeaders) {\n return this.request('POST', requestUrl, data, additionalHeaders || {});\n }\n patch(requestUrl, data, additionalHeaders) {\n return this.request('PATCH', requestUrl, data, additionalHeaders || {});\n }\n put(requestUrl, data, additionalHeaders) {\n return this.request('PUT', requestUrl, data, additionalHeaders || {});\n }\n head(requestUrl, additionalHeaders) {\n return this.request('HEAD', requestUrl, null, additionalHeaders || {});\n }\n sendStream(verb, requestUrl, stream, additionalHeaders) {\n return this.request(verb, requestUrl, stream, additionalHeaders);\n }\n /**\n * Gets a typed object from an endpoint\n * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise\n */\n async getJson(requestUrl, additionalHeaders = {}) {\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n let res = await this.get(requestUrl, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async postJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.post(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async putJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.put(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async patchJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.patch(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n /**\n * Makes a raw http request.\n * All other methods such as get, post, patch, and request ultimately call this.\n * Prefer get, del, post and patch\n */\n async request(verb, requestUrl, data, headers) {\n if (this._disposed) {\n throw new Error('Client has already been disposed.');\n }\n let parsedUrl = new URL(requestUrl);\n let info = this._prepareRequest(verb, parsedUrl, headers);\n // Only perform retries on reads since writes may not be idempotent.\n let maxTries = this._allowRetries && RetryableHttpVerbs.indexOf(verb) != -1\n ? this._maxRetries + 1\n : 1;\n let numTries = 0;\n let response;\n while (numTries < maxTries) {\n response = await this.requestRaw(info, data);\n // Check if it's an authentication challenge\n if (response &&\n response.message &&\n response.message.statusCode === HttpCodes.Unauthorized) {\n let authenticationHandler;\n for (let i = 0; i < this.handlers.length; i++) {\n if (this.handlers[i].canHandleAuthentication(response)) {\n authenticationHandler = this.handlers[i];\n break;\n }\n }\n if (authenticationHandler) {\n return authenticationHandler.handleAuthentication(this, info, data);\n }\n else {\n // We have received an unauthorized response but have no handlers to handle it.\n // Let the response return to the caller.\n return response;\n }\n }\n let redirectsRemaining = this._maxRedirects;\n while (HttpRedirectCodes.indexOf(response.message.statusCode) != -1 &&\n this._allowRedirects &&\n redirectsRemaining > 0) {\n const redirectUrl = response.message.headers['location'];\n if (!redirectUrl) {\n // if there's no location to redirect to, we won't\n break;\n }\n let parsedRedirectUrl = new URL(redirectUrl);\n if (parsedUrl.protocol == 'https:' &&\n parsedUrl.protocol != parsedRedirectUrl.protocol &&\n !this._allowRedirectDowngrade) {\n throw new Error('Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.');\n }\n // we need to finish reading the response before reassigning response\n // which will leak the open socket.\n await response.readBody();\n // strip authorization header if redirected to a different hostname\n if (parsedRedirectUrl.hostname !== parsedUrl.hostname) {\n for (let header in headers) {\n // header names are case insensitive\n if (header.toLowerCase() === 'authorization') {\n delete headers[header];\n }\n }\n }\n // let's make the request with the new redirectUrl\n info = this._prepareRequest(verb, parsedRedirectUrl, headers);\n response = await this.requestRaw(info, data);\n redirectsRemaining--;\n }\n if (HttpResponseRetryCodes.indexOf(response.message.statusCode) == -1) {\n // If not a retry code, return immediately instead of retrying\n return response;\n }\n numTries += 1;\n if (numTries < maxTries) {\n await response.readBody();\n await this._performExponentialBackoff(numTries);\n }\n }\n return response;\n }\n /**\n * Needs to be called if keepAlive is set to true in request options.\n */\n dispose() {\n if (this._agent) {\n this._agent.destroy();\n }\n this._disposed = true;\n }\n /**\n * Raw request.\n * @param info\n * @param data\n */\n requestRaw(info, data) {\n return new Promise((resolve, reject) => {\n let callbackForResult = function (err, res) {\n if (err) {\n reject(err);\n }\n resolve(res);\n };\n this.requestRawWithCallback(info, data, callbackForResult);\n });\n }\n /**\n * Raw request with callback.\n * @param info\n * @param data\n * @param onResult\n */\n requestRawWithCallback(info, data, onResult) {\n let socket;\n if (typeof data === 'string') {\n info.options.headers['Content-Length'] = Buffer.byteLength(data, 'utf8');\n }\n let callbackCalled = false;\n let handleResult = (err, res) => {\n if (!callbackCalled) {\n callbackCalled = true;\n onResult(err, res);\n }\n };\n let req = info.httpModule.request(info.options, (msg) => {\n let res = new HttpClientResponse(msg);\n handleResult(null, res);\n });\n req.on('socket', sock => {\n socket = sock;\n });\n // If we ever get disconnected, we want the socket to timeout eventually\n req.setTimeout(this._socketTimeout || 3 * 60000, () => {\n if (socket) {\n socket.end();\n }\n handleResult(new Error('Request timeout: ' + info.options.path), null);\n });\n req.on('error', function (err) {\n // err has statusCode property\n // res should have headers\n handleResult(err, null);\n });\n if (data && typeof data === 'string') {\n req.write(data, 'utf8');\n }\n if (data && typeof data !== 'string') {\n data.on('close', function () {\n req.end();\n });\n data.pipe(req);\n }\n else {\n req.end();\n }\n }\n /**\n * Gets an http agent. This function is useful when you need an http agent that handles\n * routing through a proxy server - depending upon the url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\n getAgent(serverUrl) {\n let parsedUrl = new URL(serverUrl);\n return this._getAgent(parsedUrl);\n }\n _prepareRequest(method, requestUrl, headers) {\n const info = {};\n info.parsedUrl = requestUrl;\n const usingSsl = info.parsedUrl.protocol === 'https:';\n info.httpModule = usingSsl ? https : http;\n const defaultPort = usingSsl ? 443 : 80;\n info.options = {};\n info.options.host = info.parsedUrl.hostname;\n info.options.port = info.parsedUrl.port\n ? parseInt(info.parsedUrl.port)\n : defaultPort;\n info.options.path =\n (info.parsedUrl.pathname || '') + (info.parsedUrl.search || '');\n info.options.method = method;\n info.options.headers = this._mergeHeaders(headers);\n if (this.userAgent != null) {\n info.options.headers['user-agent'] = this.userAgent;\n }\n info.options.agent = this._getAgent(info.parsedUrl);\n // gives handlers an opportunity to participate\n if (this.handlers) {\n this.handlers.forEach(handler => {\n handler.prepareRequest(info.options);\n });\n }\n return info;\n }\n _mergeHeaders(headers) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n if (this.requestOptions && this.requestOptions.headers) {\n return Object.assign({}, lowercaseKeys(this.requestOptions.headers), lowercaseKeys(headers));\n }\n return lowercaseKeys(headers || {});\n }\n _getExistingOrDefaultHeader(additionalHeaders, header, _default) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n let clientHeader;\n if (this.requestOptions && this.requestOptions.headers) {\n clientHeader = lowercaseKeys(this.requestOptions.headers)[header];\n }\n return additionalHeaders[header] || clientHeader || _default;\n }\n _getAgent(parsedUrl) {\n let agent;\n let proxyUrl = pm.getProxyUrl(parsedUrl);\n let useProxy = proxyUrl && proxyUrl.hostname;\n if (this._keepAlive && useProxy) {\n agent = this._proxyAgent;\n }\n if (this._keepAlive && !useProxy) {\n agent = this._agent;\n }\n // if agent is already assigned use that agent.\n if (!!agent) {\n return agent;\n }\n const usingSsl = parsedUrl.protocol === 'https:';\n let maxSockets = 100;\n if (!!this.requestOptions) {\n maxSockets = this.requestOptions.maxSockets || http.globalAgent.maxSockets;\n }\n if (useProxy) {\n // If using proxy, need tunnel\n if (!tunnel) {\n tunnel = require('tunnel');\n }\n const agentOptions = {\n maxSockets: maxSockets,\n keepAlive: this._keepAlive,\n proxy: {\n ...((proxyUrl.username || proxyUrl.password) && {\n proxyAuth: `${proxyUrl.username}:${proxyUrl.password}`\n }),\n host: proxyUrl.hostname,\n port: proxyUrl.port\n }\n };\n let tunnelAgent;\n const overHttps = proxyUrl.protocol === 'https:';\n if (usingSsl) {\n tunnelAgent = overHttps ? tunnel.httpsOverHttps : tunnel.httpsOverHttp;\n }\n else {\n tunnelAgent = overHttps ? tunnel.httpOverHttps : tunnel.httpOverHttp;\n }\n agent = tunnelAgent(agentOptions);\n this._proxyAgent = agent;\n }\n // if reusing agent across request and tunneling agent isn't assigned create a new agent\n if (this._keepAlive && !agent) {\n const options = { keepAlive: this._keepAlive, maxSockets: maxSockets };\n agent = usingSsl ? new https.Agent(options) : new http.Agent(options);\n this._agent = agent;\n }\n // if not using private agent and tunnel agent isn't setup then use global agent\n if (!agent) {\n agent = usingSsl ? https.globalAgent : http.globalAgent;\n }\n if (usingSsl && this._ignoreSslError) {\n // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process\n // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options\n // we have to cast it to any and change it directly\n agent.options = Object.assign(agent.options || {}, {\n rejectUnauthorized: false\n });\n }\n return agent;\n }\n _performExponentialBackoff(retryNumber) {\n retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber);\n const ms = ExponentialBackoffTimeSlice * Math.pow(2, retryNumber);\n return new Promise(resolve => setTimeout(() => resolve(), ms));\n }\n static dateTimeDeserializer(key, value) {\n if (typeof value === 'string') {\n let a = new Date(value);\n if (!isNaN(a.valueOf())) {\n return a;\n }\n }\n return value;\n }\n async _processResponse(res, options) {\n return new Promise(async (resolve, reject) => {\n const statusCode = res.message.statusCode;\n const response = {\n statusCode: statusCode,\n result: null,\n headers: {}\n };\n // not found leads to null obj returned\n if (statusCode == HttpCodes.NotFound) {\n resolve(response);\n }\n let obj;\n let contents;\n // get the result from the body\n try {\n contents = await res.readBody();\n if (contents && contents.length > 0) {\n if (options && options.deserializeDates) {\n obj = JSON.parse(contents, HttpClient.dateTimeDeserializer);\n }\n else {\n obj = JSON.parse(contents);\n }\n response.result = obj;\n }\n response.headers = res.message.headers;\n }\n catch (err) {\n // Invalid resource (contents not json); leaving result obj null\n }\n // note that 3xx redirects are handled by the http layer.\n if (statusCode > 299) {\n let msg;\n // if exception/error in body, attempt to get better error\n if (obj && obj.message) {\n msg = obj.message;\n }\n else if (contents && contents.length > 0) {\n // it may be the case that the exception is in the body message as string\n msg = contents;\n }\n else {\n msg = 'Failed request: (' + statusCode + ')';\n }\n let err = new HttpClientError(msg, statusCode);\n err.result = response.result;\n reject(err);\n }\n else {\n resolve(response);\n }\n });\n }\n}\nexports.HttpClient = HttpClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction getProxyUrl(reqUrl) {\n let usingSsl = reqUrl.protocol === 'https:';\n let proxyUrl;\n if (checkBypass(reqUrl)) {\n return proxyUrl;\n }\n let proxyVar;\n if (usingSsl) {\n proxyVar = process.env['https_proxy'] || process.env['HTTPS_PROXY'];\n }\n else {\n proxyVar = process.env['http_proxy'] || process.env['HTTP_PROXY'];\n }\n if (proxyVar) {\n proxyUrl = new URL(proxyVar);\n }\n return proxyUrl;\n}\nexports.getProxyUrl = getProxyUrl;\nfunction checkBypass(reqUrl) {\n if (!reqUrl.hostname) {\n return false;\n }\n let noProxy = process.env['no_proxy'] || process.env['NO_PROXY'] || '';\n if (!noProxy) {\n return false;\n }\n // Determine the request port\n let reqPort;\n if (reqUrl.port) {\n reqPort = Number(reqUrl.port);\n }\n else if (reqUrl.protocol === 'http:') {\n reqPort = 80;\n }\n else if (reqUrl.protocol === 'https:') {\n reqPort = 443;\n }\n // Format the request hostname and hostname with port\n let upperReqHosts = [reqUrl.hostname.toUpperCase()];\n if (typeof reqPort === 'number') {\n upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`);\n }\n // Compare request host against noproxy\n for (let upperNoProxyItem of noProxy\n .split(',')\n .map(x => x.trim().toUpperCase())\n .filter(x => x)) {\n if (upperReqHosts.some(x => x === upperNoProxyItem)) {\n return true;\n }\n }\n return false;\n}\nexports.checkBypass = checkBypass;\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { __awaiter, __generator } from \"tslib\";\nexport var deserializerMiddleware = function (options, deserializer) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var response, parsed;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, next(args)];\n case 1:\n response = (_a.sent()).response;\n return [4, deserializer(response, options)];\n case 2:\n parsed = _a.sent();\n return [2, {\n response: response,\n output: parsed,\n }];\n }\n });\n }); };\n };\n};\n","import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport var deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport var serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: function (commandStack) {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n","import { __assign, __awaiter, __generator } from \"tslib\";\nexport var serializerMiddleware = function (options, serializer) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var request;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, serializer(args.input, options)];\n case 1:\n request = _a.sent();\n return [2, next(__assign(__assign({}, args), { request: request }))];\n }\n });\n }); };\n };\n};\n","import { __extends } from \"tslib\";\nvar ProviderError = (function (_super) {\n __extends(ProviderError, _super);\n function ProviderError(message, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n var _this = _super.call(this, message) || this;\n _this.tryNextLink = tryNextLink;\n return _this;\n }\n ProviderError.from = function (error, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n Object.defineProperty(error, \"tryNextLink\", {\n value: tryNextLink,\n configurable: false,\n enumerable: false,\n writable: false,\n });\n return error;\n };\n return ProviderError;\n}(Error));\nexport { ProviderError };\nvar CredentialsProviderError = (function (_super) {\n __extends(CredentialsProviderError, _super);\n function CredentialsProviderError(message, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n var _this = _super.call(this, message) || this;\n _this.tryNextLink = tryNextLink;\n _this.name = \"CredentialsProviderError\";\n return _this;\n }\n CredentialsProviderError.from = function (error, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n Object.defineProperty(error, \"tryNextLink\", {\n value: tryNextLink,\n configurable: false,\n enumerable: false,\n writable: false,\n });\n return error;\n };\n return CredentialsProviderError;\n}(Error));\nexport { CredentialsProviderError };\n","import { __values } from \"tslib\";\nimport { ProviderError } from \"./ProviderError\";\nexport function chain() {\n var providers = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n providers[_i] = arguments[_i];\n }\n return function () {\n var e_1, _a;\n var promise = Promise.reject(new ProviderError(\"No providers in chain\"));\n var _loop_1 = function (provider) {\n promise = promise.catch(function (err) {\n if (err === null || err === void 0 ? void 0 : err.tryNextLink) {\n return provider();\n }\n throw err;\n });\n };\n try {\n for (var providers_1 = __values(providers), providers_1_1 = providers_1.next(); !providers_1_1.done; providers_1_1 = providers_1.next()) {\n var provider = providers_1_1.value;\n _loop_1(provider);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (providers_1_1 && !providers_1_1.done && (_a = providers_1.return)) _a.call(providers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return promise;\n };\n}\n","var SHORT_TO_HEX = {};\nvar HEX_TO_SHORT = {};\nfor (var i = 0; i < 256; i++) {\n var 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 var out = new Uint8Array(encoded.length / 2);\n for (var i = 0; i < encoded.length; i += 2) {\n var encodedByte = encoded.substr(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 var out = \"\";\n for (var i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n","export var fromStatic = function (staticValue) {\n return function () {\n return Promise.resolve(staticValue);\n };\n};\n","import { __awaiter, __generator } from \"tslib\";\nexport var memoize = function (provider, isExpired, requiresRefresh) {\n var resolved;\n var pending;\n var hasResult;\n var coalesceProvider = function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!pending) {\n pending = provider();\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, , 3, 4]);\n return [4, pending];\n case 2:\n resolved = _a.sent();\n hasResult = true;\n return [3, 4];\n case 3:\n pending = undefined;\n return [7];\n case 4: return [2, resolved];\n }\n });\n }); };\n if (isExpired === undefined) {\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!hasResult) return [3, 2];\n return [4, coalesceProvider()];\n case 1:\n resolved = _a.sent();\n _a.label = 2;\n case 2: return [2, resolved];\n }\n });\n }); };\n }\n var isConstant = false;\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!hasResult) return [3, 2];\n return [4, coalesceProvider()];\n case 1:\n resolved = _a.sent();\n _a.label = 2;\n case 2:\n if (isConstant) {\n return [2, resolved];\n }\n if (requiresRefresh && !requiresRefresh(resolved)) {\n isConstant = true;\n return [2, resolved];\n }\n if (!isExpired(resolved)) return [3, 4];\n return [4, coalesceProvider()];\n case 3:\n _a.sent();\n return [2, resolved];\n case 4: return [2, resolved];\n }\n });\n }); };\n};\n","export var ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nexport var CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nexport var AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nexport var SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nexport var EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nexport var SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nexport var TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nexport var REGION_SET_PARAM = \"X-Amz-Region-Set\";\nexport var AUTH_HEADER = \"authorization\";\nexport var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nexport var DATE_HEADER = \"date\";\nexport var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nexport var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nexport var SHA256_HEADER = \"x-amz-content-sha256\";\nexport var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nexport var HOST_HEADER = \"host\";\nexport var 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 var PROXY_HEADER_PATTERN = /^proxy-/;\nexport var SEC_HEADER_PATTERN = /^sec-/;\nexport var UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];\nexport var ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nexport var ALGORITHM_IDENTIFIER_V4A = \"AWS4-ECDSA-P256-SHA256\";\nexport var EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nexport var UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nexport var MAX_CACHE_SIZE = 50;\nexport var KEY_TYPE_IDENTIFIER = \"aws4_request\";\nexport var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n","import { __awaiter, __generator, __values } from \"tslib\";\nimport { toHex } from \"@aws-sdk/util-hex-encoding\";\nimport { KEY_TYPE_IDENTIFIER, MAX_CACHE_SIZE } from \"./constants\";\nvar signingKeyCache = {};\nvar cacheQueue = [];\nexport var createScope = function (shortDate, region, service) {\n return shortDate + \"/\" + region + \"/\" + service + \"/\" + KEY_TYPE_IDENTIFIER;\n};\nexport var getSigningKey = function (sha256Constructor, credentials, shortDate, region, service) { return __awaiter(void 0, void 0, void 0, function () {\n var credsHash, cacheKey, key, _a, _b, signable, e_1_1;\n var e_1, _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4, hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId)];\n case 1:\n credsHash = _d.sent();\n cacheKey = shortDate + \":\" + region + \":\" + service + \":\" + toHex(credsHash) + \":\" + credentials.sessionToken;\n if (cacheKey in signingKeyCache) {\n return [2, signingKeyCache[cacheKey]];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n key = \"AWS4\" + credentials.secretAccessKey;\n _d.label = 2;\n case 2:\n _d.trys.push([2, 7, 8, 9]);\n _a = __values([shortDate, region, service, KEY_TYPE_IDENTIFIER]), _b = _a.next();\n _d.label = 3;\n case 3:\n if (!!_b.done) return [3, 6];\n signable = _b.value;\n return [4, hmac(sha256Constructor, key, signable)];\n case 4:\n key = _d.sent();\n _d.label = 5;\n case 5:\n _b = _a.next();\n return [3, 3];\n case 6: return [3, 9];\n case 7:\n e_1_1 = _d.sent();\n e_1 = { error: e_1_1 };\n return [3, 9];\n case 8:\n try {\n if (_b && !_b.done && (_c = _a.return)) _c.call(_a);\n }\n finally { if (e_1) throw e_1.error; }\n return [7];\n case 9: return [2, (signingKeyCache[cacheKey] = key)];\n }\n });\n}); };\nexport var clearCredentialCache = function () {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach(function (cacheKey) {\n delete signingKeyCache[cacheKey];\n });\n};\nvar hmac = function (ctor, secret, data) {\n var hash = new ctor(secret);\n hash.update(data);\n return hash.digest();\n};\n","import { __values } from \"tslib\";\nimport { ALWAYS_UNSIGNABLE_HEADERS, PROXY_HEADER_PATTERN, SEC_HEADER_PATTERN } from \"./constants\";\nexport var getCanonicalHeaders = function (_a, unsignableHeaders, signableHeaders) {\n var e_1, _b;\n var headers = _a.headers;\n var canonical = {};\n try {\n for (var _c = __values(Object.keys(headers).sort()), _d = _c.next(); !_d.done; _d = _c.next()) {\n var headerName = _d.value;\n var canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS ||\n (unsignableHeaders === null || unsignableHeaders === void 0 ? void 0 : 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 }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_b = _c.return)) _b.call(_c);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return canonical;\n};\n","export var escapeUri = function (uri) {\n return encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\n};\nvar hexEncode = function (c) { return \"%\" + c.charCodeAt(0).toString(16).toUpperCase(); };\n","export var isArrayBuffer = function (arg) {\n return (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n};\n","import { __awaiter, __generator, __values } from \"tslib\";\nimport { isArrayBuffer } from \"@aws-sdk/is-array-buffer\";\nimport { toHex } from \"@aws-sdk/util-hex-encoding\";\nimport { SHA256_HEADER, UNSIGNED_PAYLOAD } from \"./constants\";\nexport var getPayloadHash = function (_a, hashConstructor) {\n var headers = _a.headers, body = _a.body;\n return __awaiter(void 0, void 0, void 0, function () {\n var _b, _c, headerName, hashCtor, _d;\n var e_1, _e;\n return __generator(this, function (_f) {\n switch (_f.label) {\n case 0:\n try {\n for (_b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n headerName = _c.value;\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return [2, headers[headerName]];\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_e = _b.return)) _e.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n if (!(body == undefined)) return [3, 1];\n return [2, \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\"];\n case 1:\n if (!(typeof body === \"string\" || ArrayBuffer.isView(body) || isArrayBuffer(body))) return [3, 3];\n hashCtor = new hashConstructor();\n hashCtor.update(body);\n _d = toHex;\n return [4, hashCtor.digest()];\n case 2: return [2, _d.apply(void 0, [_f.sent()])];\n case 3: return [2, UNSIGNED_PAYLOAD];\n }\n });\n });\n};\n","import { __assign, __read, __rest, __spreadArray } from \"tslib\";\nexport var cloneRequest = function (_a) {\n var headers = _a.headers, query = _a.query, rest = __rest(_a, [\"headers\", \"query\"]);\n return (__assign(__assign({}, rest), { headers: __assign({}, headers), query: query ? cloneQuery(query) : undefined }));\n};\nexport var cloneQuery = function (query) {\n return Object.keys(query).reduce(function (carry, paramName) {\n var _a;\n var param = query[paramName];\n return __assign(__assign({}, carry), (_a = {}, _a[paramName] = Array.isArray(param) ? __spreadArray([], __read(param)) : param, _a));\n }, {});\n};\n","import { __values } from \"tslib\";\nimport { cloneRequest } from \"./cloneRequest\";\nimport { GENERATED_HEADERS } from \"./constants\";\nexport var prepareRequest = function (request) {\n var e_1, _a;\n request = typeof request.clone === \"function\" ? request.clone() : cloneRequest(request);\n try {\n for (var _b = __values(Object.keys(request.headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return request;\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { toHex } from \"@aws-sdk/util-hex-encoding\";\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 { hasHeader } from \"./headerUtil\";\nimport { moveHeadersToQuery } from \"./moveHeadersToQuery\";\nimport { normalizeCredentialsProvider, normalizeRegionProvider } from \"./normalizeProvider\";\nimport { prepareRequest } from \"./prepareRequest\";\nimport { iso8601 } from \"./utilDate\";\nvar SignatureV4 = (function () {\n function SignatureV4(_a) {\n var applyChecksum = _a.applyChecksum, credentials = _a.credentials, region = _a.region, service = _a.service, sha256 = _a.sha256, _b = _a.uriEscapePath, uriEscapePath = _b === void 0 ? true : _b;\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = normalizeRegionProvider(region);\n this.credentialProvider = normalizeCredentialsProvider(credentials);\n }\n SignatureV4.prototype.presign = function (originalRequest, options) {\n if (options === void 0) { options = {}; }\n return __awaiter(this, void 0, void 0, function () {\n var _a, signingDate, _b, expiresIn, unsignableHeaders, unhoistableHeaders, signableHeaders, signingRegion, signingService, credentials, region, _c, _d, longDate, shortDate, scope, request, canonicalHeaders, _e, _f, _g, _h, _j, _k;\n return __generator(this, function (_l) {\n switch (_l.label) {\n case 0:\n _a = options.signingDate, signingDate = _a === void 0 ? new Date() : _a, _b = options.expiresIn, expiresIn = _b === void 0 ? 3600 : _b, unsignableHeaders = options.unsignableHeaders, unhoistableHeaders = options.unhoistableHeaders, signableHeaders = options.signableHeaders, signingRegion = options.signingRegion, signingService = options.signingService;\n return [4, this.credentialProvider()];\n case 1:\n credentials = _l.sent();\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 2];\n _c = signingRegion;\n return [3, 4];\n case 2: return [4, this.regionProvider()];\n case 3:\n _c = (_l.sent());\n _l.label = 4;\n case 4:\n region = _c;\n _d = formatDate(signingDate), longDate = _d.longDate, shortDate = _d.shortDate;\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return [2, Promise.reject(\"Signature version 4 presigned URLs\" + \" must have an expiration date less than one week in\" + \" the future\")];\n }\n scope = createScope(shortDate, region, signingService !== null && signingService !== void 0 ? signingService : this.service);\n request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders: unhoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = credentials.accessKeyId + \"/\" + scope;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);\n _e = request.query;\n _f = SIGNATURE_QUERY_PARAM;\n _g = this.getSignature;\n _h = [longDate,\n scope,\n this.getSigningKey(credentials, region, shortDate, signingService)];\n _j = this.createCanonicalRequest;\n _k = [request, canonicalHeaders];\n return [4, getPayloadHash(originalRequest, this.sha256)];\n case 5: return [4, _g.apply(this, _h.concat([_j.apply(this, _k.concat([_l.sent()]))]))];\n case 6:\n _e[_f] = _l.sent();\n return [2, request];\n }\n });\n });\n };\n SignatureV4.prototype.sign = function (toSign, options) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (typeof toSign === \"string\") {\n return [2, this.signString(toSign, options)];\n }\n else if (toSign.headers && toSign.payload) {\n return [2, this.signEvent(toSign, options)];\n }\n else {\n return [2, this.signRequest(toSign, options)];\n }\n return [2];\n });\n });\n };\n SignatureV4.prototype.signEvent = function (_a, _b) {\n var headers = _a.headers, payload = _a.payload;\n var _c = _b.signingDate, signingDate = _c === void 0 ? new Date() : _c, priorSignature = _b.priorSignature, signingRegion = _b.signingRegion, signingService = _b.signingService;\n return __awaiter(this, void 0, void 0, function () {\n var region, _d, _e, shortDate, longDate, scope, hashedPayload, hash, hashedHeaders, _f, stringToSign;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 1];\n _d = signingRegion;\n return [3, 3];\n case 1: return [4, this.regionProvider()];\n case 2:\n _d = (_g.sent());\n _g.label = 3;\n case 3:\n region = _d;\n _e = formatDate(signingDate), shortDate = _e.shortDate, longDate = _e.longDate;\n scope = createScope(shortDate, region, signingService !== null && signingService !== void 0 ? signingService : this.service);\n return [4, getPayloadHash({ headers: {}, body: payload }, this.sha256)];\n case 4:\n hashedPayload = _g.sent();\n hash = new this.sha256();\n hash.update(headers);\n _f = toHex;\n return [4, hash.digest()];\n case 5:\n hashedHeaders = _f.apply(void 0, [_g.sent()]);\n stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload,\n ].join(\"\\n\");\n return [2, this.signString(stringToSign, { signingDate: signingDate, signingRegion: region, signingService: signingService })];\n }\n });\n });\n };\n SignatureV4.prototype.signString = function (stringToSign, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.signingDate, signingDate = _c === void 0 ? new Date() : _c, signingRegion = _b.signingRegion, signingService = _b.signingService;\n return __awaiter(this, void 0, void 0, function () {\n var credentials, region, _d, shortDate, hash, _e, _f, _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0: return [4, this.credentialProvider()];\n case 1:\n credentials = _h.sent();\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 2];\n _d = signingRegion;\n return [3, 4];\n case 2: return [4, this.regionProvider()];\n case 3:\n _d = (_h.sent());\n _h.label = 4;\n case 4:\n region = _d;\n shortDate = formatDate(signingDate).shortDate;\n _f = (_e = this.sha256).bind;\n return [4, this.getSigningKey(credentials, region, shortDate, signingService)];\n case 5:\n hash = new (_f.apply(_e, [void 0, _h.sent()]))();\n hash.update(stringToSign);\n _g = toHex;\n return [4, hash.digest()];\n case 6: return [2, _g.apply(void 0, [_h.sent()])];\n }\n });\n });\n };\n SignatureV4.prototype.signRequest = function (requestToSign, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.signingDate, signingDate = _c === void 0 ? new Date() : _c, signableHeaders = _b.signableHeaders, unsignableHeaders = _b.unsignableHeaders, signingRegion = _b.signingRegion, signingService = _b.signingService;\n return __awaiter(this, void 0, void 0, function () {\n var credentials, region, _d, request, _e, longDate, shortDate, scope, payloadHash, canonicalHeaders, signature;\n return __generator(this, function (_f) {\n switch (_f.label) {\n case 0: return [4, this.credentialProvider()];\n case 1:\n credentials = _f.sent();\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 2];\n _d = signingRegion;\n return [3, 4];\n case 2: return [4, this.regionProvider()];\n case 3:\n _d = (_f.sent());\n _f.label = 4;\n case 4:\n region = _d;\n request = prepareRequest(requestToSign);\n _e = formatDate(signingDate), longDate = _e.longDate, shortDate = _e.shortDate;\n scope = createScope(shortDate, region, signingService !== null && signingService !== void 0 ? signingService : this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n return [4, getPayloadHash(request, this.sha256)];\n case 5:\n payloadHash = _f.sent();\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n return [4, this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash))];\n case 6:\n signature = _f.sent();\n request.headers[AUTH_HEADER] =\n ALGORITHM_IDENTIFIER + \" \" +\n (\"Credential=\" + credentials.accessKeyId + \"/\" + scope + \", \") +\n (\"SignedHeaders=\" + getCanonicalHeaderList(canonicalHeaders) + \", \") +\n (\"Signature=\" + signature);\n return [2, request];\n }\n });\n });\n };\n SignatureV4.prototype.createCanonicalRequest = function (request, canonicalHeaders, payloadHash) {\n var sortedHeaders = Object.keys(canonicalHeaders).sort();\n return request.method + \"\\n\" + this.getCanonicalPath(request) + \"\\n\" + getCanonicalQuery(request) + \"\\n\" + sortedHeaders.map(function (name) { return name + \":\" + canonicalHeaders[name]; }).join(\"\\n\") + \"\\n\\n\" + sortedHeaders.join(\";\") + \"\\n\" + payloadHash;\n };\n SignatureV4.prototype.createStringToSign = function (longDate, credentialScope, canonicalRequest) {\n return __awaiter(this, void 0, void 0, function () {\n var hash, hashedRequest;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n hash = new this.sha256();\n hash.update(canonicalRequest);\n return [4, hash.digest()];\n case 1:\n hashedRequest = _a.sent();\n return [2, ALGORITHM_IDENTIFIER + \"\\n\" + longDate + \"\\n\" + credentialScope + \"\\n\" + toHex(hashedRequest)];\n }\n });\n });\n };\n SignatureV4.prototype.getCanonicalPath = function (_a) {\n var path = _a.path;\n if (this.uriEscapePath) {\n var doubleEncoded = encodeURIComponent(path.replace(/^\\//, \"\"));\n return \"/\" + doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n };\n SignatureV4.prototype.getSignature = function (longDate, credentialScope, keyPromise, canonicalRequest) {\n return __awaiter(this, void 0, void 0, function () {\n var stringToSign, hash, _a, _b, _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4, this.createStringToSign(longDate, credentialScope, canonicalRequest)];\n case 1:\n stringToSign = _d.sent();\n _b = (_a = this.sha256).bind;\n return [4, keyPromise];\n case 2:\n hash = new (_b.apply(_a, [void 0, _d.sent()]))();\n hash.update(stringToSign);\n _c = toHex;\n return [4, hash.digest()];\n case 3: return [2, _c.apply(void 0, [_d.sent()])];\n }\n });\n });\n };\n SignatureV4.prototype.getSigningKey = function (credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n };\n return SignatureV4;\n}());\nexport { SignatureV4 };\nvar formatDate = function (now) {\n var longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate: longDate,\n shortDate: longDate.substr(0, 8),\n };\n};\nvar getCanonicalHeaderList = function (headers) { return Object.keys(headers).sort().join(\";\"); };\n","export var normalizeRegionProvider = function (region) {\n if (typeof region === \"string\") {\n var promisified_1 = Promise.resolve(region);\n return function () { return promisified_1; };\n }\n else {\n return region;\n }\n};\nexport var normalizeCredentialsProvider = function (credentials) {\n if (typeof credentials === \"object\") {\n var promisified_2 = Promise.resolve(credentials);\n return function () { return promisified_2; };\n }\n else {\n return credentials;\n }\n};\n","import { __assign, __values } from \"tslib\";\nimport { cloneRequest } from \"./cloneRequest\";\nexport var moveHeadersToQuery = function (request, options) {\n var e_1, _a;\n var _b;\n if (options === void 0) { options = {}; }\n var _c = typeof request.clone === \"function\" ? request.clone() : cloneRequest(request), headers = _c.headers, _d = _c.query, query = _d === void 0 ? {} : _d;\n try {\n for (var _e = __values(Object.keys(headers)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var name = _f.value;\n var lname = name.toLowerCase();\n if (lname.substr(0, 6) === \"x-amz-\" && !((_b = options.unhoistableHeaders) === null || _b === void 0 ? void 0 : _b.has(lname))) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_a = _e.return)) _a.call(_e);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return __assign(__assign({}, request), { headers: headers, query: query });\n};\n","import { __values } from \"tslib\";\nexport var hasHeader = function (soughtHeader, headers) {\n var e_1, _a;\n soughtHeader = soughtHeader.toLowerCase();\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return false;\n};\nexport var getHeaderValue = function (soughtHeader, headers) {\n var e_2, _a;\n soughtHeader = soughtHeader.toLowerCase();\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (soughtHeader === headerName.toLowerCase()) {\n return headers[headerName];\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_2) throw e_2.error; }\n }\n return undefined;\n};\nexport var deleteHeader = function (soughtHeader, headers) {\n var e_3, _a;\n soughtHeader = soughtHeader.toLowerCase();\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (soughtHeader === headerName.toLowerCase()) {\n delete headers[headerName];\n }\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_3) throw e_3.error; }\n }\n};\n","import { __values } from \"tslib\";\nimport { escapeUri } from \"@aws-sdk/util-uri-escape\";\nimport { SIGNATURE_HEADER } from \"./constants\";\nexport var getCanonicalQuery = function (_a) {\n var e_1, _b;\n var _c = _a.query, query = _c === void 0 ? {} : _c;\n var keys = [];\n var serialized = {};\n var _loop_1 = function (key) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n return \"continue\";\n }\n keys.push(key);\n var value = query[key];\n if (typeof value === \"string\") {\n serialized[key] = escapeUri(key) + \"=\" + escapeUri(value);\n }\n else if (Array.isArray(value)) {\n serialized[key] = value\n .slice(0)\n .sort()\n .reduce(function (encoded, value) { return encoded.concat([escapeUri(key) + \"=\" + escapeUri(value)]); }, [])\n .join(\"&\");\n }\n };\n try {\n for (var _d = __values(Object.keys(query).sort()), _e = _d.next(); !_e.done; _e = _d.next()) {\n var key = _e.value;\n _loop_1(key);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_e && !_e.done && (_b = _d.return)) _b.call(_d);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return keys\n .map(function (key) { return serialized[key]; })\n .filter(function (serialized) { return serialized; })\n .join(\"&\");\n};\n","export var iso8601 = function (time) {\n return toDate(time)\n .toISOString()\n .replace(/\\.\\d{3}Z$/, \"Z\");\n};\nexport var toDate = function (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 { __assign, __awaiter, __generator, __read } from \"tslib\";\nimport { memoize } from \"@aws-sdk/property-provider\";\nimport { SignatureV4 } from \"@aws-sdk/signature-v4\";\nvar CREDENTIAL_EXPIRE_WINDOW = 300000;\nexport var resolveAwsAuthConfig = function (input) {\n var normalizedCreds = input.credentials\n ? normalizeCredentialProvider(input.credentials)\n : input.credentialDefaultProvider(input);\n var _a = input.signingEscapePath, signingEscapePath = _a === void 0 ? true : _a, _b = input.systemClockOffset, systemClockOffset = _b === void 0 ? input.systemClockOffset || 0 : _b, sha256 = input.sha256;\n var signer;\n if (input.signer) {\n signer = normalizeProvider(input.signer);\n }\n else {\n signer = function () {\n return normalizeProvider(input.region)()\n .then(function (region) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, _b, _c;\n var _d;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n _b = (_a = input).regionInfoProvider;\n _c = [region];\n _d = {};\n return [4, input.useFipsEndpoint()];\n case 1:\n _d.useFipsEndpoint = _e.sent();\n return [4, input.useDualstackEndpoint()];\n case 2: return [4, _b.apply(_a, _c.concat([(_d.useDualstackEndpoint = _e.sent(),\n _d)]))];\n case 3: return [2, [\n (_e.sent()) || {},\n region\n ]];\n }\n });\n }); })\n .then(function (_a) {\n var _b = __read(_a, 2), regionInfo = _b[0], region = _b[1];\n var signingRegion = regionInfo.signingRegion, signingService = regionInfo.signingService;\n input.signingRegion = input.signingRegion || signingRegion || region;\n input.signingName = input.signingName || signingService || input.serviceId;\n var params = __assign(__assign({}, input), { credentials: normalizedCreds, region: input.signingRegion, service: input.signingName, sha256: sha256, uriEscapePath: signingEscapePath });\n var signerConstructor = input.signerConstructor || SignatureV4;\n return new signerConstructor(params);\n });\n };\n }\n return __assign(__assign({}, input), { systemClockOffset: systemClockOffset, signingEscapePath: signingEscapePath, credentials: normalizedCreds, signer: signer });\n};\nexport var resolveSigV4AuthConfig = function (input) {\n var normalizedCreds = input.credentials\n ? normalizeCredentialProvider(input.credentials)\n : input.credentialDefaultProvider(input);\n var _a = input.signingEscapePath, signingEscapePath = _a === void 0 ? true : _a, _b = input.systemClockOffset, systemClockOffset = _b === void 0 ? input.systemClockOffset || 0 : _b, sha256 = input.sha256;\n var signer;\n if (input.signer) {\n signer = normalizeProvider(input.signer);\n }\n else {\n signer = normalizeProvider(new SignatureV4({\n credentials: normalizedCreds,\n region: input.region,\n service: input.signingName,\n sha256: sha256,\n uriEscapePath: signingEscapePath,\n }));\n }\n return __assign(__assign({}, input), { systemClockOffset: systemClockOffset, signingEscapePath: signingEscapePath, credentials: normalizedCreds, signer: signer });\n};\nvar normalizeProvider = function (input) {\n if (typeof input === \"object\") {\n var promisified_1 = Promise.resolve(input);\n return function () { return promisified_1; };\n }\n return input;\n};\nvar normalizeCredentialProvider = function (credentials) {\n if (typeof credentials === \"function\") {\n return memoize(credentials, function (credentials) {\n return credentials.expiration !== undefined &&\n credentials.expiration.getTime() - Date.now() < CREDENTIAL_EXPIRE_WINDOW;\n }, function (credentials) { return credentials.expiration !== undefined; });\n }\n return normalizeProvider(credentials);\n};\n","import { __assign, __read, __spreadArray } from \"tslib\";\nvar HttpRequest = (function () {\n function HttpRequest(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.substr(-1) !== \":\"\n ? options.protocol + \":\"\n : options.protocol\n : \"https:\";\n this.path = options.path ? (options.path.charAt(0) !== \"/\" ? \"/\" + options.path : options.path) : \"/\";\n }\n HttpRequest.isInstance = function (request) {\n if (!request)\n return false;\n var 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 HttpRequest.prototype.clone = function () {\n var cloned = new HttpRequest(__assign(__assign({}, this), { headers: __assign({}, this.headers) }));\n if (cloned.query)\n cloned.query = cloneQuery(cloned.query);\n return cloned;\n };\n return HttpRequest;\n}());\nexport { HttpRequest };\nfunction cloneQuery(query) {\n return Object.keys(query).reduce(function (carry, paramName) {\n var _a;\n var param = query[paramName];\n return __assign(__assign({}, carry), (_a = {}, _a[paramName] = Array.isArray(param) ? __spreadArray([], __read(param)) : param, _a));\n }, {});\n}\n","var HttpResponse = (function () {\n function HttpResponse(options) {\n this.statusCode = options.statusCode;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n HttpResponse.isInstance = function (response) {\n if (!response)\n return false;\n var resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n };\n return HttpResponse;\n}());\nexport { HttpResponse };\n","export var getSkewCorrectedDate = function (systemClockOffset) { return new Date(Date.now() + systemClockOffset); };\n","import { isClockSkewed } from \"./isClockSkewed\";\nexport var getUpdatedSystemClockOffset = function (clockTime, currentSystemClockOffset) {\n var clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n","import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport var isClockSkewed = function (clockTime, systemClockOffset) {\n return Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { getSkewCorrectedDate } from \"./utils/getSkewCorrectedDate\";\nimport { getUpdatedSystemClockOffset } from \"./utils/getUpdatedSystemClockOffset\";\nexport var awsAuthMiddleware = function (options) {\n return function (next, context) {\n return function (args) {\n return __awaiter(this, void 0, void 0, function () {\n var signer, output, _a, _b, headers, dateHeader;\n var _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n if (!HttpRequest.isInstance(args.request))\n return [2, next(args)];\n return [4, options.signer()];\n case 1:\n signer = _d.sent();\n _a = next;\n _b = [__assign({}, args)];\n _c = {};\n return [4, signer.sign(args.request, {\n signingDate: getSkewCorrectedDate(options.systemClockOffset),\n signingRegion: context[\"signing_region\"],\n signingService: context[\"signing_service\"],\n })];\n case 2: return [4, _a.apply(void 0, [__assign.apply(void 0, _b.concat([(_c.request = _d.sent(), _c)]))]).catch(function (error) {\n if (error.ServerTime) {\n options.systemClockOffset = getUpdatedSystemClockOffset(error.ServerTime, options.systemClockOffset);\n }\n throw error;\n })];\n case 3:\n output = _d.sent();\n headers = output.response.headers;\n dateHeader = headers && (headers.date || headers.Date);\n if (dateHeader) {\n options.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, options.systemClockOffset);\n }\n return [2, output];\n }\n });\n });\n };\n };\n};\nexport var awsAuthMiddlewareOptions = {\n name: \"awsAuthMiddleware\",\n tags: [\"SIGNATURE\", \"AWSAUTH\"],\n relation: \"after\",\n toMiddleware: \"retryMiddleware\",\n override: true,\n};\nexport var getAwsAuthPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.addRelativeTo(awsAuthMiddleware(options), awsAuthMiddlewareOptions);\n },\n}); };\nexport var getSigV4AuthPlugin = getAwsAuthPlugin;\n","import { __assign, __read, __spreadArray, __values } from \"tslib\";\nexport var constructStack = function () {\n var absoluteEntries = [];\n var relativeEntries = [];\n var entriesNameSet = new Set();\n var sort = function (entries) {\n return entries.sort(function (a, b) {\n return stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"];\n });\n };\n var removeByName = function (toRemove) {\n var isRemoved = false;\n var filterCb = function (entry) {\n if (entry.name && entry.name === toRemove) {\n isRemoved = true;\n entriesNameSet.delete(toRemove);\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n var removeByReference = function (toRemove) {\n var isRemoved = false;\n var filterCb = function (entry) {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n if (entry.name)\n entriesNameSet.delete(entry.name);\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n var cloneTo = function (toStack) {\n absoluteEntries.forEach(function (entry) {\n toStack.add(entry.middleware, __assign({}, entry));\n });\n relativeEntries.forEach(function (entry) {\n toStack.addRelativeTo(entry.middleware, __assign({}, entry));\n });\n return toStack;\n };\n var expandRelativeMiddlewareList = function (from) {\n var expandedMiddlewareList = [];\n from.before.forEach(function (entry) {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push.apply(expandedMiddlewareList, __spreadArray([], __read(expandRelativeMiddlewareList(entry))));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach(function (entry) {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push.apply(expandedMiddlewareList, __spreadArray([], __read(expandRelativeMiddlewareList(entry))));\n }\n });\n return expandedMiddlewareList;\n };\n var getMiddlewareList = function () {\n var normalizedAbsoluteEntries = [];\n var normalizedRelativeEntries = [];\n var normalizedEntriesNameMap = {};\n absoluteEntries.forEach(function (entry) {\n var normalizedEntry = __assign(__assign({}, entry), { before: [], after: [] });\n if (normalizedEntry.name)\n normalizedEntriesNameMap[normalizedEntry.name] = normalizedEntry;\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach(function (entry) {\n var normalizedEntry = __assign(__assign({}, entry), { before: [], after: [] });\n if (normalizedEntry.name)\n normalizedEntriesNameMap[normalizedEntry.name] = normalizedEntry;\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach(function (entry) {\n if (entry.toMiddleware) {\n var toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n throw new Error(entry.toMiddleware + \" is not found when adding \" + (entry.name || \"anonymous\") + \" 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 var mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce(function (wholeList, expendedMiddlewareList) {\n wholeList.push.apply(wholeList, __spreadArray([], __read(expendedMiddlewareList)));\n return wholeList;\n }, []);\n return mainChain.map(function (entry) { return entry.middleware; });\n };\n var stack = {\n add: function (middleware, options) {\n if (options === void 0) { options = {}; }\n var name = options.name, override = options.override;\n var entry = __assign({ step: \"initialize\", priority: \"normal\", middleware: middleware }, options);\n if (name) {\n if (entriesNameSet.has(name)) {\n if (!override)\n throw new Error(\"Duplicate middleware name '\" + name + \"'\");\n var toOverrideIndex = absoluteEntries.findIndex(function (entry) { return entry.name === name; });\n var toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || toOverride.priority !== entry.priority) {\n throw new Error(\"\\\"\" + name + \"\\\" middleware with \" + toOverride.priority + \" priority in \" + toOverride.step + \" step cannot be \" +\n (\"overridden by same-name middleware with \" + entry.priority + \" priority in \" + entry.step + \" step.\"));\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n entriesNameSet.add(name);\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: function (middleware, options) {\n var name = options.name, override = options.override;\n var entry = __assign({ middleware: middleware }, options);\n if (name) {\n if (entriesNameSet.has(name)) {\n if (!override)\n throw new Error(\"Duplicate middleware name '\" + name + \"'\");\n var toOverrideIndex = relativeEntries.findIndex(function (entry) { return entry.name === name; });\n var toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(\"\\\"\" + name + \"\\\" middleware \" + toOverride.relation + \" \\\"\" + toOverride.toMiddleware + \"\\\" middleware cannot be overridden \" +\n (\"by same-name middleware \" + entry.relation + \" \\\"\" + entry.toMiddleware + \"\\\" middleware.\"));\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n entriesNameSet.add(name);\n }\n relativeEntries.push(entry);\n },\n clone: function () { return cloneTo(constructStack()); },\n use: function (plugin) {\n plugin.applyToStack(stack);\n },\n remove: function (toRemove) {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: function (toRemove) {\n var isRemoved = false;\n var filterCb = function (entry) {\n var tags = entry.tags, name = entry.name;\n if (tags && tags.includes(toRemove)) {\n if (name)\n entriesNameSet.delete(name);\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: function (from) {\n var cloned = cloneTo(constructStack());\n cloned.use(from);\n return cloned;\n },\n applyToStack: cloneTo,\n resolve: function (handler, context) {\n var e_1, _a;\n try {\n for (var _b = __values(getMiddlewareList().reverse()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var middleware = _c.value;\n handler = middleware(handler, context);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return handler;\n },\n };\n return stack;\n};\nvar stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nvar priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n","import { constructStack } from \"@aws-sdk/middleware-stack\";\nvar Client = (function () {\n function Client(config) {\n this.middlewareStack = constructStack();\n this.config = config;\n }\n Client.prototype.send = function (command, optionsOrCb, cb) {\n var options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n var callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n var handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n if (callback) {\n handler(command)\n .then(function (result) { return callback(null, result.output); }, function (err) { return callback(err); })\n .catch(function () { });\n }\n else {\n return handler(command).then(function (result) { return result.output; });\n }\n };\n Client.prototype.destroy = function () {\n if (this.config.requestHandler.destroy)\n this.config.requestHandler.destroy();\n };\n return Client;\n}());\nexport { Client };\n","import { constructStack } from \"@aws-sdk/middleware-stack\";\nvar Command = (function () {\n function Command() {\n this.middlewareStack = constructStack();\n }\n return Command;\n}());\nexport { Command };\n","export var SENSITIVE_STRING = \"***SensitiveInformation***\";\n","import { __read } from \"tslib\";\nexport var parseBoolean = function (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 var expectBoolean = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(\"Expected boolean, got \" + typeof value);\n};\nexport var expectNumber = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(\"Expected number, got \" + typeof value);\n};\nvar MAX_FLOAT = Math.ceil(Math.pow(2, 127) * (2 - Math.pow(2, -23)));\nexport var expectFloat32 = function (value) {\n var 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 var expectLong = function (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);\n};\nexport var expectInt = expectLong;\nexport var expectInt32 = function (value) { return expectSizedInt(value, 32); };\nexport var expectShort = function (value) { return expectSizedInt(value, 16); };\nexport var expectByte = function (value) { return expectSizedInt(value, 8); };\nvar expectSizedInt = function (value, size) {\n var 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};\nvar castInt = function (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 var expectNonNull = function (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 var expectObject = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n throw new TypeError(\"Expected object, got \" + typeof value);\n};\nexport var expectString = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n return value;\n }\n throw new TypeError(\"Expected string, got \" + typeof value);\n};\nexport var expectUnion = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n var asObject = expectObject(value);\n var setKeys = Object.entries(asObject)\n .filter(function (_a) {\n var _b = __read(_a, 2), _ = _b[0], v = _b[1];\n return v !== null && v !== undefined;\n })\n .map(function (_a) {\n var _b = __read(_a, 2), k = _b[0], _ = _b[1];\n return k;\n });\n if (setKeys.length === 0) {\n throw new TypeError(\"Unions must have exactly one non-null member\");\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 var strictParseDouble = function (value) {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n};\nexport var strictParseFloat = strictParseDouble;\nexport var strictParseFloat32 = function (value) {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n};\nvar NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nvar parseNumber = function (value) {\n var 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 var limitedParseDouble = function (value) {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n};\nexport var handleFloat = limitedParseDouble;\nexport var limitedParseFloat = limitedParseDouble;\nexport var limitedParseFloat32 = function (value) {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n};\nvar parseFloatString = function (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 var strictParseLong = function (value) {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n};\nexport var strictParseInt = strictParseLong;\nexport var strictParseInt32 = function (value) {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n};\nexport var strictParseShort = function (value) {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n};\nexport var strictParseByte = function (value) {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n};\n","import { __read } from \"tslib\";\nimport { strictParseByte, strictParseDouble, strictParseFloat32, strictParseShort } from \"./parse-utils\";\nvar DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nvar MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport function dateToUtcString(date) {\n var year = date.getUTCFullYear();\n var month = date.getUTCMonth();\n var dayOfWeek = date.getUTCDay();\n var dayOfMonthInt = date.getUTCDate();\n var hoursInt = date.getUTCHours();\n var minutesInt = date.getUTCMinutes();\n var secondsInt = date.getUTCSeconds();\n var dayOfMonthString = dayOfMonthInt < 10 ? \"0\" + dayOfMonthInt : \"\" + dayOfMonthInt;\n var hoursString = hoursInt < 10 ? \"0\" + hoursInt : \"\" + hoursInt;\n var minutesString = minutesInt < 10 ? \"0\" + minutesInt : \"\" + minutesInt;\n var secondsString = secondsInt < 10 ? \"0\" + secondsInt : \"\" + secondsInt;\n return DAYS[dayOfWeek] + \", \" + dayOfMonthString + \" \" + MONTHS[month] + \" \" + year + \" \" + hoursString + \":\" + minutesString + \":\" + secondsString + \" GMT\";\n}\nvar RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nexport var parseRfc3339DateTime = function (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 var match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n var _a = __read(match, 8), _ = _a[0], yearStr = _a[1], monthStr = _a[2], dayStr = _a[3], hours = _a[4], minutes = _a[5], seconds = _a[6], fractionalMilliseconds = _a[7];\n var year = strictParseShort(stripLeadingZeroes(yearStr));\n var month = parseDateValue(monthStr, \"month\", 1, 12);\n var day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours: hours, minutes: minutes, seconds: seconds, fractionalMilliseconds: fractionalMilliseconds });\n};\nvar 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{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nvar 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{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nvar 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{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nexport var parseRfc7231DateTime = function (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 var match = IMF_FIXDATE.exec(value);\n if (match) {\n var _a = __read(match, 8), _1 = _a[0], dayStr = _a[1], monthStr = _a[2], yearStr = _a[3], hours = _a[4], minutes = _a[5], seconds = _a[6], fractionalMilliseconds = _a[7];\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours: hours, minutes: minutes, seconds: seconds, fractionalMilliseconds: fractionalMilliseconds });\n }\n match = RFC_850_DATE.exec(value);\n if (match) {\n var _b = __read(match, 8), _2 = _b[0], dayStr = _b[1], monthStr = _b[2], yearStr = _b[3], hours = _b[4], minutes = _b[5], seconds = _b[6], fractionalMilliseconds = _b[7];\n return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours: hours,\n minutes: minutes,\n seconds: seconds,\n fractionalMilliseconds: fractionalMilliseconds,\n }));\n }\n match = ASC_TIME.exec(value);\n if (match) {\n var _c = __read(match, 8), _3 = _c[0], monthStr = _c[1], dayStr = _c[2], hours = _c[3], minutes = _c[4], seconds = _c[5], fractionalMilliseconds = _c[6], yearStr = _c[7];\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours: hours, minutes: minutes, seconds: seconds, fractionalMilliseconds: fractionalMilliseconds });\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nexport var parseEpochTimestamp = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n var valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n }\n else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(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};\nvar buildDate = function (year, month, day, time) {\n var 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};\nvar parseTwoDigitYear = function (value) {\n var thisYear = new Date().getUTCFullYear();\n var valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n};\nvar FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nvar adjustRfc850Year = function (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};\nvar parseMonthByShortName = function (value) {\n var monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(\"Invalid month: \" + value);\n }\n return monthIdx + 1;\n};\nvar DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nvar validateDayOfMonth = function (year, month, day) {\n var 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};\nvar isLeapYear = function (year) {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nvar parseDateValue = function (value, type, lower, upper) {\n var 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};\nvar parseMilliseconds = function (value) {\n if (value === null || value === undefined) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1000;\n};\nvar stripLeadingZeroes = function (value) {\n var 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","var warningEmitted = false;\nexport var emitWarningIfUnsupportedVersion = function (version) {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 12) {\n warningEmitted = true;\n process.emitWarning(\"The AWS SDK for JavaScript (v3) will\\n\" +\n (\"no longer support Node.js \" + version + \" as of January 1, 2022.\\n\") +\n \"To continue receiving updates to AWS services, bug fixes, and security\\n\" +\n \"updates please upgrade to Node.js 12.x or later.\\n\\n\" +\n \"More information can be found at: https://a.co/1l6FLnu\", \"NodeDeprecationWarning\");\n }\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","export var getValueFromTextNode = function (obj) {\n var textNodeName = \"#text\";\n for (var 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","import { __assign } from \"tslib\";\nexport var AssumedRoleUser;\n(function (AssumedRoleUser) {\n AssumedRoleUser.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumedRoleUser || (AssumedRoleUser = {}));\nexport var PolicyDescriptorType;\n(function (PolicyDescriptorType) {\n PolicyDescriptorType.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(PolicyDescriptorType || (PolicyDescriptorType = {}));\nexport var Tag;\n(function (Tag) {\n Tag.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(Tag || (Tag = {}));\nexport var AssumeRoleRequest;\n(function (AssumeRoleRequest) {\n AssumeRoleRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleRequest || (AssumeRoleRequest = {}));\nexport var Credentials;\n(function (Credentials) {\n Credentials.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(Credentials || (Credentials = {}));\nexport var AssumeRoleResponse;\n(function (AssumeRoleResponse) {\n AssumeRoleResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleResponse || (AssumeRoleResponse = {}));\nexport var ExpiredTokenException;\n(function (ExpiredTokenException) {\n ExpiredTokenException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ExpiredTokenException || (ExpiredTokenException = {}));\nexport var MalformedPolicyDocumentException;\n(function (MalformedPolicyDocumentException) {\n MalformedPolicyDocumentException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(MalformedPolicyDocumentException || (MalformedPolicyDocumentException = {}));\nexport var PackedPolicyTooLargeException;\n(function (PackedPolicyTooLargeException) {\n PackedPolicyTooLargeException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(PackedPolicyTooLargeException || (PackedPolicyTooLargeException = {}));\nexport var RegionDisabledException;\n(function (RegionDisabledException) {\n RegionDisabledException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(RegionDisabledException || (RegionDisabledException = {}));\nexport var AssumeRoleWithSAMLRequest;\n(function (AssumeRoleWithSAMLRequest) {\n AssumeRoleWithSAMLRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithSAMLRequest || (AssumeRoleWithSAMLRequest = {}));\nexport var AssumeRoleWithSAMLResponse;\n(function (AssumeRoleWithSAMLResponse) {\n AssumeRoleWithSAMLResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithSAMLResponse || (AssumeRoleWithSAMLResponse = {}));\nexport var IDPRejectedClaimException;\n(function (IDPRejectedClaimException) {\n IDPRejectedClaimException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(IDPRejectedClaimException || (IDPRejectedClaimException = {}));\nexport var InvalidIdentityTokenException;\n(function (InvalidIdentityTokenException) {\n InvalidIdentityTokenException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(InvalidIdentityTokenException || (InvalidIdentityTokenException = {}));\nexport var AssumeRoleWithWebIdentityRequest;\n(function (AssumeRoleWithWebIdentityRequest) {\n AssumeRoleWithWebIdentityRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithWebIdentityRequest || (AssumeRoleWithWebIdentityRequest = {}));\nexport var AssumeRoleWithWebIdentityResponse;\n(function (AssumeRoleWithWebIdentityResponse) {\n AssumeRoleWithWebIdentityResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithWebIdentityResponse || (AssumeRoleWithWebIdentityResponse = {}));\nexport var IDPCommunicationErrorException;\n(function (IDPCommunicationErrorException) {\n IDPCommunicationErrorException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(IDPCommunicationErrorException || (IDPCommunicationErrorException = {}));\nexport var DecodeAuthorizationMessageRequest;\n(function (DecodeAuthorizationMessageRequest) {\n DecodeAuthorizationMessageRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(DecodeAuthorizationMessageRequest || (DecodeAuthorizationMessageRequest = {}));\nexport var DecodeAuthorizationMessageResponse;\n(function (DecodeAuthorizationMessageResponse) {\n DecodeAuthorizationMessageResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(DecodeAuthorizationMessageResponse || (DecodeAuthorizationMessageResponse = {}));\nexport var InvalidAuthorizationMessageException;\n(function (InvalidAuthorizationMessageException) {\n InvalidAuthorizationMessageException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(InvalidAuthorizationMessageException || (InvalidAuthorizationMessageException = {}));\nexport var GetAccessKeyInfoRequest;\n(function (GetAccessKeyInfoRequest) {\n GetAccessKeyInfoRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetAccessKeyInfoRequest || (GetAccessKeyInfoRequest = {}));\nexport var GetAccessKeyInfoResponse;\n(function (GetAccessKeyInfoResponse) {\n GetAccessKeyInfoResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetAccessKeyInfoResponse || (GetAccessKeyInfoResponse = {}));\nexport var GetCallerIdentityRequest;\n(function (GetCallerIdentityRequest) {\n GetCallerIdentityRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetCallerIdentityRequest || (GetCallerIdentityRequest = {}));\nexport var GetCallerIdentityResponse;\n(function (GetCallerIdentityResponse) {\n GetCallerIdentityResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetCallerIdentityResponse || (GetCallerIdentityResponse = {}));\nexport var GetFederationTokenRequest;\n(function (GetFederationTokenRequest) {\n GetFederationTokenRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetFederationTokenRequest || (GetFederationTokenRequest = {}));\nexport var FederatedUser;\n(function (FederatedUser) {\n FederatedUser.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(FederatedUser || (FederatedUser = {}));\nexport var GetFederationTokenResponse;\n(function (GetFederationTokenResponse) {\n GetFederationTokenResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetFederationTokenResponse || (GetFederationTokenResponse = {}));\nexport var GetSessionTokenRequest;\n(function (GetSessionTokenRequest) {\n GetSessionTokenRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetSessionTokenRequest || (GetSessionTokenRequest = {}));\nexport var GetSessionTokenResponse;\n(function (GetSessionTokenResponse) {\n GetSessionTokenResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetSessionTokenResponse || (GetSessionTokenResponse = {}));\n","import { __extends, __read, __spreadArray } from \"tslib\";\nexport var StringWrapper = function () {\n var Class = Object.getPrototypeOf(this).constructor;\n var Constructor = Function.bind.apply(String, __spreadArray([null], __read(arguments)));\n var 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);\nvar LazyJsonString = (function (_super) {\n __extends(LazyJsonString, _super);\n function LazyJsonString() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LazyJsonString.prototype.deserializeJSON = function () {\n return JSON.parse(_super.prototype.toString.call(this));\n };\n LazyJsonString.prototype.toJSON = function () {\n return _super.prototype.toString.call(this);\n };\n LazyJsonString.fromObject = function (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 return LazyJsonString;\n}(StringWrapper));\nexport { LazyJsonString };\n","export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\nexport var booleanSelector = function (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","import { __assign, __awaiter, __generator, __read, __values } from \"tslib\";\nimport { HttpRequest as __HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, getValueFromTextNode as __getValueFromTextNode, parseRfc3339DateTime as __parseRfc3339DateTime, strictParseInt32 as __strictParseInt32, } from \"@aws-sdk/smithy-client\";\nimport { decodeHTML } from \"entities\";\nimport { parse as xmlParse } from \"fast-xml-parser\";\nexport var serializeAws_queryAssumeRoleCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryAssumeRoleRequest(input, context)), { Action: \"AssumeRole\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryAssumeRoleWithSAMLCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryAssumeRoleWithSAMLRequest(input, context)), { Action: \"AssumeRoleWithSAML\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryAssumeRoleWithWebIdentityCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryAssumeRoleWithWebIdentityRequest(input, context)), { Action: \"AssumeRoleWithWebIdentity\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryDecodeAuthorizationMessageCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryDecodeAuthorizationMessageRequest(input, context)), { Action: \"DecodeAuthorizationMessage\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetAccessKeyInfoCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetAccessKeyInfoRequest(input, context)), { Action: \"GetAccessKeyInfo\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetCallerIdentityCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetCallerIdentityRequest(input, context)), { Action: \"GetCallerIdentity\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetFederationTokenCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetFederationTokenRequest(input, context)), { Action: \"GetFederationToken\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetSessionTokenCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetSessionTokenRequest(input, context)), { Action: \"GetSessionToken\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var deserializeAws_queryAssumeRoleCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryAssumeRoleCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryAssumeRoleResponse(data.AssumeRoleResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryAssumeRoleCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"ExpiredTokenException\": return [3, 2];\n case \"com.amazonaws.sts#ExpiredTokenException\": return [3, 2];\n case \"MalformedPolicyDocumentException\": return [3, 4];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 4];\n case \"PackedPolicyTooLargeException\": return [3, 6];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 6];\n case \"RegionDisabledException\": return [3, 8];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryAssumeRoleWithSAMLCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryAssumeRoleWithSAMLCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryAssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryAssumeRoleWithSAMLCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, _g, _h, parsedBody, message;\n var _j;\n return __generator(this, function (_k) {\n switch (_k.label) {\n case 0:\n _a = [__assign({}, output)];\n _j = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_j.body = _k.sent(), _j)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"ExpiredTokenException\": return [3, 2];\n case \"com.amazonaws.sts#ExpiredTokenException\": return [3, 2];\n case \"IDPRejectedClaimException\": return [3, 4];\n case \"com.amazonaws.sts#IDPRejectedClaimException\": return [3, 4];\n case \"InvalidIdentityTokenException\": return [3, 6];\n case \"com.amazonaws.sts#InvalidIdentityTokenException\": return [3, 6];\n case \"MalformedPolicyDocumentException\": return [3, 8];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 8];\n case \"PackedPolicyTooLargeException\": return [3, 10];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 10];\n case \"RegionDisabledException\": return [3, 12];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 12];\n }\n return [3, 14];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 8:\n _f = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 10:\n _g = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 11:\n response = __assign.apply(void 0, [__assign.apply(void 0, _g.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 12:\n _h = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 13:\n response = __assign.apply(void 0, [__assign.apply(void 0, _h.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 14:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _k.label = 15;\n case 15:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryAssumeRoleWithWebIdentityCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryAssumeRoleWithWebIdentityCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryAssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryAssumeRoleWithWebIdentityCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, _g, _h, _j, parsedBody, message;\n var _k;\n return __generator(this, function (_l) {\n switch (_l.label) {\n case 0:\n _a = [__assign({}, output)];\n _k = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_k.body = _l.sent(), _k)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"ExpiredTokenException\": return [3, 2];\n case \"com.amazonaws.sts#ExpiredTokenException\": return [3, 2];\n case \"IDPCommunicationErrorException\": return [3, 4];\n case \"com.amazonaws.sts#IDPCommunicationErrorException\": return [3, 4];\n case \"IDPRejectedClaimException\": return [3, 6];\n case \"com.amazonaws.sts#IDPRejectedClaimException\": return [3, 6];\n case \"InvalidIdentityTokenException\": return [3, 8];\n case \"com.amazonaws.sts#InvalidIdentityTokenException\": return [3, 8];\n case \"MalformedPolicyDocumentException\": return [3, 10];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 10];\n case \"PackedPolicyTooLargeException\": return [3, 12];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 12];\n case \"RegionDisabledException\": return [3, 14];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 14];\n }\n return [3, 16];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryIDPCommunicationErrorExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 8:\n _f = [{}];\n return [4, deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 10:\n _g = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 11:\n response = __assign.apply(void 0, [__assign.apply(void 0, _g.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 12:\n _h = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 13:\n response = __assign.apply(void 0, [__assign.apply(void 0, _h.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 14:\n _j = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 15:\n response = __assign.apply(void 0, [__assign.apply(void 0, _j.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 16:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _l.label = 17;\n case 17:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryDecodeAuthorizationMessageCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryDecodeAuthorizationMessageCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryDecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryDecodeAuthorizationMessageCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, parsedBody, message;\n var _d;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n _a = [__assign({}, output)];\n _d = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_d.body = _e.sent(), _d)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidAuthorizationMessageException\": return [3, 2];\n case \"com.amazonaws.sts#InvalidAuthorizationMessageException\": return [3, 2];\n }\n return [3, 4];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryInvalidAuthorizationMessageExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_e.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 5];\n case 4:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _e.label = 5;\n case 5:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetAccessKeyInfoCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetAccessKeyInfoCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetAccessKeyInfoCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, parsedBody, message;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = [__assign({}, output)];\n _b = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_b.body = _c.sent(), _b)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n default:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n }\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetCallerIdentityCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetCallerIdentityCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetCallerIdentityResponse(data.GetCallerIdentityResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetCallerIdentityCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, parsedBody, message;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = [__assign({}, output)];\n _b = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_b.body = _c.sent(), _b)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n default:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n }\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetFederationTokenCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetFederationTokenCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetFederationTokenResponse(data.GetFederationTokenResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetFederationTokenCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, parsedBody, message;\n var _f;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n _a = [__assign({}, output)];\n _f = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_f.body = _g.sent(), _f)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"MalformedPolicyDocumentException\": return [3, 2];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 2];\n case \"PackedPolicyTooLargeException\": return [3, 4];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 4];\n case \"RegionDisabledException\": return [3, 6];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 6];\n }\n return [3, 8];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 8:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _g.label = 9;\n case 9:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetSessionTokenCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetSessionTokenCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetSessionTokenResponse(data.GetSessionTokenResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetSessionTokenCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, parsedBody, message;\n var _d;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n _a = [__assign({}, output)];\n _d = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_d.body = _e.sent(), _d)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"RegionDisabledException\": return [3, 2];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 2];\n }\n return [3, 4];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_e.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 5];\n case 4:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _e.label = 5;\n case 5:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nvar deserializeAws_queryExpiredTokenExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryExpiredTokenException(body.Error, context);\n contents = __assign({ name: \"ExpiredTokenException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryIDPCommunicationErrorExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryIDPCommunicationErrorException(body.Error, context);\n contents = __assign({ name: \"IDPCommunicationErrorException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryIDPRejectedClaimExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryIDPRejectedClaimException(body.Error, context);\n contents = __assign({ name: \"IDPRejectedClaimException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryInvalidAuthorizationMessageExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryInvalidAuthorizationMessageException(body.Error, context);\n contents = __assign({ name: \"InvalidAuthorizationMessageException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryInvalidIdentityTokenExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryInvalidIdentityTokenException(body.Error, context);\n contents = __assign({ name: \"InvalidIdentityTokenException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryMalformedPolicyDocumentExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryMalformedPolicyDocumentException(body.Error, context);\n contents = __assign({ name: \"MalformedPolicyDocumentException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryPackedPolicyTooLargeExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryPackedPolicyTooLargeException(body.Error, context);\n contents = __assign({ name: \"PackedPolicyTooLargeException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryRegionDisabledExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryRegionDisabledException(body.Error, context);\n contents = __assign({ name: \"RegionDisabledException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar serializeAws_queryAssumeRoleRequest = function (input, context) {\n var entries = {};\n if (input.RoleArn !== undefined && input.RoleArn !== null) {\n entries[\"RoleArn\"] = input.RoleArn;\n }\n if (input.RoleSessionName !== undefined && input.RoleSessionName !== null) {\n entries[\"RoleSessionName\"] = input.RoleSessionName;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n if (input.Tags !== undefined && input.Tags !== null) {\n var memberEntries = serializeAws_querytagListType(input.Tags, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"Tags.\" + key;\n entries[loc] = value;\n });\n }\n if (input.TransitiveTagKeys !== undefined && input.TransitiveTagKeys !== null) {\n var memberEntries = serializeAws_querytagKeyListType(input.TransitiveTagKeys, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"TransitiveTagKeys.\" + key;\n entries[loc] = value;\n });\n }\n if (input.ExternalId !== undefined && input.ExternalId !== null) {\n entries[\"ExternalId\"] = input.ExternalId;\n }\n if (input.SerialNumber !== undefined && input.SerialNumber !== null) {\n entries[\"SerialNumber\"] = input.SerialNumber;\n }\n if (input.TokenCode !== undefined && input.TokenCode !== null) {\n entries[\"TokenCode\"] = input.TokenCode;\n }\n if (input.SourceIdentity !== undefined && input.SourceIdentity !== null) {\n entries[\"SourceIdentity\"] = input.SourceIdentity;\n }\n return entries;\n};\nvar serializeAws_queryAssumeRoleWithSAMLRequest = function (input, context) {\n var entries = {};\n if (input.RoleArn !== undefined && input.RoleArn !== null) {\n entries[\"RoleArn\"] = input.RoleArn;\n }\n if (input.PrincipalArn !== undefined && input.PrincipalArn !== null) {\n entries[\"PrincipalArn\"] = input.PrincipalArn;\n }\n if (input.SAMLAssertion !== undefined && input.SAMLAssertion !== null) {\n entries[\"SAMLAssertion\"] = input.SAMLAssertion;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n return entries;\n};\nvar serializeAws_queryAssumeRoleWithWebIdentityRequest = function (input, context) {\n var entries = {};\n if (input.RoleArn !== undefined && input.RoleArn !== null) {\n entries[\"RoleArn\"] = input.RoleArn;\n }\n if (input.RoleSessionName !== undefined && input.RoleSessionName !== null) {\n entries[\"RoleSessionName\"] = input.RoleSessionName;\n }\n if (input.WebIdentityToken !== undefined && input.WebIdentityToken !== null) {\n entries[\"WebIdentityToken\"] = input.WebIdentityToken;\n }\n if (input.ProviderId !== undefined && input.ProviderId !== null) {\n entries[\"ProviderId\"] = input.ProviderId;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n return entries;\n};\nvar serializeAws_queryDecodeAuthorizationMessageRequest = function (input, context) {\n var entries = {};\n if (input.EncodedMessage !== undefined && input.EncodedMessage !== null) {\n entries[\"EncodedMessage\"] = input.EncodedMessage;\n }\n return entries;\n};\nvar serializeAws_queryGetAccessKeyInfoRequest = function (input, context) {\n var entries = {};\n if (input.AccessKeyId !== undefined && input.AccessKeyId !== null) {\n entries[\"AccessKeyId\"] = input.AccessKeyId;\n }\n return entries;\n};\nvar serializeAws_queryGetCallerIdentityRequest = function (input, context) {\n var entries = {};\n return entries;\n};\nvar serializeAws_queryGetFederationTokenRequest = function (input, context) {\n var entries = {};\n if (input.Name !== undefined && input.Name !== null) {\n entries[\"Name\"] = input.Name;\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n if (input.Tags !== undefined && input.Tags !== null) {\n var memberEntries = serializeAws_querytagListType(input.Tags, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"Tags.\" + key;\n entries[loc] = value;\n });\n }\n return entries;\n};\nvar serializeAws_queryGetSessionTokenRequest = function (input, context) {\n var entries = {};\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n if (input.SerialNumber !== undefined && input.SerialNumber !== null) {\n entries[\"SerialNumber\"] = input.SerialNumber;\n }\n if (input.TokenCode !== undefined && input.TokenCode !== null) {\n entries[\"TokenCode\"] = input.TokenCode;\n }\n return entries;\n};\nvar serializeAws_querypolicyDescriptorListType = function (input, context) {\n var e_1, _a;\n var entries = {};\n var counter = 1;\n try {\n for (var input_1 = __values(input), input_1_1 = input_1.next(); !input_1_1.done; input_1_1 = input_1.next()) {\n var entry = input_1_1.value;\n if (entry === null) {\n continue;\n }\n var memberEntries = serializeAws_queryPolicyDescriptorType(entry, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n entries[\"member.\" + counter + \".\" + key] = value;\n });\n counter++;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (input_1_1 && !input_1_1.done && (_a = input_1.return)) _a.call(input_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return entries;\n};\nvar serializeAws_queryPolicyDescriptorType = function (input, context) {\n var entries = {};\n if (input.arn !== undefined && input.arn !== null) {\n entries[\"arn\"] = input.arn;\n }\n return entries;\n};\nvar serializeAws_queryTag = function (input, context) {\n var entries = {};\n if (input.Key !== undefined && input.Key !== null) {\n entries[\"Key\"] = input.Key;\n }\n if (input.Value !== undefined && input.Value !== null) {\n entries[\"Value\"] = input.Value;\n }\n return entries;\n};\nvar serializeAws_querytagKeyListType = function (input, context) {\n var e_2, _a;\n var entries = {};\n var counter = 1;\n try {\n for (var input_2 = __values(input), input_2_1 = input_2.next(); !input_2_1.done; input_2_1 = input_2.next()) {\n var entry = input_2_1.value;\n if (entry === null) {\n continue;\n }\n entries[\"member.\" + counter] = entry;\n counter++;\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (input_2_1 && !input_2_1.done && (_a = input_2.return)) _a.call(input_2);\n }\n finally { if (e_2) throw e_2.error; }\n }\n return entries;\n};\nvar serializeAws_querytagListType = function (input, context) {\n var e_3, _a;\n var entries = {};\n var counter = 1;\n try {\n for (var input_3 = __values(input), input_3_1 = input_3.next(); !input_3_1.done; input_3_1 = input_3.next()) {\n var entry = input_3_1.value;\n if (entry === null) {\n continue;\n }\n var memberEntries = serializeAws_queryTag(entry, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n entries[\"member.\" + counter + \".\" + key] = value;\n });\n counter++;\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (input_3_1 && !input_3_1.done && (_a = input_3.return)) _a.call(input_3);\n }\n finally { if (e_3) throw e_3.error; }\n }\n return entries;\n};\nvar deserializeAws_queryAssumedRoleUser = function (output, context) {\n var contents = {\n AssumedRoleId: undefined,\n Arn: undefined,\n };\n if (output[\"AssumedRoleId\"] !== undefined) {\n contents.AssumedRoleId = __expectString(output[\"AssumedRoleId\"]);\n }\n if (output[\"Arn\"] !== undefined) {\n contents.Arn = __expectString(output[\"Arn\"]);\n }\n return contents;\n};\nvar deserializeAws_queryAssumeRoleResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n AssumedRoleUser: undefined,\n PackedPolicySize: undefined,\n SourceIdentity: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"AssumedRoleUser\"] !== undefined) {\n contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output[\"AssumedRoleUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n if (output[\"SourceIdentity\"] !== undefined) {\n contents.SourceIdentity = __expectString(output[\"SourceIdentity\"]);\n }\n return contents;\n};\nvar deserializeAws_queryAssumeRoleWithSAMLResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n AssumedRoleUser: undefined,\n PackedPolicySize: undefined,\n Subject: undefined,\n SubjectType: undefined,\n Issuer: undefined,\n Audience: undefined,\n NameQualifier: undefined,\n SourceIdentity: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"AssumedRoleUser\"] !== undefined) {\n contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output[\"AssumedRoleUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n if (output[\"Subject\"] !== undefined) {\n contents.Subject = __expectString(output[\"Subject\"]);\n }\n if (output[\"SubjectType\"] !== undefined) {\n contents.SubjectType = __expectString(output[\"SubjectType\"]);\n }\n if (output[\"Issuer\"] !== undefined) {\n contents.Issuer = __expectString(output[\"Issuer\"]);\n }\n if (output[\"Audience\"] !== undefined) {\n contents.Audience = __expectString(output[\"Audience\"]);\n }\n if (output[\"NameQualifier\"] !== undefined) {\n contents.NameQualifier = __expectString(output[\"NameQualifier\"]);\n }\n if (output[\"SourceIdentity\"] !== undefined) {\n contents.SourceIdentity = __expectString(output[\"SourceIdentity\"]);\n }\n return contents;\n};\nvar deserializeAws_queryAssumeRoleWithWebIdentityResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n SubjectFromWebIdentityToken: undefined,\n AssumedRoleUser: undefined,\n PackedPolicySize: undefined,\n Provider: undefined,\n Audience: undefined,\n SourceIdentity: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"SubjectFromWebIdentityToken\"] !== undefined) {\n contents.SubjectFromWebIdentityToken = __expectString(output[\"SubjectFromWebIdentityToken\"]);\n }\n if (output[\"AssumedRoleUser\"] !== undefined) {\n contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output[\"AssumedRoleUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n if (output[\"Provider\"] !== undefined) {\n contents.Provider = __expectString(output[\"Provider\"]);\n }\n if (output[\"Audience\"] !== undefined) {\n contents.Audience = __expectString(output[\"Audience\"]);\n }\n if (output[\"SourceIdentity\"] !== undefined) {\n contents.SourceIdentity = __expectString(output[\"SourceIdentity\"]);\n }\n return contents;\n};\nvar deserializeAws_queryCredentials = function (output, context) {\n var contents = {\n AccessKeyId: undefined,\n SecretAccessKey: undefined,\n SessionToken: undefined,\n Expiration: undefined,\n };\n if (output[\"AccessKeyId\"] !== undefined) {\n contents.AccessKeyId = __expectString(output[\"AccessKeyId\"]);\n }\n if (output[\"SecretAccessKey\"] !== undefined) {\n contents.SecretAccessKey = __expectString(output[\"SecretAccessKey\"]);\n }\n if (output[\"SessionToken\"] !== undefined) {\n contents.SessionToken = __expectString(output[\"SessionToken\"]);\n }\n if (output[\"Expiration\"] !== undefined) {\n contents.Expiration = __expectNonNull(__parseRfc3339DateTime(output[\"Expiration\"]));\n }\n return contents;\n};\nvar deserializeAws_queryDecodeAuthorizationMessageResponse = function (output, context) {\n var contents = {\n DecodedMessage: undefined,\n };\n if (output[\"DecodedMessage\"] !== undefined) {\n contents.DecodedMessage = __expectString(output[\"DecodedMessage\"]);\n }\n return contents;\n};\nvar deserializeAws_queryExpiredTokenException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryFederatedUser = function (output, context) {\n var contents = {\n FederatedUserId: undefined,\n Arn: undefined,\n };\n if (output[\"FederatedUserId\"] !== undefined) {\n contents.FederatedUserId = __expectString(output[\"FederatedUserId\"]);\n }\n if (output[\"Arn\"] !== undefined) {\n contents.Arn = __expectString(output[\"Arn\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetAccessKeyInfoResponse = function (output, context) {\n var contents = {\n Account: undefined,\n };\n if (output[\"Account\"] !== undefined) {\n contents.Account = __expectString(output[\"Account\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetCallerIdentityResponse = function (output, context) {\n var contents = {\n UserId: undefined,\n Account: undefined,\n Arn: undefined,\n };\n if (output[\"UserId\"] !== undefined) {\n contents.UserId = __expectString(output[\"UserId\"]);\n }\n if (output[\"Account\"] !== undefined) {\n contents.Account = __expectString(output[\"Account\"]);\n }\n if (output[\"Arn\"] !== undefined) {\n contents.Arn = __expectString(output[\"Arn\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetFederationTokenResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n FederatedUser: undefined,\n PackedPolicySize: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"FederatedUser\"] !== undefined) {\n contents.FederatedUser = deserializeAws_queryFederatedUser(output[\"FederatedUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetSessionTokenResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n return contents;\n};\nvar deserializeAws_queryIDPCommunicationErrorException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryIDPRejectedClaimException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryInvalidAuthorizationMessageException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryInvalidIdentityTokenException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryMalformedPolicyDocumentException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryPackedPolicyTooLargeException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryRegionDisabledException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeMetadata = function (output) {\n var _a;\n return ({\n httpStatusCode: output.statusCode,\n requestId: (_a = output.headers[\"x-amzn-requestid\"]) !== null && _a !== void 0 ? _a : output.headers[\"x-amzn-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n });\n};\nvar collectBody = function (streamBody, context) {\n if (streamBody === void 0) { streamBody = new Uint8Array(); }\n if (streamBody instanceof Uint8Array) {\n return Promise.resolve(streamBody);\n }\n return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());\n};\nvar collectBodyString = function (streamBody, context) {\n return collectBody(streamBody, context).then(function (body) { return context.utf8Encoder(body); });\n};\nvar buildHttpRpcRequest = function (context, headers, path, resolvedHostname, body) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, contents;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n contents = {\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"POST\",\n path: basePath.endsWith(\"/\") ? basePath.slice(0, -1) + path : basePath + path,\n headers: headers,\n };\n if (resolvedHostname !== undefined) {\n contents.hostname = resolvedHostname;\n }\n if (body !== undefined) {\n contents.body = body;\n }\n return [2, new __HttpRequest(contents)];\n }\n });\n}); };\nvar parseBody = function (streamBody, context) {\n return collectBodyString(streamBody, context).then(function (encoded) {\n if (encoded.length) {\n var parsedObj = xmlParse(encoded, {\n attributeNamePrefix: \"\",\n ignoreAttributes: false,\n parseNodeValue: false,\n trimValues: false,\n tagValueProcessor: function (val) { return (val.trim() === \"\" && val.includes(\"\\n\") ? \"\" : decodeHTML(val)); },\n });\n var textNodeName = \"#text\";\n var key = Object.keys(parsedObj)[0];\n var 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 });\n};\nvar buildFormUrlencodedString = function (formEntries) {\n return Object.entries(formEntries)\n .map(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n return __extendedEncodeURIComponent(key) + \"=\" + __extendedEncodeURIComponent(value);\n })\n .join(\"&\");\n};\nvar loadQueryErrorCode = function (output, data) {\n if (data.Error.Code !== undefined) {\n return data.Error.Code;\n }\n if (output.statusCode == 404) {\n return \"NotFound\";\n }\n return \"\";\n};\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { AssumeRoleRequest, AssumeRoleResponse } from \"../models/models_0\";\nimport { deserializeAws_queryAssumeRoleCommand, serializeAws_queryAssumeRoleCommand } from \"../protocols/Aws_query\";\nvar AssumeRoleCommand = (function (_super) {\n __extends(AssumeRoleCommand, _super);\n function AssumeRoleCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n AssumeRoleCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"AssumeRoleCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: AssumeRoleRequest.filterSensitiveLog,\n outputFilterSensitiveLog: AssumeRoleResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n AssumeRoleCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryAssumeRoleCommand(input, context);\n };\n AssumeRoleCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryAssumeRoleCommand(output, context);\n };\n return AssumeRoleCommand;\n}($Command));\nexport { AssumeRoleCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { AssumeRoleWithSAMLRequest, AssumeRoleWithSAMLResponse } from \"../models/models_0\";\nimport { deserializeAws_queryAssumeRoleWithSAMLCommand, serializeAws_queryAssumeRoleWithSAMLCommand, } from \"../protocols/Aws_query\";\nvar AssumeRoleWithSAMLCommand = (function (_super) {\n __extends(AssumeRoleWithSAMLCommand, _super);\n function AssumeRoleWithSAMLCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n AssumeRoleWithSAMLCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"AssumeRoleWithSAMLCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: AssumeRoleWithSAMLRequest.filterSensitiveLog,\n outputFilterSensitiveLog: AssumeRoleWithSAMLResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n AssumeRoleWithSAMLCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryAssumeRoleWithSAMLCommand(input, context);\n };\n AssumeRoleWithSAMLCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryAssumeRoleWithSAMLCommand(output, context);\n };\n return AssumeRoleWithSAMLCommand;\n}($Command));\nexport { AssumeRoleWithSAMLCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { AssumeRoleWithWebIdentityRequest, AssumeRoleWithWebIdentityResponse } from \"../models/models_0\";\nimport { deserializeAws_queryAssumeRoleWithWebIdentityCommand, serializeAws_queryAssumeRoleWithWebIdentityCommand, } from \"../protocols/Aws_query\";\nvar AssumeRoleWithWebIdentityCommand = (function (_super) {\n __extends(AssumeRoleWithWebIdentityCommand, _super);\n function AssumeRoleWithWebIdentityCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n AssumeRoleWithWebIdentityCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"AssumeRoleWithWebIdentityCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: AssumeRoleWithWebIdentityRequest.filterSensitiveLog,\n outputFilterSensitiveLog: AssumeRoleWithWebIdentityResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n AssumeRoleWithWebIdentityCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryAssumeRoleWithWebIdentityCommand(input, context);\n };\n AssumeRoleWithWebIdentityCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryAssumeRoleWithWebIdentityCommand(output, context);\n };\n return AssumeRoleWithWebIdentityCommand;\n}($Command));\nexport { AssumeRoleWithWebIdentityCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { DecodeAuthorizationMessageRequest, DecodeAuthorizationMessageResponse } from \"../models/models_0\";\nimport { deserializeAws_queryDecodeAuthorizationMessageCommand, serializeAws_queryDecodeAuthorizationMessageCommand, } from \"../protocols/Aws_query\";\nvar DecodeAuthorizationMessageCommand = (function (_super) {\n __extends(DecodeAuthorizationMessageCommand, _super);\n function DecodeAuthorizationMessageCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n DecodeAuthorizationMessageCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"DecodeAuthorizationMessageCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: DecodeAuthorizationMessageRequest.filterSensitiveLog,\n outputFilterSensitiveLog: DecodeAuthorizationMessageResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n DecodeAuthorizationMessageCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryDecodeAuthorizationMessageCommand(input, context);\n };\n DecodeAuthorizationMessageCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryDecodeAuthorizationMessageCommand(output, context);\n };\n return DecodeAuthorizationMessageCommand;\n}($Command));\nexport { DecodeAuthorizationMessageCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetAccessKeyInfoRequest, GetAccessKeyInfoResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetAccessKeyInfoCommand, serializeAws_queryGetAccessKeyInfoCommand, } from \"../protocols/Aws_query\";\nvar GetAccessKeyInfoCommand = (function (_super) {\n __extends(GetAccessKeyInfoCommand, _super);\n function GetAccessKeyInfoCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetAccessKeyInfoCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetAccessKeyInfoCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetAccessKeyInfoRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetAccessKeyInfoResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetAccessKeyInfoCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetAccessKeyInfoCommand(input, context);\n };\n GetAccessKeyInfoCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetAccessKeyInfoCommand(output, context);\n };\n return GetAccessKeyInfoCommand;\n}($Command));\nexport { GetAccessKeyInfoCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetCallerIdentityRequest, GetCallerIdentityResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetCallerIdentityCommand, serializeAws_queryGetCallerIdentityCommand, } from \"../protocols/Aws_query\";\nvar GetCallerIdentityCommand = (function (_super) {\n __extends(GetCallerIdentityCommand, _super);\n function GetCallerIdentityCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetCallerIdentityCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetCallerIdentityCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetCallerIdentityRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetCallerIdentityResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetCallerIdentityCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetCallerIdentityCommand(input, context);\n };\n GetCallerIdentityCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetCallerIdentityCommand(output, context);\n };\n return GetCallerIdentityCommand;\n}($Command));\nexport { GetCallerIdentityCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetFederationTokenRequest, GetFederationTokenResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetFederationTokenCommand, serializeAws_queryGetFederationTokenCommand, } from \"../protocols/Aws_query\";\nvar GetFederationTokenCommand = (function (_super) {\n __extends(GetFederationTokenCommand, _super);\n function GetFederationTokenCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetFederationTokenCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetFederationTokenCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetFederationTokenRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetFederationTokenResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetFederationTokenCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetFederationTokenCommand(input, context);\n };\n GetFederationTokenCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetFederationTokenCommand(output, context);\n };\n return GetFederationTokenCommand;\n}($Command));\nexport { GetFederationTokenCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetSessionTokenRequest, GetSessionTokenResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetSessionTokenCommand, serializeAws_queryGetSessionTokenCommand, } from \"../protocols/Aws_query\";\nvar GetSessionTokenCommand = (function (_super) {\n __extends(GetSessionTokenCommand, _super);\n function GetSessionTokenCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetSessionTokenCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetSessionTokenCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetSessionTokenRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetSessionTokenResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetSessionTokenCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetSessionTokenCommand(input, context);\n };\n GetSessionTokenCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetSessionTokenCommand(output, context);\n };\n return GetSessionTokenCommand;\n}($Command));\nexport { GetSessionTokenCommand };\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 var DEFAULT_MAX_ATTEMPTS = 3;\nexport var DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n","import { booleanSelector, SelectorType } from \"@aws-sdk/util-config-provider\";\nexport var ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport var CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport var DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) {\n return booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV);\n },\n configFileSelector: function (profile) { return booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG); },\n default: false,\n};\n","import { booleanSelector, SelectorType } from \"@aws-sdk/util-config-provider\";\nexport var ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport var CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport var DEFAULT_USE_FIPS_ENDPOINT = false;\nexport var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) {\n return booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV);\n },\n configFileSelector: function (profile) { return booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG); },\n default: false,\n};\n","export var normalizeEndpoint = function (_a) {\n var endpoint = _a.endpoint, urlParser = _a.urlParser;\n if (typeof endpoint === \"string\") {\n var promisified_1 = Promise.resolve(urlParser(endpoint));\n return function () { return promisified_1; };\n }\n else if (typeof endpoint === \"object\") {\n var promisified_2 = Promise.resolve(endpoint);\n return function () { return promisified_2; };\n }\n return endpoint;\n};\n","import { __assign } from \"tslib\";\nimport { getEndpointFromRegion } from \"./utils/getEndpointFromRegion\";\nimport { normalizeBoolean } from \"./utils/normalizeBoolean\";\nimport { normalizeEndpoint } from \"./utils/normalizeEndpoint\";\nexport var resolveEndpointsConfig = function (input) {\n var _a;\n var useDualstackEndpoint = normalizeBoolean(input.useDualstackEndpoint);\n var endpoint = input.endpoint, useFipsEndpoint = input.useFipsEndpoint;\n return __assign(__assign({}, input), { tls: (_a = input.tls) !== null && _a !== void 0 ? _a : true, endpoint: endpoint\n ? normalizeEndpoint(__assign(__assign({}, input), { endpoint: endpoint }))\n : function () { return getEndpointFromRegion(__assign(__assign({}, input), { useDualstackEndpoint: useDualstackEndpoint, useFipsEndpoint: useFipsEndpoint })); }, isCustomEndpoint: endpoint ? true : false, useDualstackEndpoint: useDualstackEndpoint });\n};\n","export var normalizeBoolean = function (value) {\n if (typeof value === \"boolean\") {\n var promisified_1 = Promise.resolve(value);\n return function () { return promisified_1; };\n }\n return value;\n};\n","import { __awaiter, __generator } from \"tslib\";\nexport var getEndpointFromRegion = function (input) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, tls, region, dnsHostRegex, useDualstackEndpoint, useFipsEndpoint, hostname;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = input.tls, tls = _a === void 0 ? true : _a;\n return [4, input.region()];\n case 1:\n region = _c.sent();\n 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 return [4, input.useDualstackEndpoint()];\n case 2:\n useDualstackEndpoint = _c.sent();\n return [4, input.useFipsEndpoint()];\n case 3:\n useFipsEndpoint = _c.sent();\n return [4, input.regionInfoProvider(region, { useDualstackEndpoint: useDualstackEndpoint, useFipsEndpoint: useFipsEndpoint })];\n case 4:\n hostname = ((_b = (_c.sent())) !== null && _b !== void 0 ? _b : {}).hostname;\n if (!hostname) {\n throw new Error(\"Cannot resolve hostname from client config\");\n }\n return [2, input.urlParser((tls ? \"https:\" : \"http:\") + \"//\" + hostname)];\n }\n });\n}); };\n","export var REGION_ENV_NAME = \"AWS_REGION\";\nexport var REGION_INI_NAME = \"region\";\nexport var NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[REGION_ENV_NAME]; },\n configFileSelector: function (profile) { return profile[REGION_INI_NAME]; },\n default: function () {\n throw new Error(\"Region is missing\");\n },\n};\nexport var NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n","export var isFipsRegion = function (region) {\n return typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n};\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport var getRealRegion = function (region) {\n return isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport var resolveRegionConfig = function (input) {\n var region = input.region, useFipsEndpoint = input.useFipsEndpoint;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return __assign(__assign({}, input), { region: function () { return __awaiter(void 0, void 0, void 0, function () {\n var providedRegion;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (typeof region === \"string\") {\n return [2, getRealRegion(region)];\n }\n return [4, region()];\n case 1:\n providedRegion = _a.sent();\n return [2, getRealRegion(providedRegion)];\n }\n });\n }); }, useFipsEndpoint: function () { return __awaiter(void 0, void 0, void 0, function () {\n var providedRegion, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!(typeof region === \"string\")) return [3, 1];\n _a = region;\n return [3, 3];\n case 1: return [4, region()];\n case 2:\n _a = _b.sent();\n _b.label = 3;\n case 3:\n providedRegion = _a;\n if (isFipsRegion(providedRegion)) {\n return [2, true];\n }\n return [2, typeof useFipsEndpoint === \"boolean\" ? Promise.resolve(useFipsEndpoint) : useFipsEndpoint()];\n }\n });\n }); } });\n};\n","export var getHostnameFromVariants = function (variants, _a) {\n var _b;\n if (variants === void 0) { variants = []; }\n var useFipsEndpoint = _a.useFipsEndpoint, useDualstackEndpoint = _a.useDualstackEndpoint;\n return (_b = variants.find(function (_a) {\n var tags = _a.tags;\n return useFipsEndpoint === tags.includes(\"fips\") && useDualstackEndpoint === tags.includes(\"dualstack\");\n })) === null || _b === void 0 ? void 0 : _b.hostname;\n};\n","import { __assign } from \"tslib\";\nimport { getHostnameFromVariants } from \"./getHostnameFromVariants\";\nimport { getResolvedHostname } from \"./getResolvedHostname\";\nimport { getResolvedPartition } from \"./getResolvedPartition\";\nimport { getResolvedSigningRegion } from \"./getResolvedSigningRegion\";\nexport var getRegionInfo = function (region, _a) {\n var _b, _c, _d, _e, _f, _g;\n var _h = _a.useFipsEndpoint, useFipsEndpoint = _h === void 0 ? false : _h, _j = _a.useDualstackEndpoint, useDualstackEndpoint = _j === void 0 ? false : _j, signingService = _a.signingService, regionHash = _a.regionHash, partitionHash = _a.partitionHash;\n var partition = getResolvedPartition(region, { partitionHash: partitionHash });\n var resolvedRegion = region in regionHash ? region : (_c = (_b = partitionHash[partition]) === null || _b === void 0 ? void 0 : _b.endpoint) !== null && _c !== void 0 ? _c : region;\n var hostnameOptions = { useFipsEndpoint: useFipsEndpoint, useDualstackEndpoint: useDualstackEndpoint };\n var regionHostname = getHostnameFromVariants((_d = regionHash[resolvedRegion]) === null || _d === void 0 ? void 0 : _d.variants, hostnameOptions);\n var partitionHostname = getHostnameFromVariants((_e = partitionHash[partition]) === null || _e === void 0 ? void 0 : _e.variants, hostnameOptions);\n var hostname = getResolvedHostname(resolvedRegion, { regionHostname: regionHostname, partitionHostname: partitionHostname });\n if (hostname === undefined) {\n throw new Error(\"Endpoint resolution failed for: \" + { resolvedRegion: resolvedRegion, useFipsEndpoint: useFipsEndpoint, useDualstackEndpoint: useDualstackEndpoint });\n }\n var signingRegion = getResolvedSigningRegion(hostname, {\n signingRegion: (_f = regionHash[resolvedRegion]) === null || _f === void 0 ? void 0 : _f.signingRegion,\n regionRegex: partitionHash[partition].regionRegex,\n useFipsEndpoint: useFipsEndpoint,\n });\n return __assign(__assign({ partition: partition, signingService: signingService, hostname: hostname }, (signingRegion && { signingRegion: signingRegion })), (((_g = regionHash[resolvedRegion]) === null || _g === void 0 ? void 0 : _g.signingService) && {\n signingService: regionHash[resolvedRegion].signingService,\n }));\n};\n","export var getResolvedPartition = function (region, _a) {\n var _b;\n var partitionHash = _a.partitionHash;\n return (_b = Object.keys(partitionHash || {}).find(function (key) { return partitionHash[key].regions.includes(region); })) !== null && _b !== void 0 ? _b : \"aws\";\n};\n","export var getResolvedHostname = function (resolvedRegion, _a) {\n var regionHostname = _a.regionHostname, partitionHostname = _a.partitionHostname;\n return regionHostname\n ? regionHostname\n : partitionHostname\n ? partitionHostname.replace(\"{region}\", resolvedRegion)\n : undefined;\n};\n","export var getResolvedSigningRegion = function (hostname, _a) {\n var signingRegion = _a.signingRegion, regionRegex = _a.regionRegex, useFipsEndpoint = _a.useFipsEndpoint;\n if (signingRegion) {\n return signingRegion;\n }\n else if (useFipsEndpoint) {\n var regionRegexJs = regionRegex.replace(\"\\\\\\\\\", \"\\\\\").replace(/^\\^/g, \"\\\\.\").replace(/\\$$/g, \"\\\\.\");\n var regionRegexmatchArray = hostname.match(regionRegexJs);\n if (regionRegexmatchArray) {\n return regionRegexmatchArray[0].slice(1, -1);\n }\n }\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nvar CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n var _this = this;\n return function (next) {\n return function (args) { return __awaiter(_this, void 0, void 0, function () {\n var request, body, headers, length;\n var _a;\n return __generator(this, function (_b) {\n request = args.request;\n if (HttpRequest.isInstance(request)) {\n body = request.body, headers = request.headers;\n if (body &&\n Object.keys(headers)\n .map(function (str) { return str.toLowerCase(); })\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n length = bodyLengthChecker(body);\n if (length !== undefined) {\n request.headers = __assign(__assign({}, request.headers), (_a = {}, _a[CONTENT_LENGTH_HEADER] = String(length), _a));\n }\n }\n }\n return [2, next(__assign(__assign({}, args), { request: request }))];\n });\n }); };\n };\n}\nexport var contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport var getContentLengthPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n}); };\n","import { __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport var hostHeaderMiddleware = function (options) {\n return function (next) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var request, _a, handlerProtocol;\n return __generator(this, function (_b) {\n if (!HttpRequest.isInstance(args.request))\n return [2, next(args)];\n request = args.request;\n _a = (options.requestHandler.metadata || {}).handlerProtocol, handlerProtocol = _a === void 0 ? \"\" : _a;\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = \"\";\n }\n else if (!request.headers[\"host\"]) {\n request.headers[\"host\"] = request.hostname;\n }\n return [2, next(args)];\n });\n }); };\n };\n};\nexport var hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport var getHostHeaderPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n}); };\n","import { __awaiter, __generator, __rest } from \"tslib\";\nexport var loggerMiddleware = function () {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var clientName, commandName, inputFilterSensitiveLog, logger, outputFilterSensitiveLog, response, _a, $metadata, outputWithoutMetadata;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n clientName = context.clientName, commandName = context.commandName, inputFilterSensitiveLog = context.inputFilterSensitiveLog, logger = context.logger, outputFilterSensitiveLog = context.outputFilterSensitiveLog;\n return [4, next(args)];\n case 1:\n response = _b.sent();\n if (!logger) {\n return [2, response];\n }\n if (typeof logger.info === \"function\") {\n _a = response.output, $metadata = _a.$metadata, outputWithoutMetadata = __rest(_a, [\"$metadata\"]);\n logger.info({\n clientName: clientName,\n commandName: commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n }\n return [2, response];\n }\n });\n }); };\n };\n};\nexport var loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport var getLoggerPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n}); };\n","export var CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport var 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 var TRANSIENT_ERROR_CODES = [\"AbortError\", \"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\n","import { CLOCK_SKEW_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport var isRetryableByTrait = function (error) { return error.$retryable !== undefined; };\nexport var isClockSkewError = function (error) { return CLOCK_SKEW_ERROR_CODES.includes(error.name); };\nexport var isThrottlingError = function (error) {\n var _a, _b;\n return ((_a = error.$metadata) === null || _a === void 0 ? void 0 : _a.httpStatusCode) === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n ((_b = error.$retryable) === null || _b === void 0 ? void 0 : _b.throttling) == true;\n};\nexport var isTransientError = function (error) {\n var _a;\n return TRANSIENT_ERROR_CODES.includes(error.name) ||\n TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) === null || _a === void 0 ? void 0 : _a.httpStatusCode) || 0);\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { isThrottlingError } from \"@aws-sdk/service-error-classification\";\nvar DefaultRateLimiter = (function () {\n function DefaultRateLimiter(options) {\n var _a, _b, _c, _d, _e;\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 = (_a = options === null || options === void 0 ? void 0 : options.beta) !== null && _a !== void 0 ? _a : 0.7;\n this.minCapacity = (_b = options === null || options === void 0 ? void 0 : options.minCapacity) !== null && _b !== void 0 ? _b : 1;\n this.minFillRate = (_c = options === null || options === void 0 ? void 0 : options.minFillRate) !== null && _c !== void 0 ? _c : 0.5;\n this.scaleConstant = (_d = options === null || options === void 0 ? void 0 : options.scaleConstant) !== null && _d !== void 0 ? _d : 0.4;\n this.smooth = (_e = options === null || options === void 0 ? void 0 : options.smooth) !== null && _e !== void 0 ? _e : 0.8;\n var 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 DefaultRateLimiter.prototype.getCurrentTimeInSeconds = function () {\n return Date.now() / 1000;\n };\n DefaultRateLimiter.prototype.getSendToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, this.acquireTokenBucket(1)];\n });\n });\n };\n DefaultRateLimiter.prototype.acquireTokenBucket = function (amount) {\n return __awaiter(this, void 0, void 0, function () {\n var delay_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.enabled) {\n return [2];\n }\n this.refillTokenBucket();\n if (!(amount > this.currentCapacity)) return [3, 2];\n delay_1 = ((amount - this.currentCapacity) / this.fillRate) * 1000;\n return [4, new Promise(function (resolve) { return setTimeout(resolve, delay_1); })];\n case 1:\n _a.sent();\n _a.label = 2;\n case 2:\n this.currentCapacity = this.currentCapacity - amount;\n return [2];\n }\n });\n });\n };\n DefaultRateLimiter.prototype.refillTokenBucket = function () {\n var timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n var fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n };\n DefaultRateLimiter.prototype.updateClientSendingRate = function (response) {\n var calculatedRate;\n this.updateMeasuredRate();\n if (isThrottlingError(response)) {\n var 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 var newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n };\n DefaultRateLimiter.prototype.calculateTimeWindow = function () {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n };\n DefaultRateLimiter.prototype.cubicThrottle = function (rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n };\n DefaultRateLimiter.prototype.cubicSuccess = function (timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n };\n DefaultRateLimiter.prototype.enableTokenBucket = function () {\n this.enabled = true;\n };\n DefaultRateLimiter.prototype.updateTokenBucketRate = function (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 DefaultRateLimiter.prototype.updateMeasuredRate = function () {\n var t = this.getCurrentTimeInSeconds();\n var timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n var 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 DefaultRateLimiter.prototype.getPrecise = function (num) {\n return parseFloat(num.toFixed(8));\n };\n return DefaultRateLimiter;\n}());\nexport { DefaultRateLimiter };\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"crypto\");","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}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","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).substr(1));\n}\n\nfunction stringify(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 const uuid = (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]]).toLowerCase(); // 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 REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\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 stringify(rnds);\n}\n\nexport default v4;","export var DEFAULT_RETRY_DELAY_BASE = 100;\nexport var MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport var THROTTLING_RETRY_DELAY_BASE = 500;\nexport var INITIAL_RETRY_TOKENS = 500;\nexport var RETRY_COST = 5;\nexport var TIMEOUT_RETRY_COST = 10;\nexport var NO_RETRY_INCREMENT = 1;\nexport var INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport var REQUEST_HEADER = \"amz-sdk-request\";\n","import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport var defaultDelayDecider = function (delayBase, attempts) {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * Math.pow(2, attempts) * delayBase));\n};\n","import { isClockSkewError, isRetryableByTrait, isThrottlingError, isTransientError, } from \"@aws-sdk/service-error-classification\";\nexport var defaultRetryDecider = function (error) {\n if (!error) {\n return false;\n }\n return isRetryableByTrait(error) || isClockSkewError(error) || isThrottlingError(error) || isTransientError(error);\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { isThrottlingError } from \"@aws-sdk/service-error-classification\";\nimport { v4 } from \"uuid\";\nimport { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, INVOCATION_ID_HEADER, REQUEST_HEADER, THROTTLING_RETRY_DELAY_BASE, } from \"./constants\";\nimport { getDefaultRetryQuota } from \"./defaultRetryQuota\";\nimport { defaultDelayDecider } from \"./delayDecider\";\nimport { defaultRetryDecider } from \"./retryDecider\";\nvar StandardRetryStrategy = (function () {\n function StandardRetryStrategy(maxAttemptsProvider, options) {\n var _a, _b, _c;\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = RETRY_MODES.STANDARD;\n this.retryDecider = (_a = options === null || options === void 0 ? void 0 : options.retryDecider) !== null && _a !== void 0 ? _a : defaultRetryDecider;\n this.delayDecider = (_b = options === null || options === void 0 ? void 0 : options.delayDecider) !== null && _b !== void 0 ? _b : defaultDelayDecider;\n this.retryQuota = (_c = options === null || options === void 0 ? void 0 : options.retryQuota) !== null && _c !== void 0 ? _c : getDefaultRetryQuota(INITIAL_RETRY_TOKENS);\n }\n StandardRetryStrategy.prototype.shouldRetry = function (error, attempts, maxAttempts) {\n return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);\n };\n StandardRetryStrategy.prototype.getMaxAttempts = function () {\n return __awaiter(this, void 0, void 0, function () {\n var maxAttempts, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, this.maxAttemptsProvider()];\n case 1:\n maxAttempts = _a.sent();\n return [3, 3];\n case 2:\n error_1 = _a.sent();\n maxAttempts = DEFAULT_MAX_ATTEMPTS;\n return [3, 3];\n case 3: return [2, maxAttempts];\n }\n });\n });\n };\n StandardRetryStrategy.prototype.retry = function (next, args, options) {\n return __awaiter(this, void 0, void 0, function () {\n var retryTokenAmount, attempts, totalDelay, maxAttempts, request, _loop_1, this_1, state_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n attempts = 0;\n totalDelay = 0;\n return [4, this.getMaxAttempts()];\n case 1:\n maxAttempts = _a.sent();\n request = args.request;\n if (HttpRequest.isInstance(request)) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n _loop_1 = function () {\n var _b, response, output, e_1, err, delay_1;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _c.trys.push([0, 4, , 7]);\n if (HttpRequest.isInstance(request)) {\n request.headers[REQUEST_HEADER] = \"attempt=\" + (attempts + 1) + \"; max=\" + maxAttempts;\n }\n if (!(options === null || options === void 0 ? void 0 : options.beforeRequest)) return [3, 2];\n return [4, options.beforeRequest()];\n case 1:\n _c.sent();\n _c.label = 2;\n case 2: return [4, next(args)];\n case 3:\n _b = _c.sent(), response = _b.response, output = _b.output;\n if (options === null || options === void 0 ? void 0 : options.afterRequest) {\n options.afterRequest(response);\n }\n this_1.retryQuota.releaseRetryTokens(retryTokenAmount);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalDelay;\n return [2, { value: { response: response, output: output } }];\n case 4:\n e_1 = _c.sent();\n err = asSdkError(e_1);\n attempts++;\n if (!this_1.shouldRetry(err, attempts, maxAttempts)) return [3, 6];\n retryTokenAmount = this_1.retryQuota.retrieveRetryTokens(err);\n delay_1 = this_1.delayDecider(isThrottlingError(err) ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE, attempts);\n totalDelay += delay_1;\n return [4, new Promise(function (resolve) { return setTimeout(resolve, delay_1); })];\n case 5:\n _c.sent();\n return [2, \"continue\"];\n case 6:\n if (!err.$metadata) {\n err.$metadata = {};\n }\n err.$metadata.attempts = attempts;\n err.$metadata.totalRetryDelay = totalDelay;\n throw err;\n case 7: return [2];\n }\n });\n };\n this_1 = this;\n _a.label = 2;\n case 2:\n if (!true) return [3, 4];\n return [5, _loop_1()];\n case 3:\n state_1 = _a.sent();\n if (typeof state_1 === \"object\")\n return [2, state_1.value];\n return [3, 2];\n case 4: return [2];\n }\n });\n });\n };\n return StandardRetryStrategy;\n}());\nexport { StandardRetryStrategy };\nvar asSdkError = function (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 { NO_RETRY_INCREMENT, RETRY_COST, TIMEOUT_RETRY_COST } from \"./constants\";\nexport var getDefaultRetryQuota = function (initialRetryTokens, options) {\n var _a, _b, _c;\n var MAX_CAPACITY = initialRetryTokens;\n var noRetryIncrement = (_a = options === null || options === void 0 ? void 0 : options.noRetryIncrement) !== null && _a !== void 0 ? _a : NO_RETRY_INCREMENT;\n var retryCost = (_b = options === null || options === void 0 ? void 0 : options.retryCost) !== null && _b !== void 0 ? _b : RETRY_COST;\n var timeoutRetryCost = (_c = options === null || options === void 0 ? void 0 : options.timeoutRetryCost) !== null && _c !== void 0 ? _c : TIMEOUT_RETRY_COST;\n var availableCapacity = initialRetryTokens;\n var getCapacityAmount = function (error) { return (error.name === \"TimeoutError\" ? timeoutRetryCost : retryCost); };\n var hasRetryTokens = function (error) { return getCapacityAmount(error) <= availableCapacity; };\n var retrieveRetryTokens = function (error) {\n if (!hasRetryTokens(error)) {\n throw new Error(\"No retry token available\");\n }\n var capacityAmount = getCapacityAmount(error);\n availableCapacity -= capacityAmount;\n return capacityAmount;\n };\n var releaseRetryTokens = function (capacityReleaseAmount) {\n availableCapacity += capacityReleaseAmount !== null && capacityReleaseAmount !== void 0 ? capacityReleaseAmount : noRetryIncrement;\n availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);\n };\n return Object.freeze({\n hasRetryTokens: hasRetryTokens,\n retrieveRetryTokens: retrieveRetryTokens,\n releaseRetryTokens: releaseRetryTokens,\n });\n};\n","import { __awaiter, __extends, __generator, __rest } from \"tslib\";\nimport { RETRY_MODES } from \"./config\";\nimport { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nvar AdaptiveRetryStrategy = (function (_super) {\n __extends(AdaptiveRetryStrategy, _super);\n function AdaptiveRetryStrategy(maxAttemptsProvider, options) {\n var _this = this;\n var _a = options !== null && options !== void 0 ? options : {}, rateLimiter = _a.rateLimiter, superOptions = __rest(_a, [\"rateLimiter\"]);\n _this = _super.call(this, maxAttemptsProvider, superOptions) || this;\n _this.rateLimiter = rateLimiter !== null && rateLimiter !== void 0 ? rateLimiter : new DefaultRateLimiter();\n _this.mode = RETRY_MODES.ADAPTIVE;\n return _this;\n }\n AdaptiveRetryStrategy.prototype.retry = function (next, args) {\n return __awaiter(this, void 0, void 0, function () {\n var _this = this;\n return __generator(this, function (_a) {\n return [2, _super.prototype.retry.call(this, next, args, {\n beforeRequest: function () { return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, this.rateLimiter.getSendToken()];\n });\n }); },\n afterRequest: function (response) {\n _this.rateLimiter.updateClientSendingRate(response);\n },\n })];\n });\n });\n };\n return AdaptiveRetryStrategy;\n}(StandardRetryStrategy));\nexport { AdaptiveRetryStrategy };\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { AdaptiveRetryStrategy } from \"./AdaptiveRetryStrategy\";\nimport { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES } from \"./config\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport var ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport var CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) {\n var value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n var 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: function (profile) {\n var value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n var 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 var resolveRetryConfig = function (input) {\n var maxAttempts = normalizeMaxAttempts(input.maxAttempts);\n return __assign(__assign({}, input), { maxAttempts: maxAttempts, retryStrategy: function () { return __awaiter(void 0, void 0, void 0, function () {\n var retryMode;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (input.retryStrategy) {\n return [2, input.retryStrategy];\n }\n return [4, getRetryMode(input.retryMode)];\n case 1:\n retryMode = _a.sent();\n if (retryMode === RETRY_MODES.ADAPTIVE) {\n return [2, new AdaptiveRetryStrategy(maxAttempts)];\n }\n return [2, new StandardRetryStrategy(maxAttempts)];\n }\n });\n }); } });\n};\nvar getRetryMode = function (retryMode) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (typeof retryMode === \"string\") {\n return [2, retryMode];\n }\n return [4, retryMode()];\n case 1: return [2, _a.sent()];\n }\n });\n}); };\nvar normalizeMaxAttempts = function (maxAttempts) {\n if (maxAttempts === void 0) { maxAttempts = DEFAULT_MAX_ATTEMPTS; }\n if (typeof maxAttempts === \"number\") {\n var promisified_1 = Promise.resolve(maxAttempts);\n return function () { return promisified_1; };\n }\n return maxAttempts;\n};\nexport var ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport var CONFIG_RETRY_MODE = \"retry_mode\";\nexport var NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[ENV_RETRY_MODE]; },\n configFileSelector: function (profile) { return profile[CONFIG_RETRY_MODE]; },\n default: DEFAULT_RETRY_MODE,\n};\n","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nexport var retryMiddleware = function (options) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var retryStrategy;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, options.retryStrategy()];\n case 1:\n retryStrategy = _a.sent();\n if (retryStrategy === null || retryStrategy === void 0 ? void 0 : retryStrategy.mode)\n context.userAgent = __spreadArray(__spreadArray([], __read((context.userAgent || []))), [[\"cfg/retry-mode\", retryStrategy.mode]]);\n return [2, retryStrategy.retry(next, args)];\n }\n });\n }); };\n };\n};\nexport var retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport var getRetryPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n}); };\n","import { __assign } from \"tslib\";\nimport { resolveAwsAuthConfig } from \"@aws-sdk/middleware-signing\";\nexport var resolveStsAuthConfig = function (input, _a) {\n var stsClientCtor = _a.stsClientCtor;\n return resolveAwsAuthConfig(__assign(__assign({}, input), { stsClientCtor: stsClientCtor }));\n};\n","import { __assign } from \"tslib\";\nexport function resolveUserAgentConfig(input) {\n return __assign(__assign({}, input), { customUserAgent: typeof input.customUserAgent === \"string\" ? [[input.customUserAgent]] : input.customUserAgent });\n}\n","export var USER_AGENT = \"user-agent\";\nexport var X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport var SPACE = \" \";\nexport var UA_ESCAPE_REGEX = /[^\\!\\#\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w]/g;\n","import { __assign, __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { SPACE, UA_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT } from \"./constants\";\nexport var userAgentMiddleware = function (options) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var request, headers, userAgent, defaultUserAgent, customUserAgent, sdkUserAgentValue, normalUAValue;\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n request = args.request;\n if (!HttpRequest.isInstance(request))\n return [2, next(args)];\n headers = request.headers;\n userAgent = ((_a = context === null || context === void 0 ? void 0 : context.userAgent) === null || _a === void 0 ? void 0 : _a.map(escapeUserAgent)) || [];\n return [4, options.defaultUserAgentProvider()];\n case 1:\n defaultUserAgent = (_c.sent()).map(escapeUserAgent);\n customUserAgent = ((_b = options === null || options === void 0 ? void 0 : options.customUserAgent) === null || _b === void 0 ? void 0 : _b.map(escapeUserAgent)) || [];\n sdkUserAgentValue = __spreadArray(__spreadArray(__spreadArray([], __read(defaultUserAgent)), __read(userAgent)), __read(customUserAgent)).join(SPACE);\n normalUAValue = __spreadArray(__spreadArray([], __read(defaultUserAgent.filter(function (section) { return section.startsWith(\"aws-sdk-\"); }))), __read(customUserAgent)).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 [2, next(__assign(__assign({}, args), { request: request }))];\n }\n });\n }); };\n };\n};\nvar escapeUserAgent = function (_a) {\n var _b = __read(_a, 2), name = _b[0], version = _b[1];\n var prefixSeparatorIndex = name.indexOf(\"/\");\n var prefix = name.substring(0, prefixSeparatorIndex);\n var uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter(function (item) { return item && item.length > 0; })\n .map(function (item) { return item === null || item === void 0 ? void 0 : item.replace(UA_ESCAPE_REGEX, \"_\"); })\n .join(\"/\");\n};\nexport var getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport var getUserAgentPlugin = function (config) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n}); };\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\nvar ASSUME_ROLE_DEFAULT_REGION = \"us-east-1\";\nvar decorateDefaultRegion = function (region) {\n if (typeof region !== \"function\") {\n return region === undefined ? ASSUME_ROLE_DEFAULT_REGION : region;\n }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, region()];\n case 1: return [2, _a.sent()];\n case 2:\n e_1 = _a.sent();\n return [2, ASSUME_ROLE_DEFAULT_REGION];\n case 3: return [2];\n }\n });\n }); };\n};\nexport var getDefaultRoleAssumer = function (stsOptions, stsClientCtor) {\n var stsClient;\n var closureSourceCreds;\n return function (sourceCreds, params) { return __awaiter(void 0, void 0, void 0, function () {\n var logger, region, requestHandler, Credentials;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n closureSourceCreds = sourceCreds;\n if (!stsClient) {\n logger = stsOptions.logger, region = stsOptions.region, requestHandler = stsOptions.requestHandler;\n stsClient = new stsClientCtor(__assign({ logger: logger, credentialDefaultProvider: function () { return function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2, closureSourceCreds];\n }); }); }; }, region: decorateDefaultRegion(region || stsOptions.region) }, (requestHandler ? { requestHandler: requestHandler } : {})));\n }\n return [4, stsClient.send(new AssumeRoleCommand(params))];\n case 1:\n Credentials = (_a.sent()).Credentials;\n if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n throw new Error(\"Invalid response from STS.assumeRole call with role \" + params.RoleArn);\n }\n return [2, {\n accessKeyId: Credentials.AccessKeyId,\n secretAccessKey: Credentials.SecretAccessKey,\n sessionToken: Credentials.SessionToken,\n expiration: Credentials.Expiration,\n }];\n }\n });\n }); };\n};\nexport var getDefaultRoleAssumerWithWebIdentity = function (stsOptions, stsClientCtor) {\n var stsClient;\n return function (params) { return __awaiter(void 0, void 0, void 0, function () {\n var logger, region, requestHandler, Credentials;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!stsClient) {\n logger = stsOptions.logger, region = stsOptions.region, requestHandler = stsOptions.requestHandler;\n stsClient = new stsClientCtor(__assign({ logger: logger, region: decorateDefaultRegion(region || stsOptions.region) }, (requestHandler ? { requestHandler: requestHandler } : {})));\n }\n return [4, stsClient.send(new AssumeRoleWithWebIdentityCommand(params))];\n case 1:\n Credentials = (_a.sent()).Credentials;\n if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n throw new Error(\"Invalid response from STS.assumeRoleWithWebIdentity call with role \" + params.RoleArn);\n }\n return [2, {\n accessKeyId: Credentials.AccessKeyId,\n secretAccessKey: Credentials.SecretAccessKey,\n sessionToken: Credentials.SessionToken,\n expiration: Credentials.Expiration,\n }];\n }\n });\n }); };\n};\nexport var decorateDefaultCredentialProvider = function (provider) {\n return function (input) {\n return provider(__assign({ roleAssumer: getDefaultRoleAssumer(input, input.stsClientCtor), roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input, input.stsClientCtor) }, input));\n };\n};\n","import { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nexport var ENV_KEY = \"AWS_ACCESS_KEY_ID\";\nexport var ENV_SECRET = \"AWS_SECRET_ACCESS_KEY\";\nexport var ENV_SESSION = \"AWS_SESSION_TOKEN\";\nexport var ENV_EXPIRATION = \"AWS_CREDENTIAL_EXPIRATION\";\nexport function fromEnv() {\n return function () {\n var accessKeyId = process.env[ENV_KEY];\n var secretAccessKey = process.env[ENV_SECRET];\n var expiry = process.env[ENV_EXPIRATION];\n if (accessKeyId && secretAccessKey) {\n return Promise.resolve({\n accessKeyId: accessKeyId,\n secretAccessKey: secretAccessKey,\n sessionToken: process.env[ENV_SESSION],\n expiration: expiry ? new Date(expiry) : undefined,\n });\n }\n return Promise.reject(new CredentialsProviderError(\"Unable to find environment variable credentials.\"));\n };\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"buffer\");","import { __assign } from \"tslib\";\nimport { ProviderError } from \"@aws-sdk/property-provider\";\nimport { Buffer } from \"buffer\";\nimport { request } from \"http\";\nexport function httpRequest(options) {\n return new Promise(function (resolve, reject) {\n var _a;\n var req = request(__assign(__assign({ method: \"GET\" }, options), { hostname: (_a = options.hostname) === null || _a === void 0 ? void 0 : _a.replace(/^\\[(.+)\\]$/, \"$1\") }));\n req.on(\"error\", function (err) {\n reject(Object.assign(new ProviderError(\"Unable to connect to instance metadata service\"), err));\n req.destroy();\n });\n req.on(\"timeout\", function () {\n reject(new ProviderError(\"TimeoutError from instance metadata service\"));\n req.destroy();\n });\n req.on(\"response\", function (res) {\n var _a = res.statusCode, statusCode = _a === void 0 ? 400 : _a;\n if (statusCode < 200 || 300 <= statusCode) {\n reject(Object.assign(new ProviderError(\"Error response received from instance metadata service\"), { statusCode: statusCode }));\n req.destroy();\n }\n var chunks = [];\n res.on(\"data\", function (chunk) {\n chunks.push(chunk);\n });\n res.on(\"end\", function () {\n resolve(Buffer.concat(chunks));\n req.destroy();\n });\n });\n req.end();\n });\n}\n","export var isImdsCredentials = function (arg) {\n return 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\";\n};\nexport var fromImdsCredentials = function (creds) { return ({\n accessKeyId: creds.AccessKeyId,\n secretAccessKey: creds.SecretAccessKey,\n sessionToken: creds.Token,\n expiration: new Date(creds.Expiration),\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 var DEFAULT_TIMEOUT = 1000;\nexport var DEFAULT_MAX_RETRIES = 0;\nexport var providerConfigFromInit = function (_a) {\n var _b = _a.maxRetries, maxRetries = _b === void 0 ? DEFAULT_MAX_RETRIES : _b, _c = _a.timeout, timeout = _c === void 0 ? DEFAULT_TIMEOUT : _c;\n return ({ maxRetries: maxRetries, timeout: timeout });\n};\n","export var retry = function (toRetry, maxRetries) {\n var promise = toRetry();\n for (var i = 0; i < maxRetries; i++) {\n promise = promise.catch(toRetry);\n }\n return promise;\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/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 var ENV_CMDS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nexport var ENV_CMDS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nexport var ENV_CMDS_AUTH_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nexport var fromContainerMetadata = function (init) {\n if (init === void 0) { init = {}; }\n var _a = providerConfigFromInit(init), timeout = _a.timeout, maxRetries = _a.maxRetries;\n return function () {\n return retry(function () { return __awaiter(void 0, void 0, void 0, function () {\n var requestOptions, credsResponse, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, getCmdsUri()];\n case 1:\n requestOptions = _c.sent();\n _b = (_a = JSON).parse;\n return [4, requestFromEcsImds(timeout, requestOptions)];\n case 2:\n credsResponse = _b.apply(_a, [_c.sent()]);\n if (!isImdsCredentials(credsResponse)) {\n throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\");\n }\n return [2, fromImdsCredentials(credsResponse)];\n }\n });\n }); }, maxRetries);\n };\n};\nvar requestFromEcsImds = function (timeout, options) { return __awaiter(void 0, void 0, void 0, function () {\n var buffer;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (process.env[ENV_CMDS_AUTH_TOKEN]) {\n options.headers = __assign(__assign({}, options.headers), { Authorization: process.env[ENV_CMDS_AUTH_TOKEN] });\n }\n return [4, httpRequest(__assign(__assign({}, options), { timeout: timeout }))];\n case 1:\n buffer = _a.sent();\n return [2, buffer.toString()];\n }\n });\n}); };\nvar CMDS_IP = \"169.254.170.2\";\nvar GREENGRASS_HOSTS = {\n localhost: true,\n \"127.0.0.1\": true,\n};\nvar GREENGRASS_PROTOCOLS = {\n \"http:\": true,\n \"https:\": true,\n};\nvar getCmdsUri = function () { return __awaiter(void 0, void 0, void 0, function () {\n var parsed;\n return __generator(this, function (_a) {\n if (process.env[ENV_CMDS_RELATIVE_URI]) {\n return [2, {\n hostname: CMDS_IP,\n path: process.env[ENV_CMDS_RELATIVE_URI],\n }];\n }\n if (process.env[ENV_CMDS_FULL_URI]) {\n 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\", false);\n }\n if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {\n throw new CredentialsProviderError(parsed.protocol + \" is not a valid container metadata service protocol\", false);\n }\n return [2, __assign(__assign({}, parsed), { port: parsed.port ? parseInt(parsed.port, 10) : undefined })];\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\", false);\n });\n}); };\n","import { __read, __values } from \"tslib\";\nimport { readFile } from \"fs\";\nimport { homedir } from \"os\";\nimport { join, sep } from \"path\";\nexport var ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nexport var ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nvar swallowError = function () { return ({}); };\nexport var loadSharedConfigFiles = function (init) {\n if (init === void 0) { init = {}; }\n var _a = init.filepath, filepath = _a === void 0 ? process.env[ENV_CREDENTIALS_PATH] || join(getHomeDir(), \".aws\", \"credentials\") : _a, _b = init.configFilepath, configFilepath = _b === void 0 ? process.env[ENV_CONFIG_PATH] || join(getHomeDir(), \".aws\", \"config\") : _b;\n return Promise.all([\n slurpFile(configFilepath).then(parseIni).then(normalizeConfigFile).catch(swallowError),\n slurpFile(filepath).then(parseIni).catch(swallowError),\n ]).then(function (parsedFiles) {\n var _a = __read(parsedFiles, 2), configFile = _a[0], credentialsFile = _a[1];\n return {\n configFile: configFile,\n credentialsFile: credentialsFile,\n };\n });\n};\nvar profileKeyRegex = /^profile\\s([\"'])?([^\\1]+)\\1$/;\nvar normalizeConfigFile = function (data) {\n var e_1, _a;\n var map = {};\n try {\n for (var _b = __values(Object.keys(data)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var matches = void 0;\n if (key === \"default\") {\n map.default = data.default;\n }\n else if ((matches = profileKeyRegex.exec(key))) {\n var _d = __read(matches, 3), _1 = _d[0], _2 = _d[1], normalizedKey = _d[2];\n if (normalizedKey) {\n map[normalizedKey] = data[key];\n }\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return map;\n};\nvar profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nvar parseIni = function (iniData) {\n var e_2, _a;\n var map = {};\n var currentSection;\n try {\n for (var _b = __values(iniData.split(/\\r?\\n/)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var line = _c.value;\n line = line.split(/(^|\\s)[;#]/)[0];\n var section = line.match(/^\\s*\\[([^\\[\\]]+)]\\s*$/);\n if (section) {\n currentSection = section[1];\n if (profileNameBlockList.includes(currentSection)) {\n throw new Error(\"Found invalid profile name \\\"\" + currentSection + \"\\\"\");\n }\n }\n else if (currentSection) {\n var item = line.match(/^\\s*(.+?)\\s*=\\s*(.+?)\\s*$/);\n if (item) {\n map[currentSection] = map[currentSection] || {};\n map[currentSection][item[1]] = item[2];\n }\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_2) throw e_2.error; }\n }\n return map;\n};\nvar slurpFile = function (path) {\n return new Promise(function (resolve, reject) {\n readFile(path, \"utf8\", function (err, data) {\n if (err) {\n reject(err);\n }\n else {\n resolve(data);\n }\n });\n });\n};\nexport var getHomeDir = function () {\n var _a = process.env, HOME = _a.HOME, USERPROFILE = _a.USERPROFILE, HOMEPATH = _a.HOMEPATH, _b = _a.HOMEDRIVE, HOMEDRIVE = _b === void 0 ? \"C:\" + sep : _b;\n if (HOME)\n return HOME;\n if (USERPROFILE)\n return USERPROFILE;\n if (HOMEPATH)\n return \"\" + HOMEDRIVE + HOMEPATH;\n return homedir();\n};\n","import { chain, memoize } from \"@aws-sdk/property-provider\";\nimport { fromEnv } from \"./fromEnv\";\nimport { fromSharedConfigFiles } from \"./fromSharedConfigFiles\";\nimport { fromStatic } from \"./fromStatic\";\nexport var loadConfig = function (_a, configuration) {\n var environmentVariableSelector = _a.environmentVariableSelector, configFileSelector = _a.configFileSelector, defaultValue = _a.default;\n if (configuration === void 0) { configuration = {}; }\n return memoize(chain(fromEnv(environmentVariableSelector), fromSharedConfigFiles(configFileSelector, configuration), fromStatic(defaultValue)));\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nexport var fromEnv = function (envVarSelector) {\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var config;\n return __generator(this, function (_a) {\n try {\n config = envVarSelector(process.env);\n if (config === undefined) {\n throw new Error();\n }\n return [2, config];\n }\n catch (e) {\n throw new CredentialsProviderError(e.message || \"Cannot load config from environment variables with getter: \" + envVarSelector);\n }\n return [2];\n });\n }); };\n};\n","import { __assign, __awaiter, __generator, __rest } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { loadSharedConfigFiles, } from \"@aws-sdk/shared-ini-file-loader\";\nvar DEFAULT_PROFILE = \"default\";\nexport var ENV_PROFILE = \"AWS_PROFILE\";\nexport var fromSharedConfigFiles = function (configSelector, _a) {\n if (_a === void 0) { _a = {}; }\n var _b = _a.preferredFile, preferredFile = _b === void 0 ? \"config\" : _b, init = __rest(_a, [\"preferredFile\"]);\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var _a, loadedConfig, _b, profile, _c, configFile, credentialsFile, profileFromCredentials, profileFromConfig, mergedProfile, configValue;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n _a = init.loadedConfig, loadedConfig = _a === void 0 ? loadSharedConfigFiles(init) : _a, _b = init.profile, profile = _b === void 0 ? process.env[ENV_PROFILE] || DEFAULT_PROFILE : _b;\n return [4, loadedConfig];\n case 1:\n _c = _d.sent(), configFile = _c.configFile, credentialsFile = _c.credentialsFile;\n profileFromCredentials = credentialsFile[profile] || {};\n profileFromConfig = configFile[profile] || {};\n mergedProfile = preferredFile === \"config\"\n ? __assign(__assign({}, profileFromCredentials), profileFromConfig) : __assign(__assign({}, profileFromConfig), profileFromCredentials);\n try {\n configValue = configSelector(mergedProfile);\n if (configValue === undefined) {\n throw new Error();\n }\n return [2, configValue];\n }\n catch (e) {\n throw new CredentialsProviderError(e.message ||\n \"Cannot load config for profile \" + profile + \" in SDK configuration files with getter: \" + configSelector);\n }\n return [2];\n }\n });\n }); };\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { fromStatic as convertToProvider } from \"@aws-sdk/property-provider\";\nvar isFunction = function (func) { return typeof func === \"function\"; };\nexport var fromStatic = function (defaultValue) {\n return isFunction(defaultValue) ? function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2, defaultValue()];\n }); }); } : convertToProvider(defaultValue);\n};\n","import { parseQueryString } from \"@aws-sdk/querystring-parser\";\nexport var parseUrl = function (url) {\n var _a = new URL(url), hostname = _a.hostname, pathname = _a.pathname, port = _a.port, protocol = _a.protocol, search = _a.search;\n var query;\n if (search) {\n query = parseQueryString(search);\n }\n return {\n hostname: hostname,\n port: port ? parseInt(port) : undefined,\n protocol: protocol,\n path: pathname,\n query: query,\n };\n};\n","import { __read, __values } from \"tslib\";\nexport function parseQueryString(querystring) {\n var e_1, _a;\n var query = {};\n querystring = querystring.replace(/^\\?/, \"\");\n if (querystring) {\n try {\n for (var _b = __values(querystring.split(\"&\")), _c = _b.next(); !_c.done; _c = _b.next()) {\n var pair = _c.value;\n var _d = __read(pair.split(\"=\"), 2), key = _d[0], _e = _d[1], value = _e === void 0 ? null : _e;\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 catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n return query;\n}\n","export var ENV_ENDPOINT_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT\";\nexport var CONFIG_ENDPOINT_NAME = \"ec2_metadata_service_endpoint\";\nexport var ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[ENV_ENDPOINT_NAME]; },\n configFileSelector: function (profile) { return 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 var ENV_ENDPOINT_MODE_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE\";\nexport var CONFIG_ENDPOINT_MODE_NAME = \"ec2_metadata_service_endpoint_mode\";\nexport var ENDPOINT_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[ENV_ENDPOINT_MODE_NAME]; },\n configFileSelector: function (profile) { return profile[CONFIG_ENDPOINT_MODE_NAME]; },\n default: EndpointMode.IPv4,\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\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\";\nvar IMDS_PATH = \"/latest/meta-data/iam/security-credentials/\";\nvar IMDS_TOKEN_PATH = \"/latest/api/token\";\nexport var fromInstanceMetadata = function (init) {\n if (init === void 0) { init = {}; }\n var disableFetchToken = false;\n var _a = providerConfigFromInit(init), timeout = _a.timeout, maxRetries = _a.maxRetries;\n var getCredentials = function (maxRetries, options) { return __awaiter(void 0, void 0, void 0, function () {\n var profile;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, retry(function () { return __awaiter(void 0, void 0, void 0, function () {\n var profile, err_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, getProfile(options)];\n case 1:\n profile = _a.sent();\n return [3, 3];\n case 2:\n err_1 = _a.sent();\n if (err_1.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err_1;\n case 3: return [2, profile];\n }\n });\n }); }, maxRetries)];\n case 1:\n profile = (_a.sent()).trim();\n return [2, retry(function () { return __awaiter(void 0, void 0, void 0, function () {\n var creds, err_2;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, getCredentialsFromProfile(profile, options)];\n case 1:\n creds = _a.sent();\n return [3, 3];\n case 2:\n err_2 = _a.sent();\n if (err_2.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err_2;\n case 3: return [2, creds];\n }\n });\n }); }, maxRetries)];\n }\n });\n }); };\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var endpoint, token, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, getInstanceMetadataEndpoint()];\n case 1:\n endpoint = _a.sent();\n if (!disableFetchToken) return [3, 2];\n return [2, getCredentials(maxRetries, __assign(__assign({}, endpoint), { timeout: timeout }))];\n case 2:\n token = void 0;\n _a.label = 3;\n case 3:\n _a.trys.push([3, 5, , 6]);\n return [4, getMetadataToken(__assign(__assign({}, endpoint), { timeout: timeout }))];\n case 4:\n token = (_a.sent()).toString();\n return [3, 6];\n case 5:\n error_1 = _a.sent();\n if ((error_1 === null || error_1 === void 0 ? void 0 : error_1.statusCode) === 400) {\n throw Object.assign(error_1, {\n message: \"EC2 Metadata token request returned error\",\n });\n }\n else if (error_1.message === \"TimeoutError\" || [403, 404, 405].includes(error_1.statusCode)) {\n disableFetchToken = true;\n }\n return [2, getCredentials(maxRetries, __assign(__assign({}, endpoint), { timeout: timeout }))];\n case 6: return [2, getCredentials(maxRetries, __assign(__assign({}, endpoint), { headers: {\n \"x-aws-ec2-metadata-token\": token,\n }, timeout: timeout }))];\n }\n });\n }); };\n};\nvar getMetadataToken = function (options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, httpRequest(__assign(__assign({}, options), { path: IMDS_TOKEN_PATH, method: \"PUT\", headers: {\n \"x-aws-ec2-metadata-token-ttl-seconds\": \"21600\",\n } }))];\n });\n}); };\nvar getProfile = function (options) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, httpRequest(__assign(__assign({}, options), { path: IMDS_PATH }))];\n case 1: return [2, (_a.sent()).toString()];\n }\n}); }); };\nvar getCredentialsFromProfile = function (profile, options) { return __awaiter(void 0, void 0, void 0, function () {\n var credsResponse, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _b = (_a = JSON).parse;\n return [4, httpRequest(__assign(__assign({}, options), { path: IMDS_PATH + profile }))];\n case 1:\n credsResponse = _b.apply(_a, [(_c.sent()).toString()]);\n if (!isImdsCredentials(credsResponse)) {\n throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\");\n }\n return [2, fromImdsCredentials(credsResponse)];\n }\n });\n}); };\n","import { __awaiter, __generator } from \"tslib\";\nimport { loadConfig } from \"@aws-sdk/node-config-provider\";\nimport { parseUrl } from \"@aws-sdk/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 var getInstanceMetadataEndpoint = function () { return __awaiter(void 0, void 0, void 0, function () { var _a, _b; return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = parseUrl;\n return [4, getFromEndpointConfig()];\n case 1:\n _b = (_c.sent());\n if (_b) return [3, 3];\n return [4, getFromEndpointModeConfig()];\n case 2:\n _b = (_c.sent());\n _c.label = 3;\n case 3: return [2, _a.apply(void 0, [_b])];\n }\n}); }); };\nvar getFromEndpointConfig = function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2, loadConfig(ENDPOINT_CONFIG_OPTIONS)()];\n}); }); };\nvar getFromEndpointModeConfig = function () { return __awaiter(void 0, void 0, void 0, function () {\n var endpointMode;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, loadConfig(ENDPOINT_MODE_CONFIG_OPTIONS)()];\n case 1:\n endpointMode = _a.sent();\n switch (endpointMode) {\n case EndpointMode.IPv4:\n return [2, InstanceMetadataEndpoint.IPv4];\n case EndpointMode.IPv6:\n return [2, InstanceMetadataEndpoint.IPv6];\n default:\n throw new Error(\"Unsupported endpoint mode: \" + endpointMode + \".\" + (\" Select from \" + Object.values(EndpointMode)));\n }\n return [2];\n }\n });\n}); };\n","import { isArrayBuffer } from \"@aws-sdk/is-array-buffer\";\nimport { Buffer } from \"buffer\";\nexport var fromArrayBuffer = function (input, offset, length) {\n if (offset === void 0) { offset = 0; }\n if (length === void 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 var fromString = function (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 { fromArrayBuffer, fromString } from \"@aws-sdk/util-buffer-from\";\nimport { Buffer } from \"buffer\";\nimport { createHash, createHmac } from \"crypto\";\nvar Hash = (function () {\n function Hash(algorithmIdentifier, secret) {\n this.hash = secret ? createHmac(algorithmIdentifier, castSourceData(secret)) : createHash(algorithmIdentifier);\n }\n Hash.prototype.update = function (toHash, encoding) {\n this.hash.update(castSourceData(toHash, encoding));\n };\n Hash.prototype.digest = function () {\n return Promise.resolve(this.hash.digest());\n };\n return Hash;\n}());\nexport { Hash };\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 { __values } from \"tslib\";\nimport { escapeUri } from \"@aws-sdk/util-uri-escape\";\nexport function buildQueryString(query) {\n var e_1, _a;\n var parts = [];\n try {\n for (var _b = __values(Object.keys(query).sort()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var value = query[key];\n key = escapeUri(key);\n if (Array.isArray(value)) {\n for (var i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(key + \"=\" + escapeUri(value[i]));\n }\n }\n else {\n var qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += \"=\" + escapeUri(value);\n }\n parts.push(qsEntry);\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return parts.join(\"&\");\n}\n","export var NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n","import { __values } from \"tslib\";\nvar getTransformedHeaders = function (headers) {\n var e_1, _a;\n var transformedHeaders = {};\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var name = _c.value;\n var headerValues = headers[name];\n transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return transformedHeaders;\n};\nexport { getTransformedHeaders };\n","import { Readable } from \"stream\";\nexport function writeRequestBody(httpRequest, request) {\n var expect = request.headers[\"Expect\"] || request.headers[\"expect\"];\n if (expect === \"100-continue\") {\n httpRequest.on(\"continue\", function () {\n writeBody(httpRequest, request.body);\n });\n }\n else {\n writeBody(httpRequest, request.body);\n }\n}\nfunction writeBody(httpRequest, body) {\n if (body instanceof Readable) {\n body.pipe(httpRequest);\n }\n else if (body) {\n httpRequest.end(Buffer.from(body));\n }\n else {\n httpRequest.end();\n }\n}\n","import { HttpResponse } from \"@aws-sdk/protocol-http\";\nimport { buildQueryString } from \"@aws-sdk/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 { setSocketTimeout } from \"./set-socket-timeout\";\nimport { writeRequestBody } from \"./write-request-body\";\nvar NodeHttpHandler = (function () {\n function NodeHttpHandler(_a) {\n var _b = _a === void 0 ? {} : _a, connectionTimeout = _b.connectionTimeout, socketTimeout = _b.socketTimeout, httpAgent = _b.httpAgent, httpsAgent = _b.httpsAgent;\n this.metadata = { handlerProtocol: \"http/1.1\" };\n this.connectionTimeout = connectionTimeout;\n this.socketTimeout = socketTimeout;\n var keepAlive = true;\n var maxSockets = 50;\n this.httpAgent = httpAgent || new hAgent({ keepAlive: keepAlive, maxSockets: maxSockets });\n this.httpsAgent = httpsAgent || new hsAgent({ keepAlive: keepAlive, maxSockets: maxSockets });\n }\n NodeHttpHandler.prototype.destroy = function () {\n this.httpAgent.destroy();\n this.httpsAgent.destroy();\n };\n NodeHttpHandler.prototype.handle = function (request, _a) {\n var _this = this;\n var _b = _a === void 0 ? {} : _a, abortSignal = _b.abortSignal;\n return new Promise(function (resolve, reject) {\n if (abortSignal === null || abortSignal === void 0 ? void 0 : abortSignal.aborted) {\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n var isSSL = request.protocol === \"https:\";\n var queryString = buildQueryString(request.query || {});\n var nodeHttpsOptions = {\n headers: request.headers,\n host: request.hostname,\n method: request.method,\n path: queryString ? request.path + \"?\" + queryString : request.path,\n port: request.port,\n agent: isSSL ? _this.httpsAgent : _this.httpAgent,\n };\n var requestFunc = isSSL ? hsRequest : hRequest;\n var req = requestFunc(nodeHttpsOptions, function (res) {\n var httpResponse = new HttpResponse({\n statusCode: res.statusCode || -1,\n headers: getTransformedHeaders(res.headers),\n body: res,\n });\n resolve({ response: httpResponse });\n });\n req.on(\"error\", function (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 setConnectionTimeout(req, reject, _this.connectionTimeout);\n setSocketTimeout(req, reject, _this.socketTimeout);\n if (abortSignal) {\n abortSignal.onabort = function () {\n req.abort();\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n }\n writeRequestBody(req, request);\n });\n };\n return NodeHttpHandler;\n}());\nexport { NodeHttpHandler };\n","export var setConnectionTimeout = function (request, reject, timeoutInMs) {\n if (timeoutInMs === void 0) { timeoutInMs = 0; }\n if (!timeoutInMs) {\n return;\n }\n request.on(\"socket\", function (socket) {\n if (socket.connecting) {\n var timeoutId_1 = setTimeout(function () {\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);\n socket.on(\"connect\", function () {\n clearTimeout(timeoutId_1);\n });\n }\n });\n};\n","export var setSocketTimeout = function (request, reject, timeoutInMs) {\n if (timeoutInMs === void 0) { timeoutInMs = 0; }\n request.setTimeout(timeoutInMs, function () {\n request.destroy();\n reject(Object.assign(new Error(\"Connection timed out after \" + timeoutInMs + \" ms\"), { name: \"TimeoutError\" }));\n });\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"http2\");","import { __assign, __values } from \"tslib\";\nimport { HttpResponse } from \"@aws-sdk/protocol-http\";\nimport { buildQueryString } from \"@aws-sdk/querystring-builder\";\nimport { connect, constants } from \"http2\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { writeRequestBody } from \"./write-request-body\";\nvar NodeHttp2Handler = (function () {\n function NodeHttp2Handler(_a) {\n var _b = _a === void 0 ? {} : _a, requestTimeout = _b.requestTimeout, sessionTimeout = _b.sessionTimeout, disableConcurrentStreams = _b.disableConcurrentStreams;\n this.metadata = { handlerProtocol: \"h2\" };\n this.requestTimeout = requestTimeout;\n this.sessionTimeout = sessionTimeout;\n this.disableConcurrentStreams = disableConcurrentStreams;\n this.sessionCache = new Map();\n }\n NodeHttp2Handler.prototype.destroy = function () {\n var e_1, _a;\n var _this = this;\n try {\n for (var _b = __values(this.sessionCache.values()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var sessions = _c.value;\n sessions.forEach(function (session) { return _this.destroySession(session); });\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n this.sessionCache.clear();\n };\n NodeHttp2Handler.prototype.handle = function (request, _a) {\n var _this = this;\n var _b = _a === void 0 ? {} : _a, abortSignal = _b.abortSignal;\n return new Promise(function (resolve, rejectOriginal) {\n var _a;\n var fulfilled = false;\n if (abortSignal === null || abortSignal === void 0 ? void 0 : abortSignal.aborted) {\n fulfilled = true;\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n rejectOriginal(abortError);\n return;\n }\n var hostname = request.hostname, method = request.method, port = request.port, protocol = request.protocol, path = request.path, query = request.query;\n var authority = protocol + \"//\" + hostname + (port ? \":\" + port : \"\");\n var session = _this.getSession(authority, _this.disableConcurrentStreams || false);\n var reject = function (err) {\n if (_this.disableConcurrentStreams) {\n _this.destroySession(session);\n }\n fulfilled = true;\n rejectOriginal(err);\n };\n var queryString = buildQueryString(query || {});\n var req = session.request(__assign(__assign({}, request.headers), (_a = {}, _a[constants.HTTP2_HEADER_PATH] = queryString ? path + \"?\" + queryString : path, _a[constants.HTTP2_HEADER_METHOD] = method, _a)));\n req.on(\"response\", function (headers) {\n var 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 (_this.disableConcurrentStreams) {\n session.close();\n _this.deleteSessionFromCache(authority, session);\n }\n });\n var requestTimeout = _this.requestTimeout;\n if (requestTimeout) {\n req.setTimeout(requestTimeout, function () {\n req.close();\n var timeoutError = new Error(\"Stream timed out because of no activity for \" + requestTimeout + \" ms\");\n timeoutError.name = \"TimeoutError\";\n reject(timeoutError);\n });\n }\n if (abortSignal) {\n abortSignal.onabort = function () {\n req.close();\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n }\n req.on(\"frameError\", function (type, code, id) {\n reject(new Error(\"Frame type id \" + type + \" in stream id \" + id + \" has failed with code \" + code + \".\"));\n });\n req.on(\"error\", reject);\n req.on(\"aborted\", function () {\n reject(new Error(\"HTTP/2 stream is abnormally aborted in mid-communication with result code \" + req.rstCode + \".\"));\n });\n req.on(\"close\", function () {\n if (_this.disableConcurrentStreams) {\n session.destroy();\n }\n if (!fulfilled) {\n reject(new Error(\"Unexpected error: http2 request did not get a response\"));\n }\n });\n writeRequestBody(req, request);\n });\n };\n NodeHttp2Handler.prototype.getSession = function (authority, disableConcurrentStreams) {\n var _this = this;\n var sessionCache = this.sessionCache;\n var existingSessions = sessionCache.get(authority) || [];\n if (existingSessions.length > 0 && !disableConcurrentStreams)\n return existingSessions[0];\n var newSession = connect(authority);\n var destroySessionCb = function () {\n _this.destroySession(newSession);\n _this.deleteSessionFromCache(authority, newSession);\n };\n newSession.on(\"goaway\", destroySessionCb);\n newSession.on(\"error\", destroySessionCb);\n newSession.on(\"frameError\", destroySessionCb);\n var sessionTimeout = this.sessionTimeout;\n if (sessionTimeout) {\n newSession.setTimeout(sessionTimeout, destroySessionCb);\n }\n existingSessions.push(newSession);\n sessionCache.set(authority, existingSessions);\n return newSession;\n };\n NodeHttp2Handler.prototype.destroySession = function (session) {\n if (!session.destroyed) {\n session.destroy();\n }\n };\n NodeHttp2Handler.prototype.deleteSessionFromCache = function (authority, session) {\n var existingSessions = this.sessionCache.get(authority) || [];\n if (!existingSessions.includes(session)) {\n return;\n }\n this.sessionCache.set(authority, existingSessions.filter(function (s) { return s !== session; }));\n };\n return NodeHttp2Handler;\n}());\nexport { NodeHttp2Handler };\n","import { __extends } from \"tslib\";\nimport { Writable } from \"stream\";\nvar Collector = (function (_super) {\n __extends(Collector, _super);\n function Collector() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.bufferedBytes = [];\n return _this;\n }\n Collector.prototype._write = function (chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n };\n return Collector;\n}(Writable));\nexport { Collector };\n","import { Collector } from \"./collector\";\nexport var streamCollector = function (stream) {\n return new Promise(function (resolve, reject) {\n var collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", function (err) {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n var bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n};\n","import { fromArrayBuffer, fromString } from \"@aws-sdk/util-buffer-from\";\nvar BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nexport function 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 var buffer = fromString(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n}\nexport function toBase64(input) {\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n}\n","import { lstatSync } from \"fs\";\nexport function calculateBodyLength(body) {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.from(body).length;\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.path === \"string\") {\n return lstatSync(body.path).size;\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"process\");","import { __assign } from \"tslib\";\nimport { SENSITIVE_STRING } from \"@aws-sdk/smithy-client\";\nexport var AccountInfo;\n(function (AccountInfo) {\n AccountInfo.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AccountInfo || (AccountInfo = {}));\nexport var GetRoleCredentialsRequest;\n(function (GetRoleCredentialsRequest) {\n GetRoleCredentialsRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(GetRoleCredentialsRequest || (GetRoleCredentialsRequest = {}));\nexport var RoleCredentials;\n(function (RoleCredentials) {\n RoleCredentials.filterSensitiveLog = function (obj) { return (__assign(__assign(__assign({}, obj), (obj.secretAccessKey && { secretAccessKey: SENSITIVE_STRING })), (obj.sessionToken && { sessionToken: SENSITIVE_STRING }))); };\n})(RoleCredentials || (RoleCredentials = {}));\nexport var GetRoleCredentialsResponse;\n(function (GetRoleCredentialsResponse) {\n GetRoleCredentialsResponse.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.roleCredentials && { roleCredentials: RoleCredentials.filterSensitiveLog(obj.roleCredentials) }))); };\n})(GetRoleCredentialsResponse || (GetRoleCredentialsResponse = {}));\nexport var InvalidRequestException;\n(function (InvalidRequestException) {\n InvalidRequestException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(InvalidRequestException || (InvalidRequestException = {}));\nexport var ResourceNotFoundException;\n(function (ResourceNotFoundException) {\n ResourceNotFoundException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ResourceNotFoundException || (ResourceNotFoundException = {}));\nexport var TooManyRequestsException;\n(function (TooManyRequestsException) {\n TooManyRequestsException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(TooManyRequestsException || (TooManyRequestsException = {}));\nexport var UnauthorizedException;\n(function (UnauthorizedException) {\n UnauthorizedException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(UnauthorizedException || (UnauthorizedException = {}));\nexport var ListAccountRolesRequest;\n(function (ListAccountRolesRequest) {\n ListAccountRolesRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(ListAccountRolesRequest || (ListAccountRolesRequest = {}));\nexport var RoleInfo;\n(function (RoleInfo) {\n RoleInfo.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(RoleInfo || (RoleInfo = {}));\nexport var ListAccountRolesResponse;\n(function (ListAccountRolesResponse) {\n ListAccountRolesResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ListAccountRolesResponse || (ListAccountRolesResponse = {}));\nexport var ListAccountsRequest;\n(function (ListAccountsRequest) {\n ListAccountsRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(ListAccountsRequest || (ListAccountsRequest = {}));\nexport var ListAccountsResponse;\n(function (ListAccountsResponse) {\n ListAccountsResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ListAccountsResponse || (ListAccountsResponse = {}));\nexport var LogoutRequest;\n(function (LogoutRequest) {\n LogoutRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(LogoutRequest || (LogoutRequest = {}));\n","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { loadConfig } from \"@aws-sdk/node-config-provider\";\nimport { platform, release } from \"os\";\nimport { env, versions } from \"process\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport var UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport var UA_APP_ID_INI_NAME = \"sdk-ua-app-id\";\nexport var defaultUserAgent = function (_a) {\n var serviceId = _a.serviceId, clientVersion = _a.clientVersion;\n var sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"os/\" + platform(), release()],\n [\"lang/js\"],\n [\"md/nodejs\", \"\" + versions.node],\n ];\n var 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 var appIdPromise = loadConfig({\n environmentVariableSelector: function (env) { return env[UA_APP_ID_ENV_NAME]; },\n configFileSelector: function (profile) { return profile[UA_APP_ID_INI_NAME]; },\n default: undefined,\n })();\n var resolvedUserAgent = undefined;\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var appId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!resolvedUserAgent) return [3, 2];\n return [4, appIdPromise];\n case 1:\n appId = _a.sent();\n resolvedUserAgent = appId ? __spreadArray(__spreadArray([], __read(sections)), [[\"app/\" + appId]]) : __spreadArray([], __read(sections));\n _a.label = 2;\n case 2: return [2, resolvedUserAgent];\n }\n });\n }); };\n};\n","import { fromArrayBuffer, fromString } from \"@aws-sdk/util-buffer-from\";\nexport var fromUtf8 = function (input) {\n var buf = fromString(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\nexport var toUtf8 = function (input) {\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { getRegionInfo } from \"@aws-sdk/config-resolver\";\nvar regionHash = {\n \"ap-northeast-1\": {\n variants: [\n {\n hostname: \"portal.sso.ap-northeast-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-northeast-1\",\n },\n \"ap-northeast-2\": {\n variants: [\n {\n hostname: \"portal.sso.ap-northeast-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-northeast-2\",\n },\n \"ap-south-1\": {\n variants: [\n {\n hostname: \"portal.sso.ap-south-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-south-1\",\n },\n \"ap-southeast-1\": {\n variants: [\n {\n hostname: \"portal.sso.ap-southeast-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-southeast-1\",\n },\n \"ap-southeast-2\": {\n variants: [\n {\n hostname: \"portal.sso.ap-southeast-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-southeast-2\",\n },\n \"ca-central-1\": {\n variants: [\n {\n hostname: \"portal.sso.ca-central-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ca-central-1\",\n },\n \"eu-central-1\": {\n variants: [\n {\n hostname: \"portal.sso.eu-central-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-central-1\",\n },\n \"eu-north-1\": {\n variants: [\n {\n hostname: \"portal.sso.eu-north-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-north-1\",\n },\n \"eu-west-1\": {\n variants: [\n {\n hostname: \"portal.sso.eu-west-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-west-1\",\n },\n \"eu-west-2\": {\n variants: [\n {\n hostname: \"portal.sso.eu-west-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-west-2\",\n },\n \"eu-west-3\": {\n variants: [\n {\n hostname: \"portal.sso.eu-west-3.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-west-3\",\n },\n \"sa-east-1\": {\n variants: [\n {\n hostname: \"portal.sso.sa-east-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"sa-east-1\",\n },\n \"us-east-1\": {\n variants: [\n {\n hostname: \"portal.sso.us-east-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-east-1\",\n },\n \"us-east-2\": {\n variants: [\n {\n hostname: \"portal.sso.us-east-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-east-2\",\n },\n \"us-gov-west-1\": {\n variants: [\n {\n hostname: \"portal.sso.us-gov-west-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-gov-west-1\",\n },\n \"us-west-2\": {\n variants: [\n {\n hostname: \"portal.sso.us-west-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-west-2\",\n },\n};\nvar partitionHash = {\n aws: {\n regions: [\n \"af-south-1\",\n \"ap-east-1\",\n \"ap-northeast-1\",\n \"ap-northeast-2\",\n \"ap-northeast-3\",\n \"ap-south-1\",\n \"ap-southeast-1\",\n \"ap-southeast-2\",\n \"ap-southeast-3\",\n \"ca-central-1\",\n \"eu-central-1\",\n \"eu-north-1\",\n \"eu-south-1\",\n \"eu-west-1\",\n \"eu-west-2\",\n \"eu-west-3\",\n \"me-south-1\",\n \"sa-east-1\",\n \"us-east-1\",\n \"us-east-2\",\n \"us-west-1\",\n \"us-west-2\",\n ],\n regionRegex: \"^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"portal.sso-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"portal.sso.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-cn\": {\n regions: [\"cn-north-1\", \"cn-northwest-1\"],\n regionRegex: \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.amazonaws.com.cn\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.amazonaws.com.cn\",\n tags: [\"fips\"],\n },\n {\n hostname: \"portal.sso-fips.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"portal.sso.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-iso\": {\n regions: [\"us-iso-east-1\", \"us-iso-west-1\"],\n regionRegex: \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.c2s.ic.gov\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.c2s.ic.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-iso-b\": {\n regions: [\"us-isob-east-1\"],\n regionRegex: \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.sc2s.sgov.gov\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.sc2s.sgov.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-us-gov\": {\n regions: [\"us-gov-east-1\", \"us-gov-west-1\"],\n regionRegex: \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"portal.sso-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"portal.sso.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n};\nexport var defaultRegionInfoProvider = function (region, options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, getRegionInfo(region, __assign(__assign({}, options), { signingService: \"awsssoportal\", regionHash: regionHash, partitionHash: partitionHash }))];\n });\n}); };\n","import { __extends } from \"tslib\";\nimport { resolveEndpointsConfig, resolveRegionConfig, } from \"@aws-sdk/config-resolver\";\nimport { getContentLengthPlugin } from \"@aws-sdk/middleware-content-length\";\nimport { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@aws-sdk/middleware-retry\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { Client as __Client, } from \"@aws-sdk/smithy-client\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nvar SSOClient = (function (_super) {\n __extends(SSOClient, _super);\n function SSOClient(configuration) {\n var _this = this;\n var _config_0 = __getRuntimeConfig(configuration);\n var _config_1 = resolveRegionConfig(_config_0);\n var _config_2 = resolveEndpointsConfig(_config_1);\n var _config_3 = resolveRetryConfig(_config_2);\n var _config_4 = resolveHostHeaderConfig(_config_3);\n var _config_5 = resolveUserAgentConfig(_config_4);\n _this = _super.call(this, _config_5) || this;\n _this.config = _config_5;\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(getUserAgentPlugin(_this.config));\n return _this;\n }\n SSOClient.prototype.destroy = function () {\n _super.prototype.destroy.call(this);\n };\n return SSOClient;\n}(__Client));\nexport { SSOClient };\n","import { __assign } from \"tslib\";\nimport packageInfo from \"../package.json\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@aws-sdk/config-resolver\";\nimport { Hash } from \"@aws-sdk/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@aws-sdk/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@aws-sdk/node-config-provider\";\nimport { NodeHttpHandler, streamCollector } from \"@aws-sdk/node-http-handler\";\nimport { fromBase64, toBase64 } from \"@aws-sdk/util-base64-node\";\nimport { calculateBodyLength } from \"@aws-sdk/util-body-length-node\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { fromUtf8, toUtf8 } from \"@aws-sdk/util-utf8-node\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { emitWarningIfUnsupportedVersion } from \"@aws-sdk/smithy-client\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;\n emitWarningIfUnsupportedVersion(process.version);\n var clientSharedValues = getSharedRuntimeConfig(config);\n return __assign(__assign(__assign({}, clientSharedValues), config), { runtime: \"node\", base64Decoder: (_a = config === null || config === void 0 ? void 0 : config.base64Decoder) !== null && _a !== void 0 ? _a : fromBase64, base64Encoder: (_b = config === null || config === void 0 ? void 0 : config.base64Encoder) !== null && _b !== void 0 ? _b : toBase64, bodyLengthChecker: (_c = config === null || config === void 0 ? void 0 : config.bodyLengthChecker) !== null && _c !== void 0 ? _c : calculateBodyLength, defaultUserAgentProvider: (_d = config === null || config === void 0 ? void 0 : config.defaultUserAgentProvider) !== null && _d !== void 0 ? _d : defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }), maxAttempts: (_e = config === null || config === void 0 ? void 0 : config.maxAttempts) !== null && _e !== void 0 ? _e : loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS), region: (_f = config === null || config === void 0 ? void 0 : config.region) !== null && _f !== void 0 ? _f : loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS), requestHandler: (_g = config === null || config === void 0 ? void 0 : config.requestHandler) !== null && _g !== void 0 ? _g : new NodeHttpHandler(), retryMode: (_h = config === null || config === void 0 ? void 0 : config.retryMode) !== null && _h !== void 0 ? _h : loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: (_j = config === null || config === void 0 ? void 0 : config.sha256) !== null && _j !== void 0 ? _j : Hash.bind(null, \"sha256\"), streamCollector: (_k = config === null || config === void 0 ? void 0 : config.streamCollector) !== null && _k !== void 0 ? _k : streamCollector, useDualstackEndpoint: (_l = config === null || config === void 0 ? void 0 : config.useDualstackEndpoint) !== null && _l !== void 0 ? _l : loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), useFipsEndpoint: (_m = config === null || config === void 0 ? void 0 : config.useFipsEndpoint) !== null && _m !== void 0 ? _m : loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: (_o = config === null || config === void 0 ? void 0 : config.utf8Decoder) !== null && _o !== void 0 ? _o : fromUtf8, utf8Encoder: (_p = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _p !== void 0 ? _p : toUtf8 });\n};\n","import { parseUrl } from \"@aws-sdk/url-parser\";\nimport { defaultRegionInfoProvider } from \"./endpoints\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e;\n return ({\n apiVersion: \"2019-06-10\",\n disableHostPrefix: (_a = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _a !== void 0 ? _a : false,\n logger: (_b = config === null || config === void 0 ? void 0 : config.logger) !== null && _b !== void 0 ? _b : {},\n regionInfoProvider: (_c = config === null || config === void 0 ? void 0 : config.regionInfoProvider) !== null && _c !== void 0 ? _c : defaultRegionInfoProvider,\n serviceId: (_d = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _d !== void 0 ? _d : \"SSO\",\n urlParser: (_e = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _e !== void 0 ? _e : parseUrl,\n });\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { HttpRequest as __HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, } from \"@aws-sdk/smithy-client\";\nexport var serializeAws_restJson1GetRoleCredentialsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/federation/credentials\";\n query = __assign(__assign({}, (input.roleName !== undefined && { role_name: input.roleName })), (input.accountId !== undefined && { account_id: input.accountId }));\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"GET\",\n headers: headers,\n path: resolvedPath,\n query: query,\n body: body,\n })];\n }\n });\n}); };\nexport var serializeAws_restJson1ListAccountRolesCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/assignment/roles\";\n query = __assign(__assign(__assign({}, (input.nextToken !== undefined && { next_token: input.nextToken })), (input.maxResults !== undefined && { max_result: input.maxResults.toString() })), (input.accountId !== undefined && { account_id: input.accountId }));\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"GET\",\n headers: headers,\n path: resolvedPath,\n query: query,\n body: body,\n })];\n }\n });\n}); };\nexport var serializeAws_restJson1ListAccountsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/assignment/accounts\";\n query = __assign(__assign({}, (input.nextToken !== undefined && { next_token: input.nextToken })), (input.maxResults !== undefined && { max_result: input.maxResults.toString() }));\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"GET\",\n headers: headers,\n path: resolvedPath,\n query: query,\n body: body,\n })];\n }\n });\n}); };\nexport var serializeAws_restJson1LogoutCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/logout\";\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"POST\",\n headers: headers,\n path: resolvedPath,\n body: body,\n })];\n }\n });\n}); };\nexport var deserializeAws_restJson1GetRoleCredentialsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1GetRoleCredentialsCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n roleCredentials: undefined,\n };\n _a = __expectNonNull;\n _b = __expectObject;\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n if (data.roleCredentials !== undefined && data.roleCredentials !== null) {\n contents.roleCredentials = deserializeAws_restJson1RoleCredentials(data.roleCredentials, context);\n }\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1GetRoleCredentialsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"ResourceNotFoundException\": return [3, 4];\n case \"com.amazonaws.sso#ResourceNotFoundException\": return [3, 4];\n case \"TooManyRequestsException\": return [3, 6];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 6];\n case \"UnauthorizedException\": return [3, 8];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_restJson1ListAccountRolesCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1ListAccountRolesCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n nextToken: undefined,\n roleList: undefined,\n };\n _a = __expectNonNull;\n _b = __expectObject;\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n if (data.nextToken !== undefined && data.nextToken !== null) {\n contents.nextToken = __expectString(data.nextToken);\n }\n if (data.roleList !== undefined && data.roleList !== null) {\n contents.roleList = deserializeAws_restJson1RoleListType(data.roleList, context);\n }\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1ListAccountRolesCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"ResourceNotFoundException\": return [3, 4];\n case \"com.amazonaws.sso#ResourceNotFoundException\": return [3, 4];\n case \"TooManyRequestsException\": return [3, 6];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 6];\n case \"UnauthorizedException\": return [3, 8];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_restJson1ListAccountsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1ListAccountsCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n accountList: undefined,\n nextToken: undefined,\n };\n _a = __expectNonNull;\n _b = __expectObject;\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n if (data.accountList !== undefined && data.accountList !== null) {\n contents.accountList = deserializeAws_restJson1AccountListType(data.accountList, context);\n }\n if (data.nextToken !== undefined && data.nextToken !== null) {\n contents.nextToken = __expectString(data.nextToken);\n }\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1ListAccountsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"ResourceNotFoundException\": return [3, 4];\n case \"com.amazonaws.sso#ResourceNotFoundException\": return [3, 4];\n case \"TooManyRequestsException\": return [3, 6];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 6];\n case \"UnauthorizedException\": return [3, 8];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_restJson1LogoutCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1LogoutCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n };\n return [4, collectBody(output.body, context)];\n case 1:\n _a.sent();\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1LogoutCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, parsedBody, message;\n var _f;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n _a = [__assign({}, output)];\n _f = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_f.body = _g.sent(), _f)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"TooManyRequestsException\": return [3, 4];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 4];\n case \"UnauthorizedException\": return [3, 6];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 6];\n }\n return [3, 8];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 8:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _g.label = 9;\n case 9:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nvar deserializeAws_restJson1InvalidRequestExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"InvalidRequestException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1ResourceNotFoundExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"ResourceNotFoundException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1TooManyRequestsExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"TooManyRequestsException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1UnauthorizedExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"UnauthorizedException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1AccountInfo = function (output, context) {\n return {\n accountId: __expectString(output.accountId),\n accountName: __expectString(output.accountName),\n emailAddress: __expectString(output.emailAddress),\n };\n};\nvar deserializeAws_restJson1AccountListType = function (output, context) {\n return (output || [])\n .filter(function (e) { return e != null; })\n .map(function (entry) {\n if (entry === null) {\n return null;\n }\n return deserializeAws_restJson1AccountInfo(entry, context);\n });\n};\nvar deserializeAws_restJson1RoleCredentials = function (output, context) {\n return {\n accessKeyId: __expectString(output.accessKeyId),\n expiration: __expectLong(output.expiration),\n secretAccessKey: __expectString(output.secretAccessKey),\n sessionToken: __expectString(output.sessionToken),\n };\n};\nvar deserializeAws_restJson1RoleInfo = function (output, context) {\n return {\n accountId: __expectString(output.accountId),\n roleName: __expectString(output.roleName),\n };\n};\nvar deserializeAws_restJson1RoleListType = function (output, context) {\n return (output || [])\n .filter(function (e) { return e != null; })\n .map(function (entry) {\n if (entry === null) {\n return null;\n }\n return deserializeAws_restJson1RoleInfo(entry, context);\n });\n};\nvar deserializeMetadata = function (output) {\n var _a;\n return ({\n httpStatusCode: output.statusCode,\n requestId: (_a = output.headers[\"x-amzn-requestid\"]) !== null && _a !== void 0 ? _a : output.headers[\"x-amzn-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n });\n};\nvar collectBody = function (streamBody, context) {\n if (streamBody === void 0) { streamBody = new Uint8Array(); }\n if (streamBody instanceof Uint8Array) {\n return Promise.resolve(streamBody);\n }\n return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());\n};\nvar collectBodyString = function (streamBody, context) {\n return collectBody(streamBody, context).then(function (body) { return context.utf8Encoder(body); });\n};\nvar isSerializableHeaderValue = function (value) {\n return value !== undefined &&\n value !== null &&\n value !== \"\" &&\n (!Object.getOwnPropertyNames(value).includes(\"length\") || value.length != 0) &&\n (!Object.getOwnPropertyNames(value).includes(\"size\") || value.size != 0);\n};\nvar parseBody = function (streamBody, context) {\n return collectBodyString(streamBody, context).then(function (encoded) {\n if (encoded.length) {\n return JSON.parse(encoded);\n }\n return {};\n });\n};\nvar loadRestJsonErrorCode = function (output, data) {\n var findKey = function (object, key) { return Object.keys(object).find(function (k) { return k.toLowerCase() === key.toLowerCase(); }); };\n var sanitizeErrorCode = function (rawValue) {\n var cleanValue = rawValue;\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 var 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 return \"\";\n};\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetRoleCredentialsRequest, GetRoleCredentialsResponse } from \"../models/models_0\";\nimport { deserializeAws_restJson1GetRoleCredentialsCommand, serializeAws_restJson1GetRoleCredentialsCommand, } from \"../protocols/Aws_restJson1\";\nvar GetRoleCredentialsCommand = (function (_super) {\n __extends(GetRoleCredentialsCommand, _super);\n function GetRoleCredentialsCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetRoleCredentialsCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"SSOClient\";\n var commandName = \"GetRoleCredentialsCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetRoleCredentialsRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetRoleCredentialsResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetRoleCredentialsCommand.prototype.serialize = function (input, context) {\n return serializeAws_restJson1GetRoleCredentialsCommand(input, context);\n };\n GetRoleCredentialsCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_restJson1GetRoleCredentialsCommand(output, context);\n };\n return GetRoleCredentialsCommand;\n}($Command));\nexport { GetRoleCredentialsCommand };\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { loadSharedConfigFiles, } from \"@aws-sdk/shared-ini-file-loader\";\nexport var ENV_PROFILE = \"AWS_PROFILE\";\nexport var DEFAULT_PROFILE = \"default\";\nexport var parseKnownFiles = function (init) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, loadedConfig, parsedFiles;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _a = init.loadedConfig, loadedConfig = _a === void 0 ? loadSharedConfigFiles(init) : _a;\n return [4, loadedConfig];\n case 1:\n parsedFiles = _b.sent();\n return [2, __assign(__assign({}, parsedFiles.configFile), parsedFiles.credentialsFile)];\n }\n });\n}); };\nexport var getMasterProfileName = function (init) {\n return init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE;\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { GetRoleCredentialsCommand, SSOClient } from \"@aws-sdk/client-sso\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { getHomeDir } from \"@aws-sdk/shared-ini-file-loader\";\nimport { getMasterProfileName, parseKnownFiles } from \"@aws-sdk/util-credentials\";\nimport { createHash } from \"crypto\";\nimport { readFileSync } from \"fs\";\nimport { join } from \"path\";\nexport var EXPIRE_WINDOW_MS = 15 * 60 * 1000;\nvar SHOULD_FAIL_CREDENTIAL_CHAIN = false;\nexport var fromSSO = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, profiles, profileName, profile, _a, sso_start_url, sso_account_id, sso_region, sso_role_name;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n ssoStartUrl = init.ssoStartUrl, ssoAccountId = init.ssoAccountId, ssoRegion = init.ssoRegion, ssoRoleName = init.ssoRoleName, ssoClient = init.ssoClient;\n if (!(!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName)) return [3, 2];\n return [4, parseKnownFiles(init)];\n case 1:\n profiles = _b.sent();\n profileName = getMasterProfileName(init);\n profile = profiles[profileName];\n if (!isSsoProfile(profile)) {\n throw new CredentialsProviderError(\"Profile \" + profileName + \" is not configured with SSO credentials.\");\n }\n _a = validateSsoProfile(profile), sso_start_url = _a.sso_start_url, sso_account_id = _a.sso_account_id, sso_region = _a.sso_region, sso_role_name = _a.sso_role_name;\n return [2, resolveSSOCredentials({\n ssoStartUrl: sso_start_url,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n ssoClient: ssoClient,\n })];\n case 2:\n if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {\n throw new CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include \"ssoStartUrl\",' +\n ' \"ssoAccountId\", \"ssoRegion\", \"ssoRoleName\"');\n }\n else {\n return [2, resolveSSOCredentials({ ssoStartUrl: ssoStartUrl, ssoAccountId: ssoAccountId, ssoRegion: ssoRegion, ssoRoleName: ssoRoleName, ssoClient: ssoClient })];\n }\n _b.label = 3;\n case 3: return [2];\n }\n });\n }); };\n};\nvar resolveSSOCredentials = function (_a) {\n var ssoStartUrl = _a.ssoStartUrl, ssoAccountId = _a.ssoAccountId, ssoRegion = _a.ssoRegion, ssoRoleName = _a.ssoRoleName, ssoClient = _a.ssoClient;\n return __awaiter(void 0, void 0, void 0, function () {\n var hasher, cacheName, tokenFile, token, accessToken, sso, ssoResp, e_1, _b, _c, accessKeyId, secretAccessKey, sessionToken, expiration;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n hasher = createHash(\"sha1\");\n cacheName = hasher.update(ssoStartUrl).digest(\"hex\");\n tokenFile = join(getHomeDir(), \".aws\", \"sso\", \"cache\", cacheName + \".json\");\n try {\n token = JSON.parse(readFileSync(tokenFile, { encoding: \"utf-8\" }));\n if (new Date(token.expiresAt).getTime() - Date.now() <= EXPIRE_WINDOW_MS) {\n throw new Error(\"SSO token is expired.\");\n }\n }\n catch (e) {\n throw new CredentialsProviderError(\"The SSO session associated with this profile has expired or is otherwise invalid. To refresh this SSO session \" +\n \"run aws sso login with the corresponding profile.\", SHOULD_FAIL_CREDENTIAL_CHAIN);\n }\n accessToken = token.accessToken;\n sso = ssoClient || new SSOClient({ region: ssoRegion });\n _d.label = 1;\n case 1:\n _d.trys.push([1, 3, , 4]);\n return [4, sso.send(new GetRoleCredentialsCommand({\n accountId: ssoAccountId,\n roleName: ssoRoleName,\n accessToken: accessToken,\n }))];\n case 2:\n ssoResp = _d.sent();\n return [3, 4];\n case 3:\n e_1 = _d.sent();\n throw CredentialsProviderError.from(e_1, SHOULD_FAIL_CREDENTIAL_CHAIN);\n case 4:\n _b = ssoResp.roleCredentials, _c = _b === void 0 ? {} : _b, accessKeyId = _c.accessKeyId, secretAccessKey = _c.secretAccessKey, sessionToken = _c.sessionToken, expiration = _c.expiration;\n if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {\n throw new CredentialsProviderError(\"SSO returns an invalid temporary credential.\", SHOULD_FAIL_CREDENTIAL_CHAIN);\n }\n return [2, { accessKeyId: accessKeyId, secretAccessKey: secretAccessKey, sessionToken: sessionToken, expiration: new Date(expiration) }];\n }\n });\n });\n};\nexport var validateSsoProfile = function (profile) {\n var sso_start_url = profile.sso_start_url, sso_account_id = profile.sso_account_id, sso_region = profile.sso_region, sso_role_name = profile.sso_role_name;\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\\\", \\\"sso_region\\\", \" +\n (\"\\\"sso_role_name\\\", \\\"sso_start_url\\\". Got \" + Object.keys(profile).join(\", \") + \"\\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html\"), SHOULD_FAIL_CREDENTIAL_CHAIN);\n }\n return profile;\n};\nexport var isSsoProfile = function (arg) {\n return arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { readFileSync } from \"fs\";\nimport { fromWebToken } from \"./fromWebToken\";\nvar ENV_TOKEN_FILE = \"AWS_WEB_IDENTITY_TOKEN_FILE\";\nvar ENV_ROLE_ARN = \"AWS_ROLE_ARN\";\nvar ENV_ROLE_SESSION_NAME = \"AWS_ROLE_SESSION_NAME\";\nexport var fromTokenFile = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, resolveTokenFile(init)];\n });\n }); };\n};\nvar resolveTokenFile = function (init) {\n var _a, _b, _c;\n var webIdentityTokenFile = (_a = init === null || init === void 0 ? void 0 : init.webIdentityTokenFile) !== null && _a !== void 0 ? _a : process.env[ENV_TOKEN_FILE];\n var roleArn = (_b = init === null || init === void 0 ? void 0 : init.roleArn) !== null && _b !== void 0 ? _b : process.env[ENV_ROLE_ARN];\n var roleSessionName = (_c = init === null || init === void 0 ? void 0 : init.roleSessionName) !== null && _c !== void 0 ? _c : process.env[ENV_ROLE_SESSION_NAME];\n if (!webIdentityTokenFile || !roleArn) {\n throw new CredentialsProviderError(\"Web identity configuration not specified\");\n }\n return fromWebToken(__assign(__assign({}, init), { webIdentityToken: readFileSync(webIdentityTokenFile, { encoding: \"ascii\" }), roleArn: roleArn, roleSessionName: roleSessionName }))();\n};\n","import { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nexport var fromWebToken = function (init) {\n return function () {\n var roleArn = init.roleArn, roleSessionName = init.roleSessionName, webIdentityToken = init.webIdentityToken, providerId = init.providerId, policyArns = init.policyArns, policy = init.policy, durationSeconds = init.durationSeconds, roleAssumerWithWebIdentity = init.roleAssumerWithWebIdentity;\n if (!roleAssumerWithWebIdentity) {\n throw new CredentialsProviderError(\"Role Arn '\" + roleArn + \"' needs to be assumed with web identity,\" +\n \" but no role assumption callback was provided.\", false);\n }\n return roleAssumerWithWebIdentity({\n RoleArn: roleArn,\n RoleSessionName: roleSessionName !== null && roleSessionName !== void 0 ? 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};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { fromEnv } from \"@aws-sdk/credential-provider-env\";\nimport { fromContainerMetadata, fromInstanceMetadata } from \"@aws-sdk/credential-provider-imds\";\nimport { fromSSO, isSsoProfile, validateSsoProfile } from \"@aws-sdk/credential-provider-sso\";\nimport { fromTokenFile } from \"@aws-sdk/credential-provider-web-identity\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { getMasterProfileName, parseKnownFiles } from \"@aws-sdk/util-credentials\";\nvar isStaticCredsProfile = function (arg) {\n return 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};\nvar isWebIdentityProfile = function (arg) {\n return 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;\n};\nvar isAssumeRoleProfile = function (arg) {\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};\nvar isAssumeRoleWithSourceProfile = function (arg) {\n return isAssumeRoleProfile(arg) && typeof arg.source_profile === \"string\" && typeof arg.credential_source === \"undefined\";\n};\nvar isAssumeRoleWithProviderProfile = function (arg) {\n return isAssumeRoleProfile(arg) && typeof arg.credential_source === \"string\" && typeof arg.source_profile === \"undefined\";\n};\nexport var fromIni = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var profiles;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, parseKnownFiles(init)];\n case 1:\n profiles = _a.sent();\n return [2, resolveProfileData(getMasterProfileName(init), profiles, init)];\n }\n });\n }); };\n};\nvar resolveProfileData = function (profileName, profiles, options, visitedProfiles) {\n if (visitedProfiles === void 0) { visitedProfiles = {}; }\n return __awaiter(void 0, void 0, void 0, function () {\n var data, ExternalId, mfa_serial, RoleArn, _a, RoleSessionName, source_profile, credential_source, sourceCreds, params, _b, _c, _d, _e, sso_start_url, sso_account_id, sso_region, sso_role_name;\n var _f;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n data = profiles[profileName];\n if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {\n return [2, resolveStaticCredentials(data)];\n }\n if (!(isAssumeRoleWithSourceProfile(data) || isAssumeRoleWithProviderProfile(data))) return [3, 4];\n ExternalId = data.external_id, mfa_serial = data.mfa_serial, RoleArn = data.role_arn, _a = data.role_session_name, RoleSessionName = _a === void 0 ? \"aws-sdk-js-\" + Date.now() : _a, source_profile = data.source_profile, credential_source = data.credential_source;\n if (!options.roleAssumer) {\n throw new CredentialsProviderError(\"Profile \" + profileName + \" requires a role to be assumed, but no\" + \" role assumption callback was provided.\", false);\n }\n if (source_profile && source_profile in visitedProfiles) {\n throw new CredentialsProviderError(\"Detected a cycle attempting to resolve credentials for profile\" +\n (\" \" + getMasterProfileName(options) + \". Profiles visited: \") +\n Object.keys(visitedProfiles).join(\", \"), false);\n }\n sourceCreds = source_profile\n ? resolveProfileData(source_profile, profiles, options, __assign(__assign({}, visitedProfiles), (_f = {}, _f[source_profile] = true, _f)))\n : resolveCredentialSource(credential_source, profileName)();\n params = { RoleArn: RoleArn, RoleSessionName: RoleSessionName, ExternalId: ExternalId };\n if (!mfa_serial) return [3, 2];\n if (!options.mfaCodeProvider) {\n throw new CredentialsProviderError(\"Profile \" + profileName + \" requires multi-factor authentication,\" + \" but no MFA code callback was provided.\", false);\n }\n params.SerialNumber = mfa_serial;\n _b = params;\n return [4, options.mfaCodeProvider(mfa_serial)];\n case 1:\n _b.TokenCode = _g.sent();\n _g.label = 2;\n case 2:\n _d = (_c = options).roleAssumer;\n return [4, sourceCreds];\n case 3: return [2, _d.apply(_c, [_g.sent(), params])];\n case 4:\n if (isStaticCredsProfile(data)) {\n return [2, resolveStaticCredentials(data)];\n }\n if (isWebIdentityProfile(data)) {\n return [2, resolveWebIdentityCredentials(data, options)];\n }\n if (isSsoProfile(data)) {\n _e = validateSsoProfile(data), sso_start_url = _e.sso_start_url, sso_account_id = _e.sso_account_id, sso_region = _e.sso_region, sso_role_name = _e.sso_role_name;\n return [2, fromSSO({\n ssoStartUrl: sso_start_url,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n })()];\n }\n throw new CredentialsProviderError(\"Profile \" + profileName + \" could not be found or parsed in shared\" + \" credentials file.\");\n }\n });\n });\n};\nvar resolveCredentialSource = function (credentialSource, profileName) {\n var sourceProvidersMap = {\n EcsContainer: fromContainerMetadata,\n Ec2InstanceMetadata: fromInstanceMetadata,\n Environment: fromEnv,\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.\");\n }\n};\nvar resolveStaticCredentials = function (profile) {\n return Promise.resolve({\n accessKeyId: profile.aws_access_key_id,\n secretAccessKey: profile.aws_secret_access_key,\n sessionToken: profile.aws_session_token,\n });\n};\nvar resolveWebIdentityCredentials = function (profile, options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, fromTokenFile({\n webIdentityTokenFile: profile.web_identity_token_file,\n roleArn: profile.role_arn,\n roleSessionName: profile.role_session_name,\n roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,\n })()];\n });\n}); };\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"child_process\");","import { __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { getMasterProfileName, parseKnownFiles } from \"@aws-sdk/util-credentials\";\nimport { exec } from \"child_process\";\nexport var ENV_PROFILE = \"AWS_PROFILE\";\nexport var fromProcess = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var profiles;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, parseKnownFiles(init)];\n case 1:\n profiles = _a.sent();\n return [2, resolveProcessCredentials(getMasterProfileName(init), profiles)];\n }\n });\n }); };\n};\nvar resolveProcessCredentials = function (profileName, profiles) { return __awaiter(void 0, void 0, void 0, function () {\n var profile, credentialProcess;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n profile = profiles[profileName];\n if (!profiles[profileName]) return [3, 4];\n credentialProcess = profile[\"credential_process\"];\n if (!(credentialProcess !== undefined)) return [3, 2];\n return [4, execPromise(credentialProcess)\n .then(function (processResult) {\n var data;\n try {\n data = JSON.parse(processResult);\n }\n catch (_a) {\n throw Error(\"Profile \" + profileName + \" credential_process returned invalid JSON.\");\n }\n var version = data.Version, accessKeyId = data.AccessKeyId, secretAccessKey = data.SecretAccessKey, sessionToken = data.SessionToken, expiration = data.Expiration;\n if (version !== 1) {\n throw Error(\"Profile \" + profileName + \" credential_process did not return Version 1.\");\n }\n if (accessKeyId === undefined || secretAccessKey === undefined) {\n throw Error(\"Profile \" + profileName + \" credential_process returned invalid credentials.\");\n }\n var expirationUnix;\n if (expiration) {\n var currentTime = new Date();\n var expireTime = new Date(expiration);\n if (expireTime < currentTime) {\n throw Error(\"Profile \" + profileName + \" credential_process returned expired credentials.\");\n }\n expirationUnix = Math.floor(new Date(expiration).valueOf() / 1000);\n }\n return {\n accessKeyId: accessKeyId,\n secretAccessKey: secretAccessKey,\n sessionToken: sessionToken,\n expirationUnix: expirationUnix,\n };\n })\n .catch(function (error) {\n throw new CredentialsProviderError(error.message);\n })];\n case 1: return [2, _a.sent()];\n case 2: throw new CredentialsProviderError(\"Profile \" + profileName + \" did not contain credential_process.\");\n case 3: return [3, 5];\n case 4: throw new CredentialsProviderError(\"Profile \" + profileName + \" could not be found in shared credentials file.\");\n case 5: return [2];\n }\n });\n}); };\nvar execPromise = function (command) {\n return new Promise(function (resolve, reject) {\n exec(command, function (error, stdout) {\n if (error) {\n reject(error);\n return;\n }\n resolve(stdout.trim());\n });\n });\n};\n","import { __assign, __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { fromEnv } from \"@aws-sdk/credential-provider-env\";\nimport { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata, } from \"@aws-sdk/credential-provider-imds\";\nimport { fromIni } from \"@aws-sdk/credential-provider-ini\";\nimport { fromProcess } from \"@aws-sdk/credential-provider-process\";\nimport { fromSSO } from \"@aws-sdk/credential-provider-sso\";\nimport { fromTokenFile } from \"@aws-sdk/credential-provider-web-identity\";\nimport { chain, CredentialsProviderError, memoize } from \"@aws-sdk/property-provider\";\nimport { loadSharedConfigFiles } from \"@aws-sdk/shared-ini-file-loader\";\nimport { ENV_PROFILE } from \"@aws-sdk/util-credentials\";\nexport var ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport var defaultProvider = function (init) {\n if (init === void 0) { init = {}; }\n var options = __assign({ profile: process.env[ENV_PROFILE] }, init);\n if (!options.loadedConfig)\n options.loadedConfig = loadSharedConfigFiles(init);\n var providers = [\n fromSSO(options),\n fromIni(options),\n fromProcess(options),\n fromTokenFile(options),\n remoteProvider(options),\n function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n throw new CredentialsProviderError(\"Could not load credentials from any providers\", false);\n });\n }); },\n ];\n if (!options.profile)\n providers.unshift(fromEnv());\n var providerChain = chain.apply(void 0, __spreadArray([], __read(providers)));\n return memoize(providerChain, function (credentials) { return credentials.expiration !== undefined && credentials.expiration.getTime() - Date.now() < 300000; }, function (credentials) { return credentials.expiration !== undefined; });\n};\nvar remoteProvider = function (init) {\n if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {\n return fromContainerMetadata(init);\n }\n if (process.env[ENV_IMDS_DISABLED]) {\n return function () { return Promise.reject(new CredentialsProviderError(\"EC2 Instance Metadata Service access disabled\")); };\n }\n return fromInstanceMetadata(init);\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { getRegionInfo } from \"@aws-sdk/config-resolver\";\nvar regionHash = {\n \"aws-global\": {\n variants: [\n {\n hostname: \"sts.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-east-1\",\n },\n \"us-east-1\": {\n variants: [\n {\n hostname: \"sts.us-east-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-east-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-east-2\": {\n variants: [\n {\n hostname: \"sts.us-east-2.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-east-2.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-gov-east-1\": {\n variants: [\n {\n hostname: \"sts.us-gov-east-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts.us-gov-east-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-gov-west-1\": {\n variants: [\n {\n hostname: \"sts.us-gov-west-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts.us-gov-west-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-west-1\": {\n variants: [\n {\n hostname: \"sts.us-west-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-west-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-west-2\": {\n variants: [\n {\n hostname: \"sts.us-west-2.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-west-2.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n};\nvar partitionHash = {\n aws: {\n regions: [\n \"af-south-1\",\n \"ap-east-1\",\n \"ap-northeast-1\",\n \"ap-northeast-2\",\n \"ap-northeast-3\",\n \"ap-south-1\",\n \"ap-southeast-1\",\n \"ap-southeast-2\",\n \"ap-southeast-3\",\n \"aws-global\",\n \"ca-central-1\",\n \"eu-central-1\",\n \"eu-north-1\",\n \"eu-south-1\",\n \"eu-west-1\",\n \"eu-west-2\",\n \"eu-west-3\",\n \"me-south-1\",\n \"sa-east-1\",\n \"us-east-1\",\n \"us-east-1-fips\",\n \"us-east-2\",\n \"us-east-2-fips\",\n \"us-west-1\",\n \"us-west-1-fips\",\n \"us-west-2\",\n \"us-west-2-fips\",\n ],\n regionRegex: \"^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"sts-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"sts.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-cn\": {\n regions: [\"cn-north-1\", \"cn-northwest-1\"],\n regionRegex: \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.amazonaws.com.cn\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.amazonaws.com.cn\",\n tags: [\"fips\"],\n },\n {\n hostname: \"sts-fips.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"sts.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-iso\": {\n regions: [\"us-iso-east-1\", \"us-iso-west-1\"],\n regionRegex: \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.c2s.ic.gov\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.c2s.ic.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-iso-b\": {\n regions: [\"us-isob-east-1\"],\n regionRegex: \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.sc2s.sgov.gov\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.sc2s.sgov.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-us-gov\": {\n regions: [\"us-gov-east-1\", \"us-gov-east-1-fips\", \"us-gov-west-1\", \"us-gov-west-1-fips\"],\n regionRegex: \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"sts-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"sts.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n};\nexport var defaultRegionInfoProvider = function (region, options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, getRegionInfo(region, __assign(__assign({}, options), { signingService: \"sts\", regionHash: regionHash, partitionHash: partitionHash }))];\n });\n}); };\n","import { __extends } from \"tslib\";\nimport { resolveEndpointsConfig, resolveRegionConfig, } from \"@aws-sdk/config-resolver\";\nimport { getContentLengthPlugin } from \"@aws-sdk/middleware-content-length\";\nimport { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@aws-sdk/middleware-retry\";\nimport { resolveStsAuthConfig } from \"@aws-sdk/middleware-sdk-sts\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { Client as __Client, } from \"@aws-sdk/smithy-client\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nvar STSClient = (function (_super) {\n __extends(STSClient, _super);\n function STSClient(configuration) {\n var _this = this;\n var _config_0 = __getRuntimeConfig(configuration);\n var _config_1 = resolveRegionConfig(_config_0);\n var _config_2 = resolveEndpointsConfig(_config_1);\n var _config_3 = resolveRetryConfig(_config_2);\n var _config_4 = resolveHostHeaderConfig(_config_3);\n var _config_5 = resolveStsAuthConfig(_config_4, { stsClientCtor: STSClient });\n var _config_6 = resolveUserAgentConfig(_config_5);\n _this = _super.call(this, _config_6) || this;\n _this.config = _config_6;\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(getUserAgentPlugin(_this.config));\n return _this;\n }\n STSClient.prototype.destroy = function () {\n _super.prototype.destroy.call(this);\n };\n return STSClient;\n}(__Client));\nexport { STSClient };\n","import { __assign } from \"tslib\";\nimport packageInfo from \"../package.json\";\nimport { decorateDefaultCredentialProvider } from \"./defaultStsRoleAssumers\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@aws-sdk/config-resolver\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { Hash } from \"@aws-sdk/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@aws-sdk/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@aws-sdk/node-config-provider\";\nimport { NodeHttpHandler, streamCollector } from \"@aws-sdk/node-http-handler\";\nimport { fromBase64, toBase64 } from \"@aws-sdk/util-base64-node\";\nimport { calculateBodyLength } from \"@aws-sdk/util-body-length-node\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { fromUtf8, toUtf8 } from \"@aws-sdk/util-utf8-node\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { emitWarningIfUnsupportedVersion } from \"@aws-sdk/smithy-client\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;\n emitWarningIfUnsupportedVersion(process.version);\n var clientSharedValues = getSharedRuntimeConfig(config);\n return __assign(__assign(__assign({}, clientSharedValues), config), { runtime: \"node\", base64Decoder: (_a = config === null || config === void 0 ? void 0 : config.base64Decoder) !== null && _a !== void 0 ? _a : fromBase64, base64Encoder: (_b = config === null || config === void 0 ? void 0 : config.base64Encoder) !== null && _b !== void 0 ? _b : toBase64, bodyLengthChecker: (_c = config === null || config === void 0 ? void 0 : config.bodyLengthChecker) !== null && _c !== void 0 ? _c : calculateBodyLength, credentialDefaultProvider: (_d = config === null || config === void 0 ? void 0 : config.credentialDefaultProvider) !== null && _d !== void 0 ? _d : decorateDefaultCredentialProvider(credentialDefaultProvider), defaultUserAgentProvider: (_e = config === null || config === void 0 ? void 0 : config.defaultUserAgentProvider) !== null && _e !== void 0 ? _e : defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }), maxAttempts: (_f = config === null || config === void 0 ? void 0 : config.maxAttempts) !== null && _f !== void 0 ? _f : loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS), region: (_g = config === null || config === void 0 ? void 0 : config.region) !== null && _g !== void 0 ? _g : loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS), requestHandler: (_h = config === null || config === void 0 ? void 0 : config.requestHandler) !== null && _h !== void 0 ? _h : new NodeHttpHandler(), retryMode: (_j = config === null || config === void 0 ? void 0 : config.retryMode) !== null && _j !== void 0 ? _j : loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: (_k = config === null || config === void 0 ? void 0 : config.sha256) !== null && _k !== void 0 ? _k : Hash.bind(null, \"sha256\"), streamCollector: (_l = config === null || config === void 0 ? void 0 : config.streamCollector) !== null && _l !== void 0 ? _l : streamCollector, useDualstackEndpoint: (_m = config === null || config === void 0 ? void 0 : config.useDualstackEndpoint) !== null && _m !== void 0 ? _m : loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), useFipsEndpoint: (_o = config === null || config === void 0 ? void 0 : config.useFipsEndpoint) !== null && _o !== void 0 ? _o : loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: (_p = config === null || config === void 0 ? void 0 : config.utf8Decoder) !== null && _p !== void 0 ? _p : fromUtf8, utf8Encoder: (_q = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _q !== void 0 ? _q : toUtf8 });\n};\n","import { parseUrl } from \"@aws-sdk/url-parser\";\nimport { defaultRegionInfoProvider } from \"./endpoints\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e;\n return ({\n apiVersion: \"2011-06-15\",\n disableHostPrefix: (_a = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _a !== void 0 ? _a : false,\n logger: (_b = config === null || config === void 0 ? void 0 : config.logger) !== null && _b !== void 0 ? _b : {},\n regionInfoProvider: (_c = config === null || config === void 0 ? void 0 : config.regionInfoProvider) !== null && _c !== void 0 ? _c : defaultRegionInfoProvider,\n serviceId: (_d = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _d !== void 0 ? _d : \"STS\",\n urlParser: (_e = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _e !== void 0 ? _e : parseUrl,\n });\n};\n","import { __extends } from \"tslib\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithSAMLCommand, } from \"./commands/AssumeRoleWithSAMLCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\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\";\nvar STS = (function (_super) {\n __extends(STS, _super);\n function STS() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n STS.prototype.assumeRole = function (args, optionsOrCb, cb) {\n var command = new AssumeRoleCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.assumeRoleWithSAML = function (args, optionsOrCb, cb) {\n var command = new AssumeRoleWithSAMLCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.assumeRoleWithWebIdentity = function (args, optionsOrCb, cb) {\n var command = new AssumeRoleWithWebIdentityCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.decodeAuthorizationMessage = function (args, optionsOrCb, cb) {\n var command = new DecodeAuthorizationMessageCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getAccessKeyInfo = function (args, optionsOrCb, cb) {\n var command = new GetAccessKeyInfoCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getCallerIdentity = function (args, optionsOrCb, cb) {\n var command = new GetCallerIdentityCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getFederationToken = function (args, optionsOrCb, cb) {\n var command = new GetFederationTokenCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getSessionToken = function (args, optionsOrCb, cb) {\n var command = new GetSessionTokenCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n return STS;\n}(STSClient));\nexport { STS };\n","import { __assign } from \"tslib\";\nimport { getDefaultRoleAssumer as StsGetDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity as StsGetDefaultRoleAssumerWithWebIdentity, } from \"./defaultStsRoleAssumers\";\nimport { STSClient } from \"./STSClient\";\nexport var getDefaultRoleAssumer = function (stsOptions) {\n if (stsOptions === void 0) { stsOptions = {}; }\n return StsGetDefaultRoleAssumer(stsOptions, STSClient);\n};\nexport var getDefaultRoleAssumerWithWebIdentity = function (stsOptions) {\n if (stsOptions === void 0) { stsOptions = {}; }\n return StsGetDefaultRoleAssumerWithWebIdentity(stsOptions, STSClient);\n};\nexport var decorateDefaultCredentialProvider = function (provider) {\n return function (input) {\n return provider(__assign({ roleAssumer: getDefaultRoleAssumer(input), roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input) }, input));\n };\n};\n","export var isCrtAvailable = function () {\n try {\n if (typeof require === \"function\" && typeof module !== \"undefined\" && module.require && require(\"aws-crt\")) {\n return [\"md/crt-avail\"];\n }\n return null;\n }\n catch (e) {\n return null;\n }\n};\n","module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildFullPath = require('../core/buildFullPath');\nvar buildURL = require('./../helpers/buildURL');\nvar http = require('http');\nvar https = require('https');\nvar httpFollow = require('follow-redirects').http;\nvar httpsFollow = require('follow-redirects').https;\nvar url = require('url');\nvar zlib = require('zlib');\nvar VERSION = require('./../env/data').version;\nvar createError = require('../core/createError');\nvar enhanceError = require('../core/enhanceError');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\nvar isHttps = /https:?/;\n\n/**\n *\n * @param {http.ClientRequestArgs} options\n * @param {AxiosProxyConfig} proxy\n * @param {string} location\n */\nfunction setProxy(options, proxy, location) {\n options.hostname = proxy.host;\n options.host = proxy.host;\n options.port = proxy.port;\n options.path = location;\n\n // Basic proxy authorization\n if (proxy.auth) {\n var base64 = Buffer.from(proxy.auth.username + ':' + proxy.auth.password, 'utf8').toString('base64');\n options.headers['Proxy-Authorization'] = 'Basic ' + base64;\n }\n\n // If a proxy is used, any redirects must also pass through the proxy\n options.beforeRedirect = function beforeRedirect(redirection) {\n redirection.headers.host = redirection.host;\n setProxy(redirection, proxy, redirection.href);\n };\n}\n\n/*eslint consistent-return:0*/\nmodule.exports = function httpAdapter(config) {\n return new Promise(function dispatchHttpRequest(resolvePromise, rejectPromise) {\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n var resolve = function resolve(value) {\n done();\n resolvePromise(value);\n };\n var reject = function reject(value) {\n done();\n rejectPromise(value);\n };\n var data = config.data;\n var headers = config.headers;\n var headerNames = {};\n\n Object.keys(headers).forEach(function storeLowerName(name) {\n headerNames[name.toLowerCase()] = name;\n });\n\n // Set User-Agent (required by some servers)\n // See https://github.com/axios/axios/issues/69\n if ('user-agent' in headerNames) {\n // User-Agent is specified; handle case where no UA header is desired\n if (!headers[headerNames['user-agent']]) {\n delete headers[headerNames['user-agent']];\n }\n // Otherwise, use specified value\n } else {\n // Only set header if it hasn't been set in config\n headers['User-Agent'] = 'axios/' + VERSION;\n }\n\n if (data && !utils.isStream(data)) {\n if (Buffer.isBuffer(data)) {\n // Nothing to do...\n } else if (utils.isArrayBuffer(data)) {\n data = Buffer.from(new Uint8Array(data));\n } else if (utils.isString(data)) {\n data = Buffer.from(data, 'utf-8');\n } else {\n return reject(createError(\n 'Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream',\n config\n ));\n }\n\n // Add Content-Length header if data exists\n if (!headerNames['content-length']) {\n headers['Content-Length'] = data.length;\n }\n }\n\n // HTTP basic authentication\n var auth = undefined;\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n auth = username + ':' + password;\n }\n\n // Parse url\n var fullPath = buildFullPath(config.baseURL, config.url);\n var parsed = url.parse(fullPath);\n var protocol = parsed.protocol || 'http:';\n\n if (!auth && parsed.auth) {\n var urlAuth = parsed.auth.split(':');\n var urlUsername = urlAuth[0] || '';\n var urlPassword = urlAuth[1] || '';\n auth = urlUsername + ':' + urlPassword;\n }\n\n if (auth && headerNames.authorization) {\n delete headers[headerNames.authorization];\n }\n\n var isHttpsRequest = isHttps.test(protocol);\n var agent = isHttpsRequest ? config.httpsAgent : config.httpAgent;\n\n var options = {\n path: buildURL(parsed.path, config.params, config.paramsSerializer).replace(/^\\?/, ''),\n method: config.method.toUpperCase(),\n headers: headers,\n agent: agent,\n agents: { http: config.httpAgent, https: config.httpsAgent },\n auth: auth\n };\n\n if (config.socketPath) {\n options.socketPath = config.socketPath;\n } else {\n options.hostname = parsed.hostname;\n options.port = parsed.port;\n }\n\n var proxy = config.proxy;\n if (!proxy && proxy !== false) {\n var proxyEnv = protocol.slice(0, -1) + '_proxy';\n var proxyUrl = process.env[proxyEnv] || process.env[proxyEnv.toUpperCase()];\n if (proxyUrl) {\n var parsedProxyUrl = url.parse(proxyUrl);\n var noProxyEnv = process.env.no_proxy || process.env.NO_PROXY;\n var shouldProxy = true;\n\n if (noProxyEnv) {\n var noProxy = noProxyEnv.split(',').map(function trim(s) {\n return s.trim();\n });\n\n shouldProxy = !noProxy.some(function proxyMatch(proxyElement) {\n if (!proxyElement) {\n return false;\n }\n if (proxyElement === '*') {\n return true;\n }\n if (proxyElement[0] === '.' &&\n parsed.hostname.substr(parsed.hostname.length - proxyElement.length) === proxyElement) {\n return true;\n }\n\n return parsed.hostname === proxyElement;\n });\n }\n\n if (shouldProxy) {\n proxy = {\n host: parsedProxyUrl.hostname,\n port: parsedProxyUrl.port,\n protocol: parsedProxyUrl.protocol\n };\n\n if (parsedProxyUrl.auth) {\n var proxyUrlAuth = parsedProxyUrl.auth.split(':');\n proxy.auth = {\n username: proxyUrlAuth[0],\n password: proxyUrlAuth[1]\n };\n }\n }\n }\n }\n\n if (proxy) {\n options.headers.host = parsed.hostname + (parsed.port ? ':' + parsed.port : '');\n setProxy(options, proxy, protocol + '//' + parsed.hostname + (parsed.port ? ':' + parsed.port : '') + options.path);\n }\n\n var transport;\n var isHttpsProxy = isHttpsRequest && (proxy ? isHttps.test(proxy.protocol) : true);\n if (config.transport) {\n transport = config.transport;\n } else if (config.maxRedirects === 0) {\n transport = isHttpsProxy ? https : http;\n } else {\n if (config.maxRedirects) {\n options.maxRedirects = config.maxRedirects;\n }\n transport = isHttpsProxy ? httpsFollow : httpFollow;\n }\n\n if (config.maxBodyLength > -1) {\n options.maxBodyLength = config.maxBodyLength;\n }\n\n if (config.insecureHTTPParser) {\n options.insecureHTTPParser = config.insecureHTTPParser;\n }\n\n // Create the request\n var req = transport.request(options, function handleResponse(res) {\n if (req.aborted) return;\n\n // uncompress the response body transparently if required\n var stream = res;\n\n // return the last request in case of redirects\n var lastRequest = res.req || req;\n\n\n // if no content, is HEAD request or decompress disabled we should not decompress\n if (res.statusCode !== 204 && lastRequest.method !== 'HEAD' && config.decompress !== false) {\n switch (res.headers['content-encoding']) {\n /*eslint default-case:0*/\n case 'gzip':\n case 'compress':\n case 'deflate':\n // add the unzipper to the body stream processing pipeline\n stream = stream.pipe(zlib.createUnzip());\n\n // remove the content-encoding in order to not confuse downstream operations\n delete res.headers['content-encoding'];\n break;\n }\n }\n\n var response = {\n status: res.statusCode,\n statusText: res.statusMessage,\n headers: res.headers,\n config: config,\n request: lastRequest\n };\n\n if (config.responseType === 'stream') {\n response.data = stream;\n settle(resolve, reject, response);\n } else {\n var responseBuffer = [];\n var totalResponseBytes = 0;\n stream.on('data', function handleStreamData(chunk) {\n responseBuffer.push(chunk);\n totalResponseBytes += chunk.length;\n\n // make sure the content length is not over the maxContentLength if specified\n if (config.maxContentLength > -1 && totalResponseBytes > config.maxContentLength) {\n stream.destroy();\n reject(createError('maxContentLength size of ' + config.maxContentLength + ' exceeded',\n config, null, lastRequest));\n }\n });\n\n stream.on('error', function handleStreamError(err) {\n if (req.aborted) return;\n reject(enhanceError(err, config, null, lastRequest));\n });\n\n stream.on('end', function handleStreamEnd() {\n var responseData = Buffer.concat(responseBuffer);\n if (config.responseType !== 'arraybuffer') {\n responseData = responseData.toString(config.responseEncoding);\n if (!config.responseEncoding || config.responseEncoding === 'utf8') {\n responseData = utils.stripBOM(responseData);\n }\n }\n\n response.data = responseData;\n settle(resolve, reject, response);\n });\n }\n });\n\n // Handle errors\n req.on('error', function handleRequestError(err) {\n if (req.aborted && err.code !== 'ERR_FR_TOO_MANY_REDIRECTS') return;\n reject(enhanceError(err, config, null, req));\n });\n\n // Handle request timeout\n if (config.timeout) {\n // This is forcing a int timeout to avoid problems if the `req` interface doesn't handle other types.\n var timeout = parseInt(config.timeout, 10);\n\n if (isNaN(timeout)) {\n reject(createError(\n 'error trying to parse `config.timeout` to int',\n config,\n 'ERR_PARSE_TIMEOUT',\n req\n ));\n\n return;\n }\n\n // Sometime, the response will be very slow, and does not respond, the connect event will be block by event loop system.\n // And timer callback will be fired, and abort() will be invoked before connection, then get \"socket hang up\" and code ECONNRESET.\n // At this time, if we have a large number of request, nodejs will hang up some socket on background. and the number will up and up.\n // And then these socket which be hang up will devoring CPU little by little.\n // ClientRequest.setTimeout will be fired on the specify milliseconds, and can make sure that abort() will be fired after connect.\n req.setTimeout(timeout, function handleRequestTimeout() {\n req.abort();\n var transitional = config.transitional || defaults.transitional;\n reject(createError(\n 'timeout of ' + timeout + 'ms exceeded',\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n req\n ));\n });\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (req.aborted) return;\n\n req.abort();\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n\n // Send the request\n if (utils.isStream(data)) {\n data.on('error', function handleStreamError(err) {\n reject(enhanceError(err, config, null, req));\n }).pipe(req);\n } else {\n req.end(data);\n }\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || defaults.transitional;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","module.exports = {\n \"version\": \"0.24.0\"\n};","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","'use strict';\n\nvar VERSION = require('../env/data').version;\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n","\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n","/**\n * Detect Electron renderer / nwjs process, which is node, but we should\n * treat as a browser.\n */\n\nif (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {\n\tmodule.exports = require('./browser.js');\n} else {\n\tmodule.exports = require('./node.js');\n}\n","/**\n * Module dependencies.\n */\n\nconst tty = require('tty');\nconst util = require('util');\n\n/**\n * This is the Node.js implementation of `debug()`.\n */\n\nexports.init = init;\nexports.log = log;\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.destroy = util.deprecate(\n\t() => {},\n\t'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'\n);\n\n/**\n * Colors.\n */\n\nexports.colors = [6, 2, 3, 4, 5, 1];\n\ntry {\n\t// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)\n\t// eslint-disable-next-line import/no-extraneous-dependencies\n\tconst supportsColor = require('supports-color');\n\n\tif (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {\n\t\texports.colors = [\n\t\t\t20,\n\t\t\t21,\n\t\t\t26,\n\t\t\t27,\n\t\t\t32,\n\t\t\t33,\n\t\t\t38,\n\t\t\t39,\n\t\t\t40,\n\t\t\t41,\n\t\t\t42,\n\t\t\t43,\n\t\t\t44,\n\t\t\t45,\n\t\t\t56,\n\t\t\t57,\n\t\t\t62,\n\t\t\t63,\n\t\t\t68,\n\t\t\t69,\n\t\t\t74,\n\t\t\t75,\n\t\t\t76,\n\t\t\t77,\n\t\t\t78,\n\t\t\t79,\n\t\t\t80,\n\t\t\t81,\n\t\t\t92,\n\t\t\t93,\n\t\t\t98,\n\t\t\t99,\n\t\t\t112,\n\t\t\t113,\n\t\t\t128,\n\t\t\t129,\n\t\t\t134,\n\t\t\t135,\n\t\t\t148,\n\t\t\t149,\n\t\t\t160,\n\t\t\t161,\n\t\t\t162,\n\t\t\t163,\n\t\t\t164,\n\t\t\t165,\n\t\t\t166,\n\t\t\t167,\n\t\t\t168,\n\t\t\t169,\n\t\t\t170,\n\t\t\t171,\n\t\t\t172,\n\t\t\t173,\n\t\t\t178,\n\t\t\t179,\n\t\t\t184,\n\t\t\t185,\n\t\t\t196,\n\t\t\t197,\n\t\t\t198,\n\t\t\t199,\n\t\t\t200,\n\t\t\t201,\n\t\t\t202,\n\t\t\t203,\n\t\t\t204,\n\t\t\t205,\n\t\t\t206,\n\t\t\t207,\n\t\t\t208,\n\t\t\t209,\n\t\t\t214,\n\t\t\t215,\n\t\t\t220,\n\t\t\t221\n\t\t];\n\t}\n} catch (error) {\n\t// Swallow - we only care if `supports-color` is available; it doesn't have to be.\n}\n\n/**\n * Build up the default `inspectOpts` object from the environment variables.\n *\n * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js\n */\n\nexports.inspectOpts = Object.keys(process.env).filter(key => {\n\treturn /^debug_/i.test(key);\n}).reduce((obj, key) => {\n\t// Camel-case\n\tconst prop = key\n\t\t.substring(6)\n\t\t.toLowerCase()\n\t\t.replace(/_([a-z])/g, (_, k) => {\n\t\t\treturn k.toUpperCase();\n\t\t});\n\n\t// Coerce string value into JS value\n\tlet val = process.env[key];\n\tif (/^(yes|on|true|enabled)$/i.test(val)) {\n\t\tval = true;\n\t} else if (/^(no|off|false|disabled)$/i.test(val)) {\n\t\tval = false;\n\t} else if (val === 'null') {\n\t\tval = null;\n\t} else {\n\t\tval = Number(val);\n\t}\n\n\tobj[prop] = val;\n\treturn obj;\n}, {});\n\n/**\n * Is stdout a TTY? Colored output is enabled when `true`.\n */\n\nfunction useColors() {\n\treturn 'colors' in exports.inspectOpts ?\n\t\tBoolean(exports.inspectOpts.colors) :\n\t\ttty.isatty(process.stderr.fd);\n}\n\n/**\n * Adds ANSI color escape codes if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\tconst {namespace: name, useColors} = this;\n\n\tif (useColors) {\n\t\tconst c = this.color;\n\t\tconst colorCode = '\\u001B[3' + (c < 8 ? c : '8;5;' + c);\n\t\tconst prefix = ` ${colorCode};1m${name} \\u001B[0m`;\n\n\t\targs[0] = prefix + args[0].split('\\n').join('\\n' + prefix);\n\t\targs.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\\u001B[0m');\n\t} else {\n\t\targs[0] = getDate() + name + ' ' + args[0];\n\t}\n}\n\nfunction getDate() {\n\tif (exports.inspectOpts.hideDate) {\n\t\treturn '';\n\t}\n\treturn new Date().toISOString() + ' ';\n}\n\n/**\n * Invokes `util.format()` with the specified arguments and writes to stderr.\n */\n\nfunction log(...args) {\n\treturn process.stderr.write(util.format(...args) + '\\n');\n}\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\tif (namespaces) {\n\t\tprocess.env.DEBUG = namespaces;\n\t} else {\n\t\t// If you set a process.env field to null or undefined, it gets cast to the\n\t\t// string 'null' or 'undefined'. Just delete instead.\n\t\tdelete process.env.DEBUG;\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\n\nfunction load() {\n\treturn process.env.DEBUG;\n}\n\n/**\n * Init logic for `debug` instances.\n *\n * Create a new `inspectOpts` object in case `useColors` is set\n * differently for a particular `debug` instance.\n */\n\nfunction init(debug) {\n\tdebug.inspectOpts = {};\n\n\tconst keys = Object.keys(exports.inspectOpts);\n\tfor (let i = 0; i < keys.length; i++) {\n\t\tdebug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %o to `util.inspect()`, all on a single line.\n */\n\nformatters.o = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts)\n\t\t.split('\\n')\n\t\t.map(str => str.trim())\n\t\t.join(' ');\n};\n\n/**\n * Map %O to `util.inspect()`, allowing multiple lines if needed.\n */\n\nformatters.O = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts);\n};\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.decodeHTML = exports.decodeHTMLStrict = exports.decodeXML = void 0;\nvar entities_json_1 = __importDefault(require(\"./maps/entities.json\"));\nvar legacy_json_1 = __importDefault(require(\"./maps/legacy.json\"));\nvar xml_json_1 = __importDefault(require(\"./maps/xml.json\"));\nvar decode_codepoint_1 = __importDefault(require(\"./decode_codepoint\"));\nvar strictEntityRe = /&(?:[a-zA-Z0-9]+|#[xX][\\da-fA-F]+|#\\d+);/g;\nexports.decodeXML = getStrictDecoder(xml_json_1.default);\nexports.decodeHTMLStrict = getStrictDecoder(entities_json_1.default);\nfunction getStrictDecoder(map) {\n var replace = getReplacer(map);\n return function (str) { return String(str).replace(strictEntityRe, replace); };\n}\nvar sorter = function (a, b) { return (a < b ? 1 : -1); };\nexports.decodeHTML = (function () {\n var legacy = Object.keys(legacy_json_1.default).sort(sorter);\n var keys = Object.keys(entities_json_1.default).sort(sorter);\n for (var i = 0, j = 0; i < keys.length; i++) {\n if (legacy[j] === keys[i]) {\n keys[i] += \";?\";\n j++;\n }\n else {\n keys[i] += \";\";\n }\n }\n var re = new RegExp(\"&(?:\" + keys.join(\"|\") + \"|#[xX][\\\\da-fA-F]+;?|#\\\\d+;?)\", \"g\");\n var replace = getReplacer(entities_json_1.default);\n function replacer(str) {\n if (str.substr(-1) !== \";\")\n str += \";\";\n return replace(str);\n }\n // TODO consider creating a merged map\n return function (str) { return String(str).replace(re, replacer); };\n})();\nfunction getReplacer(map) {\n return function replace(str) {\n if (str.charAt(1) === \"#\") {\n var secondChar = str.charAt(2);\n if (secondChar === \"X\" || secondChar === \"x\") {\n return decode_codepoint_1.default(parseInt(str.substr(3), 16));\n }\n return decode_codepoint_1.default(parseInt(str.substr(2), 10));\n }\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n return map[str.slice(1, -1)] || str;\n };\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar decode_json_1 = __importDefault(require(\"./maps/decode.json\"));\n// Adapted from https://github.com/mathiasbynens/he/blob/master/src/he.js#L94-L119\nvar fromCodePoint = \n// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\nString.fromCodePoint ||\n function (codePoint) {\n var output = \"\";\n if (codePoint > 0xffff) {\n codePoint -= 0x10000;\n output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);\n codePoint = 0xdc00 | (codePoint & 0x3ff);\n }\n output += String.fromCharCode(codePoint);\n return output;\n };\nfunction decodeCodePoint(codePoint) {\n if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {\n return \"\\uFFFD\";\n }\n if (codePoint in decode_json_1.default) {\n codePoint = decode_json_1.default[codePoint];\n }\n return fromCodePoint(codePoint);\n}\nexports.default = decodeCodePoint;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.escapeUTF8 = exports.escape = exports.encodeNonAsciiHTML = exports.encodeHTML = exports.encodeXML = void 0;\nvar xml_json_1 = __importDefault(require(\"./maps/xml.json\"));\nvar inverseXML = getInverseObj(xml_json_1.default);\nvar xmlReplacer = getInverseReplacer(inverseXML);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using XML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexports.encodeXML = getASCIIEncoder(inverseXML);\nvar entities_json_1 = __importDefault(require(\"./maps/entities.json\"));\nvar inverseHTML = getInverseObj(entities_json_1.default);\nvar htmlReplacer = getInverseReplacer(inverseHTML);\n/**\n * Encodes all entities and non-ASCII characters in the input.\n *\n * This includes characters that are valid ASCII characters in HTML documents.\n * For example `#` will be encoded as `#`. To get a more compact output,\n * consider using the `encodeNonAsciiHTML` function.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexports.encodeHTML = getInverse(inverseHTML, htmlReplacer);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in HTML\n * documents using HTML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexports.encodeNonAsciiHTML = getASCIIEncoder(inverseHTML);\nfunction getInverseObj(obj) {\n return Object.keys(obj)\n .sort()\n .reduce(function (inverse, name) {\n inverse[obj[name]] = \"&\" + name + \";\";\n return inverse;\n }, {});\n}\nfunction getInverseReplacer(inverse) {\n var single = [];\n var multiple = [];\n for (var _i = 0, _a = Object.keys(inverse); _i < _a.length; _i++) {\n var k = _a[_i];\n if (k.length === 1) {\n // Add value to single array\n single.push(\"\\\\\" + k);\n }\n else {\n // Add value to multiple array\n multiple.push(k);\n }\n }\n // Add ranges to single characters.\n single.sort();\n for (var start = 0; start < single.length - 1; start++) {\n // Find the end of a run of characters\n var end = start;\n while (end < single.length - 1 &&\n single[end].charCodeAt(1) + 1 === single[end + 1].charCodeAt(1)) {\n end += 1;\n }\n var count = 1 + end - start;\n // We want to replace at least three characters\n if (count < 3)\n continue;\n single.splice(start, count, single[start] + \"-\" + single[end]);\n }\n multiple.unshift(\"[\" + single.join(\"\") + \"]\");\n return new RegExp(multiple.join(\"|\"), \"g\");\n}\n// /[^\\0-\\x7F]/gu\nvar reNonASCII = /(?:[\\x80-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])/g;\nvar getCodePoint = \n// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\nString.prototype.codePointAt != null\n ? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n function (str) { return str.codePointAt(0); }\n : // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n function (c) {\n return (c.charCodeAt(0) - 0xd800) * 0x400 +\n c.charCodeAt(1) -\n 0xdc00 +\n 0x10000;\n };\nfunction singleCharReplacer(c) {\n return \"\" + (c.length > 1 ? getCodePoint(c) : c.charCodeAt(0))\n .toString(16)\n .toUpperCase() + \";\";\n}\nfunction getInverse(inverse, re) {\n return function (data) {\n return data\n .replace(re, function (name) { return inverse[name]; })\n .replace(reNonASCII, singleCharReplacer);\n };\n}\nvar reEscapeChars = new RegExp(xmlReplacer.source + \"|\" + reNonASCII.source, \"g\");\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using numeric hexadecimal reference (eg. `ü`).\n *\n * Have a look at `escapeUTF8` if you want a more concise output at the expense\n * of reduced transportability.\n *\n * @param data String to escape.\n */\nfunction escape(data) {\n return data.replace(reEscapeChars, singleCharReplacer);\n}\nexports.escape = escape;\n/**\n * Encodes all characters not valid in XML documents using numeric hexadecimal\n * reference (eg. `ü`).\n *\n * Note that the output will be character-set dependent.\n *\n * @param data String to escape.\n */\nfunction escapeUTF8(data) {\n return data.replace(xmlReplacer, singleCharReplacer);\n}\nexports.escapeUTF8 = escapeUTF8;\nfunction getASCIIEncoder(obj) {\n return function (data) {\n return data.replace(reEscapeChars, function (c) { return obj[c] || singleCharReplacer(c); });\n };\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.decodeXMLStrict = exports.decodeHTML5Strict = exports.decodeHTML4Strict = exports.decodeHTML5 = exports.decodeHTML4 = exports.decodeHTMLStrict = exports.decodeHTML = exports.decodeXML = exports.encodeHTML5 = exports.encodeHTML4 = exports.escapeUTF8 = exports.escape = exports.encodeNonAsciiHTML = exports.encodeHTML = exports.encodeXML = exports.encode = exports.decodeStrict = exports.decode = void 0;\nvar decode_1 = require(\"./decode\");\nvar encode_1 = require(\"./encode\");\n/**\n * Decodes a string with entities.\n *\n * @param data String to decode.\n * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `decodeXML` or `decodeHTML` directly.\n */\nfunction decode(data, level) {\n return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTML)(data);\n}\nexports.decode = decode;\n/**\n * Decodes a string with entities. Does not allow missing trailing semicolons for entities.\n *\n * @param data String to decode.\n * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `decodeHTMLStrict` or `decodeXML` directly.\n */\nfunction decodeStrict(data, level) {\n return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTMLStrict)(data);\n}\nexports.decodeStrict = decodeStrict;\n/**\n * Encodes a string with entities.\n *\n * @param data String to encode.\n * @param level Optional level to encode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `encodeHTML`, `encodeXML` or `encodeNonAsciiHTML` directly.\n */\nfunction encode(data, level) {\n return (!level || level <= 0 ? encode_1.encodeXML : encode_1.encodeHTML)(data);\n}\nexports.encode = encode;\nvar encode_2 = require(\"./encode\");\nObject.defineProperty(exports, \"encodeXML\", { enumerable: true, get: function () { return encode_2.encodeXML; } });\nObject.defineProperty(exports, \"encodeHTML\", { enumerable: true, get: function () { return encode_2.encodeHTML; } });\nObject.defineProperty(exports, \"encodeNonAsciiHTML\", { enumerable: true, get: function () { return encode_2.encodeNonAsciiHTML; } });\nObject.defineProperty(exports, \"escape\", { enumerable: true, get: function () { return encode_2.escape; } });\nObject.defineProperty(exports, \"escapeUTF8\", { enumerable: true, get: function () { return encode_2.escapeUTF8; } });\n// Legacy aliases (deprecated)\nObject.defineProperty(exports, \"encodeHTML4\", { enumerable: true, get: function () { return encode_2.encodeHTML; } });\nObject.defineProperty(exports, \"encodeHTML5\", { enumerable: true, get: function () { return encode_2.encodeHTML; } });\nvar decode_2 = require(\"./decode\");\nObject.defineProperty(exports, \"decodeXML\", { enumerable: true, get: function () { return decode_2.decodeXML; } });\nObject.defineProperty(exports, \"decodeHTML\", { enumerable: true, get: function () { return decode_2.decodeHTML; } });\nObject.defineProperty(exports, \"decodeHTMLStrict\", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });\n// Legacy aliases (deprecated)\nObject.defineProperty(exports, \"decodeHTML4\", { enumerable: true, get: function () { return decode_2.decodeHTML; } });\nObject.defineProperty(exports, \"decodeHTML5\", { enumerable: true, get: function () { return decode_2.decodeHTML; } });\nObject.defineProperty(exports, \"decodeHTML4Strict\", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });\nObject.defineProperty(exports, \"decodeHTML5Strict\", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });\nObject.defineProperty(exports, \"decodeXMLStrict\", { enumerable: true, get: function () { return decode_2.decodeXML; } });\n","'use strict';\n//parse Empty Node as self closing node\nconst buildOptions = require('./util').buildOptions;\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n format: false,\n indentBy: ' ',\n supressEmptyNode: false,\n tagValueProcessor: function(a) {\n return a;\n },\n attrValueProcessor: function(a) {\n return a;\n },\n};\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'cdataTagName',\n 'cdataPositionChar',\n 'format',\n 'indentBy',\n 'supressEmptyNode',\n 'tagValueProcessor',\n 'attrValueProcessor',\n];\n\nfunction Parser(options) {\n this.options = buildOptions(options, defaultOptions, props);\n if (this.options.ignoreAttributes || this.options.attrNodeName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n if (this.options.cdataTagName) {\n this.isCDATA = isCDATA;\n } else {\n this.isCDATA = function(/*a*/) {\n return false;\n };\n }\n this.replaceCDATAstr = replaceCDATAstr;\n this.replaceCDATAarr = replaceCDATAarr;\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 if (this.options.supressEmptyNode) {\n this.buildTextNode = buildEmptyTextNode;\n this.buildObjNode = buildEmptyObjNode;\n } else {\n this.buildTextNode = buildTextValNode;\n this.buildObjNode = buildObjectNode;\n }\n\n this.buildTextValNode = buildTextValNode;\n this.buildObjectNode = buildObjectNode;\n}\n\nParser.prototype.parse = function(jObj) {\n return this.j2x(jObj, 0).val;\n};\n\nParser.prototype.j2x = function(jObj, level) {\n let attrStr = '';\n let val = '';\n const keys = Object.keys(jObj);\n const len = keys.length;\n for (let i = 0; i < len; i++) {\n const key = keys[i];\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node\n } else if (jObj[key] === null) {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextNode(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 += ' ' + attr + '=\"' + this.options.attrValueProcessor('' + jObj[key]) + '\"';\n } else if (this.isCDATA(key)) {\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAstr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAstr('', jObj[key]);\n }\n } else {\n //tag value\n if (key === this.options.textNodeName) {\n if (jObj[this.options.cdataTagName]) {\n //value will added while processing cdata\n } else {\n val += this.options.tagValueProcessor('' + jObj[key]);\n }\n } else {\n val += this.buildTextNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n if (this.isCDATA(key)) {\n val += this.indentate(level);\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAarr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAarr('', jObj[key]);\n }\n } else {\n //nested nodes\n const arrLen = jObj[key].length;\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 val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n const result = this.j2x(item, level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n } else {\n val += this.buildTextNode(item, key, '', level);\n }\n }\n }\n } else {\n //nested node\n if (this.options.attrNodeName && key === this.options.attrNodeName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += ' ' + Ks[j] + '=\"' + this.options.attrValueProcessor('' + jObj[key][Ks[j]]) + '\"';\n }\n } else {\n const result = this.j2x(jObj[key], level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nfunction replaceCDATAstr(str, cdata) {\n str = this.options.tagValueProcessor('' + str);\n if (this.options.cdataPositionChar === '' || str === '') {\n return str + '');\n }\n return str + this.newLine;\n }\n}\n\nfunction buildObjectNode(val, key, attrStr, level) {\n if (attrStr && !val.includes('<')) {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n '>' +\n val +\n //+ this.newLine\n // + this.indentate(level)\n '' +\n key +\n this.tagEndChar\n );\n } else {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n this.tagEndChar +\n val +\n //+ this.newLine\n this.indentate(level) +\n '' +\n key +\n this.tagEndChar\n );\n }\n}\n\nfunction buildEmptyObjNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildObjectNode(val, key, attrStr, level);\n } else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n //+ this.newLine\n }\n}\n\nfunction buildTextValNode(val, key, attrStr, level) {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n '>' +\n this.options.tagValueProcessor(val) +\n '' +\n key +\n this.tagEndChar\n );\n}\n\nfunction buildEmptyTextNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildTextValNode(val, key, attrStr, level);\n } else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n }\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)) {\n return name.substr(this.attrPrefixLen);\n } else {\n return false;\n }\n}\n\nfunction isCDATA(name) {\n return name === this.options.cdataTagName;\n}\n\n//formatting\n//indentation\n//\\n after each closing or self closing tag\n\nmodule.exports = Parser;\n","'use strict';\nconst char = function(a) {\n return String.fromCharCode(a);\n};\n\nconst chars = {\n nilChar: char(176),\n missingChar: char(201),\n nilPremitive: char(175),\n missingPremitive: char(200),\n\n emptyChar: char(178),\n emptyValue: char(177), //empty Premitive\n\n boundryChar: char(179),\n\n objStart: char(198),\n arrStart: char(204),\n arrayEnd: char(185),\n};\n\nconst charsArr = [\n chars.nilChar,\n chars.nilPremitive,\n chars.missingChar,\n chars.missingPremitive,\n chars.boundryChar,\n chars.emptyChar,\n chars.emptyValue,\n chars.arrayEnd,\n chars.objStart,\n chars.arrStart,\n];\n\nconst _e = function(node, e_schema, options) {\n if (typeof e_schema === 'string') {\n //premitive\n if (node && node[0] && node[0].val !== undefined) {\n return getValue(node[0].val, e_schema);\n } else {\n return getValue(node, e_schema);\n }\n } else {\n const hasValidData = hasData(node);\n if (hasValidData === true) {\n let str = '';\n if (Array.isArray(e_schema)) {\n //attributes can't be repeated. hence check in children tags only\n str += chars.arrStart;\n const itemSchema = e_schema[0];\n //var itemSchemaType = itemSchema;\n const arr_len = node.length;\n\n if (typeof itemSchema === 'string') {\n for (let arr_i = 0; arr_i < arr_len; arr_i++) {\n const r = getValue(node[arr_i].val, itemSchema);\n str = processValue(str, r);\n }\n } else {\n for (let arr_i = 0; arr_i < arr_len; arr_i++) {\n const r = _e(node[arr_i], itemSchema, options);\n str = processValue(str, r);\n }\n }\n str += chars.arrayEnd; //indicates that next item is not array item\n } else {\n //object\n str += chars.objStart;\n const keys = Object.keys(e_schema);\n if (Array.isArray(node)) {\n node = node[0];\n }\n for (let i in keys) {\n const key = keys[i];\n //a property defined in schema can be present either in attrsMap or children tags\n //options.textNodeName will not present in both maps, take it's value from val\n //options.attrNodeName will be present in attrsMap\n let r;\n if (!options.ignoreAttributes && node.attrsMap && node.attrsMap[key]) {\n r = _e(node.attrsMap[key], e_schema[key], options);\n } else if (key === options.textNodeName) {\n r = _e(node.val, e_schema[key], options);\n } else {\n r = _e(node.child[key], e_schema[key], options);\n }\n str = processValue(str, r);\n }\n }\n return str;\n } else {\n return hasValidData;\n }\n }\n};\n\nconst getValue = function(a /*, type*/) {\n switch (a) {\n case undefined:\n return chars.missingPremitive;\n case null:\n return chars.nilPremitive;\n case '':\n return chars.emptyValue;\n default:\n return a;\n }\n};\n\nconst processValue = function(str, r) {\n if (!isAppChar(r[0]) && !isAppChar(str[str.length - 1])) {\n str += chars.boundryChar;\n }\n return str + r;\n};\n\nconst isAppChar = function(ch) {\n return charsArr.indexOf(ch) !== -1;\n};\n\nfunction hasData(jObj) {\n if (jObj === undefined) {\n return chars.missingChar;\n } else if (jObj === null) {\n return chars.nilChar;\n } else if (\n jObj.child &&\n Object.keys(jObj.child).length === 0 &&\n (!jObj.attrsMap || Object.keys(jObj.attrsMap).length === 0)\n ) {\n return chars.emptyChar;\n } else {\n return true;\n }\n}\n\nconst x2j = require('./xmlstr2xmlnode');\nconst buildOptions = require('./util').buildOptions;\n\nconst convert2nimn = function(node, e_schema, options) {\n options = buildOptions(options, x2j.defaultOptions, x2j.props);\n return _e(node, e_schema, options);\n};\n\nexports.convert2nimn = convert2nimn;\n","'use strict';\n\nconst util = require('./util');\n\nconst convertToJson = function(node, options, parentTagName) {\n const jObj = {};\n\n // when no child node or attr is present\n if ((!node.child || util.isEmptyObject(node.child)) && (!node.attrsMap || util.isEmptyObject(node.attrsMap))) {\n return util.isExist(node.val) ? node.val : '';\n }\n\n // otherwise create a textnode if node has some text\n if (util.isExist(node.val) && !(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) {\n const asArray = util.isTagNameInArrayMode(node.tagname, options.arrayMode, parentTagName)\n jObj[options.textNodeName] = asArray ? [node.val] : node.val;\n }\n\n util.merge(jObj, node.attrsMap, options.arrayMode);\n\n const keys = Object.keys(node.child);\n for (let index = 0; index < keys.length; index++) {\n const tagName = keys[index];\n if (node.child[tagName] && node.child[tagName].length > 1) {\n jObj[tagName] = [];\n for (let tag in node.child[tagName]) {\n if (node.child[tagName].hasOwnProperty(tag)) {\n jObj[tagName].push(convertToJson(node.child[tagName][tag], options, tagName));\n }\n }\n } else {\n const result = convertToJson(node.child[tagName][0], options, tagName);\n const asArray = (options.arrayMode === true && typeof result === 'object') || util.isTagNameInArrayMode(tagName, options.arrayMode, parentTagName);\n jObj[tagName] = asArray ? [result] : result;\n }\n }\n\n //add value\n return jObj;\n};\n\nexports.convertToJson = convertToJson;\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst x2j = require('./xmlstr2xmlnode');\n\n//TODO: do it later\nconst convertToJsonString = function(node, options) {\n options = buildOptions(options, x2j.defaultOptions, x2j.props);\n\n options.indentBy = options.indentBy || '';\n return _cToJsonStr(node, options, 0);\n};\n\nconst _cToJsonStr = function(node, options, level) {\n let jObj = '{';\n\n //traver through all the children\n const keys = Object.keys(node.child);\n\n for (let index = 0; index < keys.length; index++) {\n var tagname = keys[index];\n if (node.child[tagname] && node.child[tagname].length > 1) {\n jObj += '\"' + tagname + '\" : [ ';\n for (var tag in node.child[tagname]) {\n jObj += _cToJsonStr(node.child[tagname][tag], options) + ' , ';\n }\n jObj = jObj.substr(0, jObj.length - 1) + ' ] '; //remove extra comma in last\n } else {\n jObj += '\"' + tagname + '\" : ' + _cToJsonStr(node.child[tagname][0], options) + ' ,';\n }\n }\n util.merge(jObj, node.attrsMap);\n //add attrsMap as new children\n if (util.isEmptyObject(jObj)) {\n return util.isExist(node.val) ? node.val : '';\n } else {\n if (util.isExist(node.val)) {\n if (!(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) {\n jObj += '\"' + options.textNodeName + '\" : ' + stringval(node.val);\n }\n }\n }\n //add value\n if (jObj[jObj.length - 1] === ',') {\n jObj = jObj.substr(0, jObj.length - 2);\n }\n return jObj + '}';\n};\n\nfunction stringval(v) {\n if (v === true || v === false || !isNaN(v)) {\n return v;\n } else {\n return '\"' + v + '\"';\n }\n}\n\nfunction indentate(options, level) {\n return options.indentBy.repeat(level);\n}\n\nexports.convertToJsonString = convertToJsonString;\n","'use strict';\n\nconst nodeToJson = require('./node2json');\nconst xmlToNodeobj = require('./xmlstr2xmlnode');\nconst x2xmlnode = require('./xmlstr2xmlnode');\nconst buildOptions = require('./util').buildOptions;\nconst validator = require('./validator');\n\nexports.parse = function(xmlData, options, validationOption) {\n if( validationOption){\n if(validationOption === true) validationOption = {}\n \n const result = validator.validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( result.err.msg)\n }\n }\n options = buildOptions(options, x2xmlnode.defaultOptions, x2xmlnode.props);\n const traversableObj = xmlToNodeobj.getTraversalObj(xmlData, options)\n //print(traversableObj, \" \");\n return nodeToJson.convertToJson(traversableObj, options);\n};\nexports.convertTonimn = require('./nimndata').convert2nimn;\nexports.getTraversalObj = xmlToNodeobj.getTraversalObj;\nexports.convertToJson = nodeToJson.convertToJson;\nexports.convertToJsonString = require('./node2json_str').convertToJsonString;\nexports.validate = validator.validate;\nexports.j2xParser = require('./json2xml');\nexports.parseToNimn = function(xmlData, schema, options) {\n return exports.convertTonimn(exports.getTraversalObj(xmlData, options), schema, options);\n};\n\n\nfunction print(xmlNode, indentation){\n if(xmlNode){\n console.log(indentation + \"{\")\n console.log(indentation + \" \\\"tagName\\\": \\\"\" + xmlNode.tagname + \"\\\", \");\n if(xmlNode.parent){\n console.log(indentation + \" \\\"parent\\\": \\\"\" + xmlNode.parent.tagname + \"\\\", \");\n }\n console.log(indentation + \" \\\"val\\\": \\\"\" + xmlNode.val + \"\\\", \");\n console.log(indentation + \" \\\"attrs\\\": \" + JSON.stringify(xmlNode.attrsMap,null,4) + \", \");\n\n if(xmlNode.child){\n console.log(indentation + \"\\\"child\\\": {\")\n const indentation2 = indentation + indentation;\n Object.keys(xmlNode.child).forEach( function(key) {\n const node = xmlNode.child[key];\n\n if(Array.isArray(node)){\n console.log(indentation + \"\\\"\"+key+\"\\\" :[\")\n node.forEach( function(item,index) {\n //console.log(indentation + \" \\\"\"+index+\"\\\" : [\")\n print(item, indentation2);\n })\n console.log(indentation + \"],\") \n }else{\n console.log(indentation + \" \\\"\"+key+\"\\\" : {\")\n print(node, indentation2);\n console.log(indentation + \"},\") \n }\n });\n console.log(indentation + \"},\")\n }\n console.log(indentation + \"},\")\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 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.buildOptions = function(options, defaultOptions, props) {\n var newOptions = {};\n if (!options) {\n return defaultOptions; //if there are not options\n }\n\n for (let i = 0; i < props.length; i++) {\n if (options[props[i]] !== undefined) {\n newOptions[props[i]] = options[props[i]];\n } else {\n newOptions[props[i]] = defaultOptions[props[i]];\n }\n }\n return newOptions;\n};\n\n/**\n * Check if a tag name should be treated as array\n *\n * @param tagName the node tagname\n * @param arrayMode the array mode option\n * @param parentTagName the parent tag name\n * @returns {boolean} true if node should be parsed as array\n */\nexports.isTagNameInArrayMode = function (tagName, arrayMode, parentTagName) {\n if (arrayMode === false) {\n return false;\n } else if (arrayMode instanceof RegExp) {\n return arrayMode.test(tagName);\n } else if (typeof arrayMode === 'function') {\n return !!arrayMode(tagName, parentTagName);\n }\n\n return arrayMode === \"strict\";\n}\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};\n\nconst props = ['allowBooleanAttributes'];\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexports.validate = function (xmlData, options) {\n options = util.buildOptions(options, defaultOptions, props);\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(/()/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\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 = \"There is an unnecessary space between tag name and backward slash ' ..'.\";\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 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, i - attrStr.length + 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, i));\n } else {\n const otg = tags.pop();\n if (tagName !== otg) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+otg+\"' is expected inplace of '\"+tagName+\"'.\", getLineNumberForPosition(xmlData, i));\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 {\n tags.push(tagName);\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 }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if (xmlData[i] === ' ' || xmlData[i] === '\\t' || xmlData[i] === '\\n' || xmlData[i] === '\\r') {\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 > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+JSON.stringify(tags, null, 4).replace(/\\r?\\n/g, '')+\"' found.\", 1);\n }\n\n return true;\n};\n\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n var start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n var 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\nvar doubleQuote = '\"';\nvar 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 continue;\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(attrStr, matches[i][0]))\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(attrStr, matches[i][0]));\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(attrStr, matches[i][0]));\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(attrStr, matches[i][0]));\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,\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 var lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return lines.length;\n}\n\n//this function returns the position of the last character of match within attrStr\nfunction getPositionFromMatch(attrStr, match) {\n return attrStr.indexOf(match) + match.length;\n}\n","'use strict';\n\nmodule.exports = function(tagname, parent, val) {\n this.tagname = tagname;\n this.parent = parent;\n this.child = {}; //child tags\n this.attrsMap = {}; //attributes map\n this.val = val; //text only\n this.addChild = function(child) {\n if (Array.isArray(this.child[child.tagname])) {\n //already presents\n this.child[child.tagname].push(child);\n } else {\n this.child[child.tagname] = [child];\n }\n };\n};\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst xmlNode = require('./xmlNode');\nconst 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\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\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n ignoreNameSpace: false,\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseNodeValue: true,\n parseAttributeValue: false,\n arrayMode: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n tagValueProcessor: function(a, tagName) {\n return a;\n },\n attrValueProcessor: function(a, attrName) {\n return a;\n },\n stopNodes: []\n //decodeStrict: false,\n};\n\nexports.defaultOptions = defaultOptions;\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'ignoreNameSpace',\n 'allowBooleanAttributes',\n 'parseNodeValue',\n 'parseAttributeValue',\n 'arrayMode',\n 'trimValues',\n 'cdataTagName',\n 'cdataPositionChar',\n 'tagValueProcessor',\n 'attrValueProcessor',\n 'parseTrueNumberOnly',\n 'stopNodes'\n];\nexports.props = props;\n\n/**\n * Trim -> valueProcessor -> parse value\n * @param {string} tagName\n * @param {string} val\n * @param {object} options\n */\nfunction processTagValue(tagName, val, options) {\n if (val) {\n if (options.trimValues) {\n val = val.trim();\n }\n val = options.tagValueProcessor(val, tagName);\n val = parseValue(val, options.parseNodeValue, options.parseTrueNumberOnly);\n }\n\n return val;\n}\n\nfunction resolveNameSpace(tagname, options) {\n if (options.ignoreNameSpace) {\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\nfunction parseValue(val, shouldParse, parseTrueNumberOnly) {\n if (shouldParse && typeof val === 'string') {\n let parsed;\n if (val.trim() === '' || isNaN(val)) {\n parsed = val === 'true' ? true : val === 'false' ? false : val;\n } else {\n if (val.indexOf('0x') !== -1) {\n //support hexa decimal\n parsed = Number.parseInt(val, 16);\n } else if (val.indexOf('.') !== -1) {\n parsed = Number.parseFloat(val);\n val = val.replace(/\\.?0+$/, \"\");\n } else {\n parsed = Number.parseInt(val, 10);\n }\n if (parseTrueNumberOnly) {\n parsed = String(parsed) === val ? parsed : val;\n }\n }\n return parsed;\n } else {\n if (util.isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\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*([\\'\"])(.*?)\\\\3)?', 'g');\n\nfunction buildAttributesMap(attrStr, options) {\n if (!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 = resolveNameSpace(matches[i][1], options);\n if (attrName.length) {\n if (matches[i][4] !== undefined) {\n if (options.trimValues) {\n matches[i][4] = matches[i][4].trim();\n }\n matches[i][4] = options.attrValueProcessor(matches[i][4], attrName);\n attrs[options.attributeNamePrefix + attrName] = parseValue(\n matches[i][4],\n options.parseAttributeValue,\n options.parseTrueNumberOnly\n );\n } else if (options.allowBooleanAttributes) {\n attrs[options.attributeNamePrefix + attrName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (options.attrNodeName) {\n const attrCollection = {};\n attrCollection[options.attrNodeName] = attrs;\n return attrCollection;\n }\n return attrs;\n }\n}\n\nconst getTraversalObj = function(xmlData, options) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\");\n options = buildOptions(options, defaultOptions, props);\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n\n//function match(xmlData){\n for(let i=0; i< xmlData.length; i++){\n const ch = xmlData[i];\n if(ch === '<'){\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(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n /* if (currentNode.parent) {\n currentNode.parent.val = util.getValue(currentNode.parent.val) + '' + processTagValue2(tagName, textData , options);\n } */\n if(currentNode){\n if(currentNode.val){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(tagName, textData , options);\n }else{\n currentNode.val = processTagValue(tagName, textData , options);\n }\n }\n\n if (options.stopNodes.length && options.stopNodes.includes(currentNode.tagname)) {\n currentNode.child = []\n if (currentNode.attrsMap == undefined) { currentNode.attrsMap = {}}\n currentNode.val = xmlData.substr(currentNode.startIndex + 1, i - currentNode.startIndex - 1)\n }\n currentNode = currentNode.parent;\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n i = findClosingIndex(xmlData, \"?>\", i, \"Pi Tag is not closed.\")\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n i = findClosingIndex(xmlData, \"-->\", i, \"Comment is not closed.\")\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"DOCTYPE is not closed.\")\n const tagExp = xmlData.substring(i, closeIndex);\n if(tagExp.indexOf(\"[\") >= 0){\n i = xmlData.indexOf(\"]>\", i) + 1;\n }else{\n i = closeIndex;\n }\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 //considerations\n //1. CDATA will always have parent node\n //2. A tag with CDATA is not a leaf node so it's value would be string type.\n if(textData){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(currentNode.tagname, textData , options);\n textData = \"\";\n }\n\n if (options.cdataTagName) {\n //add cdata node\n const childNode = new xmlNode(options.cdataTagName, currentNode, tagExp);\n currentNode.addChild(childNode);\n //for backtracking\n currentNode.val = util.getValue(currentNode.val) + options.cdataPositionChar;\n //add rest value to parent node\n if (tagExp) {\n childNode.val = tagExp;\n }\n } else {\n currentNode.val = (currentNode.val || '') + (tagExp || '');\n }\n\n i = closeIndex + 2;\n }else {//Opening tag\n const result = closingIndexForOpeningTag(xmlData, i+1)\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.indexOf(\" \");\n let tagName = tagExp;\n let shouldBuildAttributesMap = true;\n if(separatorIndex !== -1){\n tagName = tagExp.substr(0, separatorIndex).replace(/\\s\\s*$/, '');\n tagExp = tagExp.substr(separatorIndex + 1);\n }\n\n if(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n shouldBuildAttributesMap = tagName !== result.data.substr(colonIndex + 1);\n }\n }\n\n //save text to parent node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue( currentNode.tagname, textData, options);\n }\n }\n\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){//selfClosing tag\n\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n\n const childNode = new xmlNode(tagName, currentNode, '');\n if(tagName !== tagExp){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n }else{//opening tag\n\n const childNode = new xmlNode( tagName, currentNode );\n if (options.stopNodes.length && options.stopNodes.includes(childNode.tagname)) {\n childNode.startIndex=closeIndex;\n }\n if(tagName !== tagExp && shouldBuildAttributesMap){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj;\n}\n\nfunction closingIndexForOpeningTag(data, i){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < data.length; index++) {\n let ch = data[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === '>') {\n return {\n data: tagExp,\n index: index\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\nexports.getTraversalObj = getTraversalObj;\n","var debug;\n\nmodule.exports = function () {\n if (!debug) {\n try {\n /* eslint global-require: off */\n debug = require(\"debug\")(\"follow-redirects\");\n }\n catch (error) { /* */ }\n if (typeof debug !== \"function\") {\n debug = function () { /* */ };\n }\n }\n debug.apply(null, arguments);\n};\n","var url = require(\"url\");\nvar URL = url.URL;\nvar http = require(\"http\");\nvar https = require(\"https\");\nvar Writable = require(\"stream\").Writable;\nvar assert = require(\"assert\");\nvar debug = require(\"./debug\");\n\n// Create handlers that pass events from native requests\nvar events = [\"abort\", \"aborted\", \"connect\", \"error\", \"socket\", \"timeout\"];\nvar eventHandlers = Object.create(null);\nevents.forEach(function (event) {\n eventHandlers[event] = function (arg1, arg2, arg3) {\n this._redirectable.emit(event, arg1, arg2, arg3);\n };\n});\n\n// Error types with codes\nvar RedirectionError = createErrorType(\n \"ERR_FR_REDIRECTION_FAILURE\",\n \"Redirected request failed\"\n);\nvar TooManyRedirectsError = createErrorType(\n \"ERR_FR_TOO_MANY_REDIRECTS\",\n \"Maximum number of redirects exceeded\"\n);\nvar MaxBodyLengthExceededError = createErrorType(\n \"ERR_FR_MAX_BODY_LENGTH_EXCEEDED\",\n \"Request body larger than maxBodyLength limit\"\n);\nvar WriteAfterEndError = createErrorType(\n \"ERR_STREAM_WRITE_AFTER_END\",\n \"write after end\"\n);\n\n// An HTTP(S) request that can be redirected\nfunction RedirectableRequest(options, responseCallback) {\n // Initialize the request\n Writable.call(this);\n this._sanitizeOptions(options);\n this._options = options;\n this._ended = false;\n this._ending = false;\n this._redirectCount = 0;\n this._redirects = [];\n this._requestBodyLength = 0;\n this._requestBodyBuffers = [];\n\n // Attach a callback if passed\n if (responseCallback) {\n this.on(\"response\", responseCallback);\n }\n\n // React to responses of native requests\n var self = this;\n this._onNativeResponse = function (response) {\n self._processResponse(response);\n };\n\n // Perform the first request\n this._performRequest();\n}\nRedirectableRequest.prototype = Object.create(Writable.prototype);\n\nRedirectableRequest.prototype.abort = function () {\n abortRequest(this._currentRequest);\n this.emit(\"abort\");\n};\n\n// Writes buffered data to the current native request\nRedirectableRequest.prototype.write = function (data, encoding, callback) {\n // Writing is not allowed if end has been called\n if (this._ending) {\n throw new WriteAfterEndError();\n }\n\n // Validate input and shift parameters if necessary\n if (!(typeof data === \"string\" || typeof data === \"object\" && (\"length\" in data))) {\n throw new TypeError(\"data should be a string, Buffer or Uint8Array\");\n }\n if (typeof encoding === \"function\") {\n callback = encoding;\n encoding = null;\n }\n\n // Ignore empty buffers, since writing them doesn't invoke the callback\n // https://github.com/nodejs/node/issues/22066\n if (data.length === 0) {\n if (callback) {\n callback();\n }\n return;\n }\n // Only write when we don't exceed the maximum body length\n if (this._requestBodyLength + data.length <= this._options.maxBodyLength) {\n this._requestBodyLength += data.length;\n this._requestBodyBuffers.push({ data: data, encoding: encoding });\n this._currentRequest.write(data, encoding, callback);\n }\n // Error when we exceed the maximum body length\n else {\n this.emit(\"error\", new MaxBodyLengthExceededError());\n this.abort();\n }\n};\n\n// Ends the current native request\nRedirectableRequest.prototype.end = function (data, encoding, callback) {\n // Shift parameters if necessary\n if (typeof data === \"function\") {\n callback = data;\n data = encoding = null;\n }\n else if (typeof encoding === \"function\") {\n callback = encoding;\n encoding = null;\n }\n\n // Write data if needed and end\n if (!data) {\n this._ended = this._ending = true;\n this._currentRequest.end(null, null, callback);\n }\n else {\n var self = this;\n var currentRequest = this._currentRequest;\n this.write(data, encoding, function () {\n self._ended = true;\n currentRequest.end(null, null, callback);\n });\n this._ending = true;\n }\n};\n\n// Sets a header value on the current native request\nRedirectableRequest.prototype.setHeader = function (name, value) {\n this._options.headers[name] = value;\n this._currentRequest.setHeader(name, value);\n};\n\n// Clears a header value on the current native request\nRedirectableRequest.prototype.removeHeader = function (name) {\n delete this._options.headers[name];\n this._currentRequest.removeHeader(name);\n};\n\n// Global timeout for all underlying requests\nRedirectableRequest.prototype.setTimeout = function (msecs, callback) {\n var self = this;\n\n // Destroys the socket on timeout\n function destroyOnTimeout(socket) {\n socket.setTimeout(msecs);\n socket.removeListener(\"timeout\", socket.destroy);\n socket.addListener(\"timeout\", socket.destroy);\n }\n\n // Sets up a timer to trigger a timeout event\n function startTimer(socket) {\n if (self._timeout) {\n clearTimeout(self._timeout);\n }\n self._timeout = setTimeout(function () {\n self.emit(\"timeout\");\n clearTimer();\n }, msecs);\n destroyOnTimeout(socket);\n }\n\n // Stops a timeout from triggering\n function clearTimer() {\n // Clear the timeout\n if (self._timeout) {\n clearTimeout(self._timeout);\n self._timeout = null;\n }\n\n // Clean up all attached listeners\n self.removeListener(\"abort\", clearTimer);\n self.removeListener(\"error\", clearTimer);\n self.removeListener(\"response\", clearTimer);\n if (callback) {\n self.removeListener(\"timeout\", callback);\n }\n if (!self.socket) {\n self._currentRequest.removeListener(\"socket\", startTimer);\n }\n }\n\n // Attach callback if passed\n if (callback) {\n this.on(\"timeout\", callback);\n }\n\n // Start the timer if or when the socket is opened\n if (this.socket) {\n startTimer(this.socket);\n }\n else {\n this._currentRequest.once(\"socket\", startTimer);\n }\n\n // Clean up on events\n this.on(\"socket\", destroyOnTimeout);\n this.on(\"abort\", clearTimer);\n this.on(\"error\", clearTimer);\n this.on(\"response\", clearTimer);\n\n return this;\n};\n\n// Proxy all other public ClientRequest methods\n[\n \"flushHeaders\", \"getHeader\",\n \"setNoDelay\", \"setSocketKeepAlive\",\n].forEach(function (method) {\n RedirectableRequest.prototype[method] = function (a, b) {\n return this._currentRequest[method](a, b);\n };\n});\n\n// Proxy all public ClientRequest properties\n[\"aborted\", \"connection\", \"socket\"].forEach(function (property) {\n Object.defineProperty(RedirectableRequest.prototype, property, {\n get: function () { return this._currentRequest[property]; },\n });\n});\n\nRedirectableRequest.prototype._sanitizeOptions = function (options) {\n // Ensure headers are always present\n if (!options.headers) {\n options.headers = {};\n }\n\n // Since http.request treats host as an alias of hostname,\n // but the url module interprets host as hostname plus port,\n // eliminate the host property to avoid confusion.\n if (options.host) {\n // Use hostname if set, because it has precedence\n if (!options.hostname) {\n options.hostname = options.host;\n }\n delete options.host;\n }\n\n // Complete the URL object when necessary\n if (!options.pathname && options.path) {\n var searchPos = options.path.indexOf(\"?\");\n if (searchPos < 0) {\n options.pathname = options.path;\n }\n else {\n options.pathname = options.path.substring(0, searchPos);\n options.search = options.path.substring(searchPos);\n }\n }\n};\n\n\n// Executes the next native request (initial or redirect)\nRedirectableRequest.prototype._performRequest = function () {\n // Load the native protocol\n var protocol = this._options.protocol;\n var nativeProtocol = this._options.nativeProtocols[protocol];\n if (!nativeProtocol) {\n this.emit(\"error\", new TypeError(\"Unsupported protocol \" + protocol));\n return;\n }\n\n // If specified, use the agent corresponding to the protocol\n // (HTTP and HTTPS use different types of agents)\n if (this._options.agents) {\n var scheme = protocol.substr(0, protocol.length - 1);\n this._options.agent = this._options.agents[scheme];\n }\n\n // Create the native request\n var request = this._currentRequest =\n nativeProtocol.request(this._options, this._onNativeResponse);\n this._currentUrl = url.format(this._options);\n\n // Set up event handlers\n request._redirectable = this;\n for (var e = 0; e < events.length; e++) {\n request.on(events[e], eventHandlers[events[e]]);\n }\n\n // End a redirected request\n // (The first request must be ended explicitly with RedirectableRequest#end)\n if (this._isRedirect) {\n // Write the request entity and end.\n var i = 0;\n var self = this;\n var buffers = this._requestBodyBuffers;\n (function writeNext(error) {\n // Only write if this request has not been redirected yet\n /* istanbul ignore else */\n if (request === self._currentRequest) {\n // Report any write errors\n /* istanbul ignore if */\n if (error) {\n self.emit(\"error\", error);\n }\n // Write the next buffer if there are still left\n else if (i < buffers.length) {\n var buffer = buffers[i++];\n /* istanbul ignore else */\n if (!request.finished) {\n request.write(buffer.data, buffer.encoding, writeNext);\n }\n }\n // End the request if `end` has been called on us\n else if (self._ended) {\n request.end();\n }\n }\n }());\n }\n};\n\n// Processes a response from the current native request\nRedirectableRequest.prototype._processResponse = function (response) {\n // Store the redirected response\n var statusCode = response.statusCode;\n if (this._options.trackRedirects) {\n this._redirects.push({\n url: this._currentUrl,\n headers: response.headers,\n statusCode: statusCode,\n });\n }\n\n // RFC7231§6.4: The 3xx (Redirection) class of status code indicates\n // that further action needs to be taken by the user agent in order to\n // fulfill the request. If a Location header field is provided,\n // the user agent MAY automatically redirect its request to the URI\n // referenced by the Location field value,\n // even if the specific status code is not understood.\n var location = response.headers.location;\n if (location && this._options.followRedirects !== false &&\n statusCode >= 300 && statusCode < 400) {\n // Abort the current request\n abortRequest(this._currentRequest);\n // Discard the remainder of the response to avoid waiting for data\n response.destroy();\n\n // RFC7231§6.4: A client SHOULD detect and intervene\n // in cyclical redirections (i.e., \"infinite\" redirection loops).\n if (++this._redirectCount > this._options.maxRedirects) {\n this.emit(\"error\", new TooManyRedirectsError());\n return;\n }\n\n // RFC7231§6.4: Automatic redirection needs to done with\n // care for methods not known to be safe, […]\n // RFC7231§6.4.2–3: For historical reasons, a user agent MAY change\n // the request method from POST to GET for the subsequent request.\n if ((statusCode === 301 || statusCode === 302) && this._options.method === \"POST\" ||\n // RFC7231§6.4.4: The 303 (See Other) status code indicates that\n // the server is redirecting the user agent to a different resource […]\n // A user agent can perform a retrieval request targeting that URI\n // (a GET or HEAD request if using HTTP) […]\n (statusCode === 303) && !/^(?:GET|HEAD)$/.test(this._options.method)) {\n this._options.method = \"GET\";\n // Drop a possible entity and headers related to it\n this._requestBodyBuffers = [];\n removeMatchingHeaders(/^content-/i, this._options.headers);\n }\n\n // Drop the Host header, as the redirect might lead to a different host\n var currentHostHeader = removeMatchingHeaders(/^host$/i, this._options.headers);\n\n // If the redirect is relative, carry over the host of the last request\n var currentUrlParts = url.parse(this._currentUrl);\n var currentHost = currentHostHeader || currentUrlParts.host;\n var currentUrl = /^\\w+:/.test(location) ? this._currentUrl :\n url.format(Object.assign(currentUrlParts, { host: currentHost }));\n\n // Determine the URL of the redirection\n var redirectUrl;\n try {\n redirectUrl = url.resolve(currentUrl, location);\n }\n catch (cause) {\n this.emit(\"error\", new RedirectionError(cause));\n return;\n }\n\n // Create the redirected request\n debug(\"redirecting to\", redirectUrl);\n this._isRedirect = true;\n var redirectUrlParts = url.parse(redirectUrl);\n Object.assign(this._options, redirectUrlParts);\n\n // Drop the Authorization header if redirecting to another domain\n if (!(redirectUrlParts.host === currentHost || isSubdomainOf(redirectUrlParts.host, currentHost))) {\n removeMatchingHeaders(/^authorization$/i, this._options.headers);\n }\n\n // Evaluate the beforeRedirect callback\n if (typeof this._options.beforeRedirect === \"function\") {\n var responseDetails = { headers: response.headers };\n try {\n this._options.beforeRedirect.call(null, this._options, responseDetails);\n }\n catch (err) {\n this.emit(\"error\", err);\n return;\n }\n this._sanitizeOptions(this._options);\n }\n\n // Perform the redirected request\n try {\n this._performRequest();\n }\n catch (cause) {\n this.emit(\"error\", new RedirectionError(cause));\n }\n }\n else {\n // The response is not a redirect; return it as-is\n response.responseUrl = this._currentUrl;\n response.redirects = this._redirects;\n this.emit(\"response\", response);\n\n // Clean up\n this._requestBodyBuffers = [];\n }\n};\n\n// Wraps the key/value object of protocols with redirect functionality\nfunction wrap(protocols) {\n // Default settings\n var exports = {\n maxRedirects: 21,\n maxBodyLength: 10 * 1024 * 1024,\n };\n\n // Wrap each protocol\n var nativeProtocols = {};\n Object.keys(protocols).forEach(function (scheme) {\n var protocol = scheme + \":\";\n var nativeProtocol = nativeProtocols[protocol] = protocols[scheme];\n var wrappedProtocol = exports[scheme] = Object.create(nativeProtocol);\n\n // Executes a request, following redirects\n function request(input, options, callback) {\n // Parse parameters\n if (typeof input === \"string\") {\n var urlStr = input;\n try {\n input = urlToOptions(new URL(urlStr));\n }\n catch (err) {\n /* istanbul ignore next */\n input = url.parse(urlStr);\n }\n }\n else if (URL && (input instanceof URL)) {\n input = urlToOptions(input);\n }\n else {\n callback = options;\n options = input;\n input = { protocol: protocol };\n }\n if (typeof options === \"function\") {\n callback = options;\n options = null;\n }\n\n // Set defaults\n options = Object.assign({\n maxRedirects: exports.maxRedirects,\n maxBodyLength: exports.maxBodyLength,\n }, input, options);\n options.nativeProtocols = nativeProtocols;\n\n assert.equal(options.protocol, protocol, \"protocol mismatch\");\n debug(\"options\", options);\n return new RedirectableRequest(options, callback);\n }\n\n // Executes a GET request, following redirects\n function get(input, options, callback) {\n var wrappedRequest = wrappedProtocol.request(input, options, callback);\n wrappedRequest.end();\n return wrappedRequest;\n }\n\n // Expose the properties on the wrapped protocol\n Object.defineProperties(wrappedProtocol, {\n request: { value: request, configurable: true, enumerable: true, writable: true },\n get: { value: get, configurable: true, enumerable: true, writable: true },\n });\n });\n return exports;\n}\n\n/* istanbul ignore next */\nfunction noop() { /* empty */ }\n\n// from https://github.com/nodejs/node/blob/master/lib/internal/url.js\nfunction urlToOptions(urlObject) {\n var options = {\n protocol: urlObject.protocol,\n hostname: urlObject.hostname.startsWith(\"[\") ?\n /* istanbul ignore next */\n urlObject.hostname.slice(1, -1) :\n urlObject.hostname,\n hash: urlObject.hash,\n search: urlObject.search,\n pathname: urlObject.pathname,\n path: urlObject.pathname + urlObject.search,\n href: urlObject.href,\n };\n if (urlObject.port !== \"\") {\n options.port = Number(urlObject.port);\n }\n return options;\n}\n\nfunction removeMatchingHeaders(regex, headers) {\n var lastValue;\n for (var header in headers) {\n if (regex.test(header)) {\n lastValue = headers[header];\n delete headers[header];\n }\n }\n return (lastValue === null || typeof lastValue === \"undefined\") ?\n undefined : String(lastValue).trim();\n}\n\nfunction createErrorType(code, defaultMessage) {\n function CustomError(cause) {\n Error.captureStackTrace(this, this.constructor);\n if (!cause) {\n this.message = defaultMessage;\n }\n else {\n this.message = defaultMessage + \": \" + cause.message;\n this.cause = cause;\n }\n }\n CustomError.prototype = new Error();\n CustomError.prototype.constructor = CustomError;\n CustomError.prototype.name = \"Error [\" + code + \"]\";\n CustomError.prototype.code = code;\n return CustomError;\n}\n\nfunction abortRequest(request) {\n for (var e = 0; e < events.length; e++) {\n request.removeListener(events[e], eventHandlers[events[e]]);\n }\n request.on(\"error\", noop);\n request.abort();\n}\n\nfunction isSubdomainOf(subdomain, domain) {\n const dot = subdomain.length - domain.length - 1;\n return dot > 0 && subdomain[dot] === \".\" && subdomain.endsWith(domain);\n}\n\n// Exports\nmodule.exports = wrap({ http: http, https: https });\nmodule.exports.wrap = wrap;\n","'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.51-0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nimport { Configuration } from './configuration';\nimport globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common';\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base';\n\n/**\n * \n * @export\n * @interface GithubSlsRestApiAssumeBrowserResponse\n */\nexport interface GithubSlsRestApiAssumeBrowserResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAssumeBrowserResponse\n */\n 'browserUri': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\nexport interface GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1 {\n /**\n * \n * @type {GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'version': GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum;\n /**\n * \n * @type {GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'type': GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'deleted'?: boolean;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'token'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'email'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum {\n GithubLoginTokenEvent = 'GithubLoginTokenEvent'\n}\n\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum {\n NUMBER_1 = 1\n}\n\n/**\n * \n * @export\n * @interface GithubSlsRestApiAwsAssumeSdkOptions\n */\nexport interface GithubSlsRestApiAwsAssumeSdkOptions {\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiAwsAssumeSdkOptions\n */\n 'DurationSeconds': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAwsAssumeSdkOptions\n */\n 'RoleArn': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAwsAssumeSdkOptions\n */\n 'PrincipalArn': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiConfigBaseSupportedVersions\n */\nexport interface GithubSlsRestApiConfigBaseSupportedVersions {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'repo'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'org'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'ref'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'sha'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'path'?: string;\n /**\n * \n * @type {GithubSlsRestApiSupportedVersions}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'version': GithubSlsRestApiSupportedVersions;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiConfigV20220101\n */\nexport interface GithubSlsRestApiConfigV20220101 {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'repo'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'org'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'ref'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'sha'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'path'?: string;\n /**\n * \n * @type {GithubSlsRestApiSupportedVersions}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'version': GithubSlsRestApiSupportedVersions;\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiPermissionV1; }}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'permissions'?: { [key: string]: GithubSlsRestApiPermissionV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiProviderV1; }}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'providers'?: { [key: string]: GithubSlsRestApiProviderV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiVariableV1; }}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'variables'?: { [key: string]: GithubSlsRestApiVariableV1; };\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiConfigV20220101AllOf\n */\nexport interface GithubSlsRestApiConfigV20220101AllOf {\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiPermissionV1; }}\n * @memberof GithubSlsRestApiConfigV20220101AllOf\n */\n 'permissions'?: { [key: string]: GithubSlsRestApiPermissionV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiProviderV1; }}\n * @memberof GithubSlsRestApiConfigV20220101AllOf\n */\n 'providers'?: { [key: string]: GithubSlsRestApiProviderV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiVariableV1; }}\n * @memberof GithubSlsRestApiConfigV20220101AllOf\n */\n 'variables'?: { [key: string]: GithubSlsRestApiVariableV1; };\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiEncryptRequest\n */\nexport interface GithubSlsRestApiEncryptRequest {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptRequest\n */\n 'value': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiEncryptResponse\n */\nexport interface GithubSlsRestApiEncryptResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptResponse\n */\n 'encryptedValue': string;\n}\n/**\n * This file was automatically generated by joi-to-typescript Do not modify this file manually\n * @export\n * @interface GithubSlsRestApiEncryptedField\n */\nexport interface GithubSlsRestApiEncryptedField {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptedField\n */\n 'encryptedValue': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptedField\n */\n 'keyId': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiErrorResponse\n */\nexport interface GithubSlsRestApiErrorResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'message': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'traceId': string;\n /**\n * \n * @type {GithubSlsRestApiErrorResponseTracking}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'tracking': GithubSlsRestApiErrorResponseTracking;\n /**\n * \n * @type {{ [key: string]: any; }}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'context'?: { [key: string]: any; };\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiErrorResponseTracking\n */\nexport interface GithubSlsRestApiErrorResponseTracking {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponseTracking\n */\n 'method': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponseTracking\n */\n 'path': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponseTracking\n */\n 'version': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiGithubUserResponse\n */\nexport interface GithubSlsRestApiGithubUserResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiGithubUserResponse\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiHealthResponse\n */\nexport interface GithubSlsRestApiHealthResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'version': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'now': string;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'healty': boolean;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'name': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseLoginResponse\n */\nexport interface GithubSlsRestApiListResponseLoginResponse {\n /**\n * \n * @type {GithubSlsRestApiListResponseOrgRepoResponseNext}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'next'?: GithubSlsRestApiListResponseOrgRepoResponseNext;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'total': number;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'count': number;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'results': Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseOrgRepoResponse\n */\nexport interface GithubSlsRestApiListResponseOrgRepoResponse {\n /**\n * \n * @type {GithubSlsRestApiListResponseOrgRepoResponseNext}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'next'?: GithubSlsRestApiListResponseOrgRepoResponseNext;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'total': number;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'count': number;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'results': Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseOrgRepoResponseNext\n */\nexport interface GithubSlsRestApiListResponseOrgRepoResponseNext {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponseNext\n */\n 'sk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponseNext\n */\n 'pk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseRoleResponse\n */\nexport interface GithubSlsRestApiListResponseRoleResponse {\n /**\n * \n * @type {GithubSlsRestApiListResponseOrgRepoResponseNext}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'next'?: GithubSlsRestApiListResponseOrgRepoResponseNext;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'total': number;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'count': number;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'results': Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiLoginResponse\n */\nexport interface GithubSlsRestApiLoginResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'issuer': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiLoginResponseContainer\n */\nexport interface GithubSlsRestApiLoginResponseContainer {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'browserUri': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'org': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiLoginToken\n */\nexport interface GithubSlsRestApiLoginToken {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'email'?: string;\n /**\n * \n * @type {GithubSlsRestApiEncryptedField}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'encryptedToken': GithubSlsRestApiEncryptedField;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'login': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'namespace': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'pk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'scopes'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'sk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiMetadataResponse\n */\nexport interface GithubSlsRestApiMetadataResponse {\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'admins': Array;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'certificate': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'logoutUrl': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'loginUrl': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'entityId': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'metadataXml': string;\n}\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiNameIdFormatV1 {\n Id = 'id',\n Login = 'login',\n Email = 'email',\n EmailV2 = 'emailV2'\n}\n\n/**\n * This file was automatically generated by joi-to-typescript Do not modify this file manually\n * @export\n * @interface GithubSlsRestApiOrgRepo\n */\nexport interface GithubSlsRestApiOrgRepo {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'baseUrl': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'configSha'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'org': string;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'orgId': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'pk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'repo': string;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'repoId': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'sk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\nexport interface GithubSlsRestApiOrgRepoConfigRefreshResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'branch'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'path'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'sha'?: string;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'dryrun': boolean;\n /**\n * \n * @type {GithubSlsRestApiConfigV20220101}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'config': GithubSlsRestApiConfigV20220101;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\nexport interface GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'branch'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'path'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'sha'?: string;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'dryrun': boolean;\n /**\n * \n * @type {GithubSlsRestApiConfigV20220101}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'config': GithubSlsRestApiConfigV20220101;\n}\n/**\n * This file was automatically generated by joi-to-typescript Do not modify this file manually\n * @export\n * @interface GithubSlsRestApiOrgRepoLogin\n */\nexport interface GithubSlsRestApiOrgRepoLogin {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'login': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'pk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'sk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiOrgRepoResponse\n */\nexport interface GithubSlsRestApiOrgRepoResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoResponse\n */\n 'org': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiPermissionV1\n */\nexport interface GithubSlsRestApiPermissionV1 {\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'self'?: boolean;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'roles'?: Array;\n /**\n * \n * @type {GithubSlsRestApiReposV1}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'repos'?: GithubSlsRestApiReposV1;\n /**\n * \n * @type {GithubSlsRestApiUsersV1}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'users'?: GithubSlsRestApiUsersV1;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiProviderV1\n */\nexport interface GithubSlsRestApiProviderV1 {\n /**\n * \n * @type {GithubSlsRestApiProvisioningV1}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'provisioning'?: GithubSlsRestApiProvisioningV1;\n /**\n * \n * @type {{ [key: string]: string; }}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'attributes'?: { [key: string]: string; };\n /**\n * \n * @type {GithubSlsRestApiNameIdFormatV1}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'nameIdFormat'?: GithubSlsRestApiNameIdFormatV1;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'nameId'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'loginUrl'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'acsUrl'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'entityId'?: string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiProvisioningV1\n */\nexport interface GithubSlsRestApiProvisioningV1 {\n /**\n * \n * @type {GithubSlsRestApiScimV1}\n * @memberof GithubSlsRestApiProvisioningV1\n */\n 'scim'?: GithubSlsRestApiScimV1;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiRepoV1\n */\nexport interface GithubSlsRestApiRepoV1 {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRepoV1\n */\n 'name'?: string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiReposV1\n */\nexport interface GithubSlsRestApiReposV1 {\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiReposV1\n */\n 'github'?: Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiRoleResponse\n */\nexport interface GithubSlsRestApiRoleResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'issuer': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'role': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiRolesV1\n */\nexport interface GithubSlsRestApiRolesV1 {\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'self'?: boolean;\n /**\n * \n * @type {GithubSlsRestApiReposV1}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'repos'?: GithubSlsRestApiReposV1;\n /**\n * \n * @type {GithubSlsRestApiUsersV1}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'users'?: GithubSlsRestApiUsersV1;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'name'?: string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiSamlResponseContainer\n */\nexport interface GithubSlsRestApiSamlResponseContainer {\n /**\n * \n * @type {GithubSlsRestApiAwsAssumeSdkOptions}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'sdkOptions'?: GithubSlsRestApiAwsAssumeSdkOptions;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'browserUri'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'role'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'org': string;\n /**\n * \n * @type {{ [key: string]: string; }}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'attributes'?: { [key: string]: string; };\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'samlResponse': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'relayState': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'recipient': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'issuer': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiScimV1\n */\nexport interface GithubSlsRestApiScimV1 {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiScimV1\n */\n 'encryptedToken'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiScimV1\n */\n 'endpoint'?: string;\n}\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiSupportedVersions {\n _20220101 = '20220101'\n}\n\n/**\n * \n * @export\n * @interface GithubSlsRestApiUsersV1\n */\nexport interface GithubSlsRestApiUsersV1 {\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiUsersV1\n */\n 'github'?: Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiVariableV1\n */\nexport interface GithubSlsRestApiVariableV1 {\n}\n\n/**\n * HealthApi - axios parameter creator\n * @export\n */\nexport const HealthApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n get: async (options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/health`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * HealthApi - functional programming interface\n * @export\n */\nexport const HealthApiFp = function(configuration?: Configuration) {\n const localVarAxiosParamCreator = HealthApiAxiosParamCreator(configuration)\n return {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async get(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.get(options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n }\n};\n\n/**\n * HealthApi - factory interface\n * @export\n */\nexport const HealthApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n const localVarFp = HealthApiFp(configuration)\n return {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n get(options?: any): AxiosPromise {\n return localVarFp.get(options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * HealthApi - object-oriented interface\n * @export\n * @class HealthApi\n * @extends {BaseAPI}\n */\nexport class HealthApi extends BaseAPI {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof HealthApi\n */\n public get(options?: AxiosRequestConfig) {\n return HealthApiFp(this.configuration).get(options).then((request) => request(this.axios, this.basePath));\n }\n}\n\n\n/**\n * IDPApi - axios parameter creator\n * @export\n */\nexport const IDPApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRole: async (role: string, org?: string, provider?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'role' is not null or undefined\n assertParamExists('assumeRole', 'role', role)\n const localVarPath = `/api/v1/idp/roles/{role}/assume`\n .replace(`{${\"role\"}}`, encodeURIComponent(String(role)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForBrowser: async (role: string, org?: string, provider?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'role' is not null or undefined\n assertParamExists('assumeRoleForBrowser', 'role', role)\n const localVarPath = `/api/v1/idp/roles/{role}/assume/browser`\n .replace(`{${\"role\"}}`, encodeURIComponent(String(role)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForRepo: async (org: string, repo: string, role: string, provider?: string, commitSha?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('assumeRoleForRepo', 'org', org)\n // verify required parameter 'repo' is not null or undefined\n assertParamExists('assumeRoleForRepo', 'repo', repo)\n // verify required parameter 'role' is not null or undefined\n assertParamExists('assumeRoleForRepo', 'role', role)\n const localVarPath = `/api/v1/idp/orgs/{org}/repos/{repo}/roles/{role}/assume`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)))\n .replace(`{${\"repo\"}}`, encodeURIComponent(String(repo)))\n .replace(`{${\"role\"}}`, encodeURIComponent(String(role)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n if (commitSha !== undefined) {\n localVarQueryParameter['commitSha'] = commitSha;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n encrypt: async (org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('encrypt', 'org', org)\n // verify required parameter 'githubSlsRestApiEncryptRequest' is not null or undefined\n assertParamExists('encrypt', 'githubSlsRestApiEncryptRequest', githubSlsRestApiEncryptRequest)\n const localVarPath = `/api/v1/idp/orgs/{org}/encrypt`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n\n \n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n localVarRequestOptions.data = serializeDataIfNeeded(githubSlsRestApiEncryptRequest, localVarRequestOptions, configuration)\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgConfig: async (org: string, raw?: boolean, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('getOrgConfig', 'org', org)\n const localVarPath = `/api/v1/idp/orgs/{org}/config`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (raw !== undefined) {\n localVarQueryParameter['raw'] = raw;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgMetadata: async (org: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('getOrgMetadata', 'org', org)\n const localVarPath = `/api/v1/idp/orgs/{org}/metadata`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listLogins: async (org?: string, refresh?: boolean, options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/logins`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (refresh !== undefined) {\n localVarQueryParameter['refresh'] = refresh;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listOrgRepos: async (options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/orgs`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listRoles: async (org?: string, provider?: string, refresh?: boolean, options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/roles`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n if (refresh !== undefined) {\n localVarQueryParameter['refresh'] = refresh;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n providerLogin: async (provider: string, org?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'provider' is not null or undefined\n assertParamExists('providerLogin', 'provider', provider)\n const localVarPath = `/api/v1/idp/logins/{provider}/login`\n .replace(`{${\"provider\"}}`, encodeURIComponent(String(provider)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n refreshOrgRepoConfig: async (org: string, repo: string, dryrun?: boolean, commitSha?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('refreshOrgRepoConfig', 'org', org)\n // verify required parameter 'repo' is not null or undefined\n assertParamExists('refreshOrgRepoConfig', 'repo', repo)\n const localVarPath = `/api/v1/idp/orgs/{org}/repos/{repo}/config`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)))\n .replace(`{${\"repo\"}}`, encodeURIComponent(String(repo)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (dryrun !== undefined) {\n localVarQueryParameter['dryrun'] = dryrun;\n }\n\n if (commitSha !== undefined) {\n localVarQueryParameter['commitSha'] = commitSha;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n setOrgAndRepo: async (org: string, repo: string, force?: boolean, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('setOrgAndRepo', 'org', org)\n // verify required parameter 'repo' is not null or undefined\n assertParamExists('setOrgAndRepo', 'repo', repo)\n const localVarPath = `/api/v1/idp/orgs/{org}/repos/{repo}`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)))\n .replace(`{${\"repo\"}}`, encodeURIComponent(String(repo)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (force !== undefined) {\n localVarQueryParameter['force'] = force;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * IDPApi - functional programming interface\n * @export\n */\nexport const IDPApiFp = function(configuration?: Configuration) {\n const localVarAxiosParamCreator = IDPApiAxiosParamCreator(configuration)\n return {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async assumeRole(role: string, org?: string, provider?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRole(role, org, provider, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async assumeRoleForBrowser(role: string, org?: string, provider?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRoleForBrowser(role, org, provider, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRoleForRepo(org, repo, role, provider, commitSha, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.encrypt(org, githubSlsRestApiEncryptRequest, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async getOrgConfig(org: string, raw?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.getOrgConfig(org, raw, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async getOrgMetadata(org: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.getOrgMetadata(org, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async listLogins(org?: string, refresh?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.listLogins(org, refresh, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async listOrgRepos(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.listOrgRepos(options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async listRoles(org?: string, provider?: string, refresh?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.listRoles(org, provider, refresh, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async providerLogin(provider: string, org?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.providerLogin(provider, org, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async refreshOrgRepoConfig(org: string, repo: string, dryrun?: boolean, commitSha?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.refreshOrgRepoConfig(org, repo, dryrun, commitSha, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async setOrgAndRepo(org: string, repo: string, force?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.setOrgAndRepo(org, repo, force, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n }\n};\n\n/**\n * IDPApi - factory interface\n * @export\n */\nexport const IDPApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n const localVarFp = IDPApiFp(configuration)\n return {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRole(role: string, org?: string, provider?: string, options?: any): AxiosPromise {\n return localVarFp.assumeRole(role, org, provider, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForBrowser(role: string, org?: string, provider?: string, options?: any): AxiosPromise {\n return localVarFp.assumeRoleForBrowser(role, org, provider, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, options?: any): AxiosPromise {\n return localVarFp.assumeRoleForRepo(org, repo, role, provider, commitSha, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: any): AxiosPromise {\n return localVarFp.encrypt(org, githubSlsRestApiEncryptRequest, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgConfig(org: string, raw?: boolean, options?: any): AxiosPromise {\n return localVarFp.getOrgConfig(org, raw, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgMetadata(org: string, options?: any): AxiosPromise {\n return localVarFp.getOrgMetadata(org, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listLogins(org?: string, refresh?: boolean, options?: any): AxiosPromise {\n return localVarFp.listLogins(org, refresh, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listOrgRepos(options?: any): AxiosPromise {\n return localVarFp.listOrgRepos(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listRoles(org?: string, provider?: string, refresh?: boolean, options?: any): AxiosPromise {\n return localVarFp.listRoles(org, provider, refresh, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n providerLogin(provider: string, org?: string, options?: any): AxiosPromise {\n return localVarFp.providerLogin(provider, org, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n refreshOrgRepoConfig(org: string, repo: string, dryrun?: boolean, commitSha?: string, options?: any): AxiosPromise {\n return localVarFp.refreshOrgRepoConfig(org, repo, dryrun, commitSha, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n setOrgAndRepo(org: string, repo: string, force?: boolean, options?: any): AxiosPromise {\n return localVarFp.setOrgAndRepo(org, repo, force, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * IDPApi - object-oriented interface\n * @export\n * @class IDPApi\n * @extends {BaseAPI}\n */\nexport class IDPApi extends BaseAPI {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public assumeRole(role: string, org?: string, provider?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).assumeRole(role, org, provider, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public assumeRoleForBrowser(role: string, org?: string, provider?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).assumeRoleForBrowser(role, org, provider, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).assumeRoleForRepo(org, repo, role, provider, commitSha, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).encrypt(org, githubSlsRestApiEncryptRequest, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public getOrgConfig(org: string, raw?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).getOrgConfig(org, raw, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public getOrgMetadata(org: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).getOrgMetadata(org, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public listLogins(org?: string, refresh?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).listLogins(org, refresh, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public listOrgRepos(options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).listOrgRepos(options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public listRoles(org?: string, provider?: string, refresh?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).listRoles(org, provider, refresh, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public providerLogin(provider: string, org?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).providerLogin(provider, org, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public refreshOrgRepoConfig(org: string, repo: string, dryrun?: boolean, commitSha?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).refreshOrgRepoConfig(org, repo, dryrun, commitSha, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public setOrgAndRepo(org: string, repo: string, force?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).setOrgAndRepo(org, repo, force, options).then((request) => request(this.axios, this.basePath));\n }\n}\n\n\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.51-0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nimport { Configuration } from \"./configuration\";\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';\n\nexport const BASE_PATH = \"https://sso.saml.to/github\".replace(/\\/+$/, \"\");\n\n/**\n *\n * @export\n */\nexport const COLLECTION_FORMATS = {\n csv: \",\",\n ssv: \" \",\n tsv: \"\\t\",\n pipes: \"|\",\n};\n\n/**\n *\n * @export\n * @interface RequestArgs\n */\nexport interface RequestArgs {\n url: string;\n options: AxiosRequestConfig;\n}\n\n/**\n *\n * @export\n * @class BaseAPI\n */\nexport class BaseAPI {\n protected configuration: Configuration | undefined;\n\n constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) {\n if (configuration) {\n this.configuration = configuration;\n this.basePath = configuration.basePath || this.basePath;\n }\n }\n};\n\n/**\n *\n * @export\n * @class RequiredError\n * @extends {Error}\n */\nexport class RequiredError extends Error {\n name: \"RequiredError\" = \"RequiredError\";\n constructor(public field: string, msg?: string) {\n super(msg);\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.51-0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nimport { Configuration } from \"./configuration\";\nimport { RequiredError, RequestArgs } from \"./base\";\nimport { AxiosInstance, AxiosResponse } from 'axios';\n\n/**\n *\n * @export\n */\nexport const DUMMY_BASE_URL = 'https://example.com'\n\n/**\n *\n * @throws {RequiredError}\n * @export\n */\nexport const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) {\n if (paramValue === null || paramValue === undefined) {\n throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`);\n }\n}\n\n/**\n *\n * @export\n */\nexport const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) {\n if (configuration && configuration.apiKey) {\n const localVarApiKeyValue = typeof configuration.apiKey === 'function'\n ? await configuration.apiKey(keyParamName)\n : await configuration.apiKey;\n object[keyParamName] = localVarApiKeyValue;\n }\n}\n\n/**\n *\n * @export\n */\nexport const setBasicAuthToObject = function (object: any, configuration?: Configuration) {\n if (configuration && (configuration.username || configuration.password)) {\n object[\"auth\"] = { username: configuration.username, password: configuration.password };\n }\n}\n\n/**\n *\n * @export\n */\nexport const setBearerAuthToObject = async function (object: any, configuration?: Configuration) {\n if (configuration && configuration.accessToken) {\n const accessToken = typeof configuration.accessToken === 'function'\n ? await configuration.accessToken()\n : await configuration.accessToken;\n object[\"Authorization\"] = \"Bearer \" + accessToken;\n }\n}\n\n/**\n *\n * @export\n */\nexport const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) {\n if (configuration && configuration.accessToken) {\n const localVarAccessTokenValue = typeof configuration.accessToken === 'function'\n ? await configuration.accessToken(name, scopes)\n : await configuration.accessToken;\n object[\"Authorization\"] = \"Bearer \" + localVarAccessTokenValue;\n }\n}\n\n/**\n *\n * @export\n */\nexport const setSearchParams = function (url: URL, ...objects: any[]) {\n const searchParams = new URLSearchParams(url.search);\n for (const object of objects) {\n for (const key in object) {\n if (Array.isArray(object[key])) {\n searchParams.delete(key);\n for (const item of object[key]) {\n searchParams.append(key, item);\n }\n } else {\n searchParams.set(key, object[key]);\n }\n }\n }\n url.search = searchParams.toString();\n}\n\n/**\n *\n * @export\n */\nexport const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) {\n const nonString = typeof value !== 'string';\n const needsSerialization = nonString && configuration && configuration.isJsonMime\n ? configuration.isJsonMime(requestOptions.headers['Content-Type'])\n : nonString;\n return needsSerialization\n ? JSON.stringify(value !== undefined ? value : {})\n : (value || \"\");\n}\n\n/**\n *\n * @export\n */\nexport const toPathString = function (url: URL) {\n return url.pathname + url.search + url.hash\n}\n\n/**\n *\n * @export\n */\nexport const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) {\n return >(axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.51-0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ConfigurationParameters {\n apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise);\n username?: string;\n password?: string;\n accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise);\n basePath?: string;\n baseOptions?: any;\n formDataCtor?: new () => any;\n}\n\nexport class Configuration {\n /**\n * parameter for apiKey security\n * @param name security name\n * @memberof Configuration\n */\n apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise);\n /**\n * parameter for basic security\n *\n * @type {string}\n * @memberof Configuration\n */\n username?: string;\n /**\n * parameter for basic security\n *\n * @type {string}\n * @memberof Configuration\n */\n password?: string;\n /**\n * parameter for oauth2 security\n * @param name security name\n * @param scopes oauth2 scope\n * @memberof Configuration\n */\n accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise);\n /**\n * override base path\n *\n * @type {string}\n * @memberof Configuration\n */\n basePath?: string;\n /**\n * base options for axios calls\n *\n * @type {any}\n * @memberof Configuration\n */\n baseOptions?: any;\n /**\n * The FormData constructor that will be used to create multipart form data\n * requests. You can inject this here so that execution environments that\n * do not support the FormData class can still run the generated client.\n *\n * @type {new () => FormData}\n */\n formDataCtor?: new () => any;\n\n constructor(param: ConfigurationParameters = {}) {\n this.apiKey = param.apiKey;\n this.username = param.username;\n this.password = param.password;\n this.accessToken = param.accessToken;\n this.basePath = param.basePath;\n this.baseOptions = param.baseOptions;\n this.formDataCtor = param.formDataCtor;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.51-0\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport * from \"./api\";\nexport * from \"./configuration\";\n\n","import {\n error,\n exportVariable,\n getInput,\n info,\n setFailed,\n setOutput,\n warning,\n} from '@actions/core';\nimport { STS } from '@aws-sdk/client-sts';\nimport axios from 'axios';\nimport {\n Configuration,\n IDPApi,\n GithubSlsRestApiSamlResponseContainer,\n GithubSlsRestApiAwsAssumeSdkOptions,\n} from '../api/github-sls-rest-api';\n\nconst { GITHUB_TOKEN, GITHUB_REPOSITORY, GITHUB_SHA, DEV, API_KEY } = process.env;\n\nexport class Action {\n async run(): Promise {\n if (!GITHUB_TOKEN) {\n setFailed(`Missing GITHUB_TOKEN environment variable`);\n return;\n }\n\n const role = getInput('role', { required: true });\n const provider = getInput('provider', { required: false });\n const region = getInput('region', { required: false }) || 'us-east-1';\n if (provider) {\n info(`Assuming ${provider} Role: ${role} in ${region}`);\n } else {\n info(`Assuming Role: ${role} in ${region}`);\n }\n\n if (!GITHUB_REPOSITORY) {\n throw new Error('Missing GITHUB_REPOSITORY environment variable');\n }\n const [org, repo] = GITHUB_REPOSITORY.split('/');\n if (!org || !repo) {\n throw new Error(\n `Unable to parse owner and repo from GITHUB_REPOSITORY environment variable: ${GITHUB_REPOSITORY}`,\n );\n }\n\n const configuration = new Configuration({ accessToken: GITHUB_TOKEN });\n if (DEV) {\n configuration.basePath = 'https://sso-nonlive.saml.to/github';\n configuration.apiKey = API_KEY;\n }\n\n const api = new IDPApi(configuration);\n\n let sdkOpts: GithubSlsRestApiAwsAssumeSdkOptions | undefined;\n\n try {\n const { data: response } = await api.assumeRoleForRepo(\n org,\n repo,\n role,\n provider || undefined,\n GITHUB_SHA,\n );\n\n info(`SAML Response generated for login to ${response.provider} via ${response.recipient}`);\n\n sdkOpts = response.sdkOptions;\n\n if (response.attributes && Object.keys(response.attributes).length) {\n info(`\nSAML Attributes:`);\n Object.entries(response.attributes).forEach(([k, v]) => info(` - ${k}: ${v}`));\n }\n\n await this.assumeAws(response, region);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n const providerHint = sdkOpts ? ` (${sdkOpts.PrincipalArn}) ` : ' ';\n error(`Unable to assume the role with an ARN of \\`${role}\\`${\n provider ? ` (with explicitly specified provider: ${provider})` : ''\n }.\n\nPlease ensure all of the following:\n 1) the SAML Provider Metadata${providerHint}in AWS IAM is correct. It can be obtained by downloading it from: https://saml.to/metadata/github/${org}\n 2) the SAML Provider ARN${providerHint}is correct in the \\`saml-to.yml\\` configuration file, and in the format of \\`arn:aws:iam::ACCOUNT_ID:saml-provider/PROVIDER_NAME\\`,\n 3) the Role ARN (${role}) is correct in the \\`saml-to.yml\\` configuration file, and in the format of \\`arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME\\`\n 4) the Role (${role}) has the correct Trust Relationship ${\n sdkOpts ? `with ${sdkOpts.PrincipalArn}` : ``\n }, which can be found by opening the Role in AWS IAM, choosing the Trust Relationship tab, editing it to ensure it's in the following format:\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Principal\": {\n \"Federated\": \"${sdkOpts ? sdkOpts.PrincipalArn : 'YOUR_PROVIDER_ARN'}\"\n },\n \"Action\": \"sts:AssumeRoleWithSAML\",\n \"Condition\": {\n \"StringEquals\": {\n \"SAML:aud\": \"https://signin.aws.amazon.com/saml\"\n }\n }\n }\n ]\n }\n \nIf a provider or role hasn't been created or configured yet, please follow the configuration instructions: https://github.com/saml-to/assume-aws-role-action/blob/main/README.md#configuration`);\n if (axios.isAxiosError(e)) {\n let message = e.message;\n if (e.response && e.response.data && e.response.data.message) {\n message = e.response.data.message;\n }\n\n if (e.response && e.response.status === 403) {\n const { data } = e.response;\n if (data) {\n const { context } = data;\n if (context && context.org && context.repo && context.configFile) {\n if (context.repo !== repo) {\n warning(`The SAML.to configuration for \\`${org}\\` is managed in a separate repository:\n User/Org: ${context.org}\n Repo: ${context.repo}\n File: ${context.configFile}\n\nProvider configuration and role permissions must be made there.\n\nFor more information on configuration files managed in a separate repository, visit:\nhttps://docs.saml.to/usage/github-actions/assume-aws-role-action#centrally-managed-configuration\n`);\n }\n }\n }\n }\n\n throw new Error(`Error: ${message}`);\n }\n throw e;\n }\n }\n\n async assumeAws(response: GithubSlsRestApiSamlResponseContainer, region: string): Promise {\n const sts = new STS({ region });\n const opts = response.sdkOptions as GithubSlsRestApiAwsAssumeSdkOptions;\n if (!opts) {\n throw new Error('Missing sdk options from saml response');\n }\n\n const assumeResponse = await sts.assumeRoleWithSAML({\n ...opts,\n SAMLAssertion: response.samlResponse,\n });\n\n if (\n !assumeResponse.Credentials ||\n !assumeResponse.Credentials.AccessKeyId ||\n !assumeResponse.Credentials.SecretAccessKey ||\n !assumeResponse.Credentials.SessionToken\n ) {\n throw new Error('Missing credentials');\n }\n\n const assumedSts = new STS({\n region,\n credentials: {\n accessKeyId: assumeResponse.Credentials.AccessKeyId,\n secretAccessKey: assumeResponse.Credentials.SecretAccessKey,\n sessionToken: assumeResponse.Credentials.SessionToken,\n },\n });\n\n const callerIdentity = await assumedSts.getCallerIdentity({});\n\n info(`\nAssumed ${opts.RoleArn}: ${callerIdentity.Arn} (Credential expiration at ${assumeResponse.Credentials.Expiration})`);\n\n exportVariable('AWS_DEFAULT_REGION', region);\n exportVariable('AWS_ACCESS_KEY_ID', assumeResponse.Credentials.AccessKeyId);\n exportVariable('AWS_SECRET_ACCESS_KEY', assumeResponse.Credentials.SecretAccessKey);\n exportVariable('AWS_SESSION_TOKEN', assumeResponse.Credentials.SessionToken);\n\n setOutput('region', region);\n setOutput('accountId', callerIdentity.Account);\n setOutput('userId', callerIdentity.UserId);\n setOutput('roleArn', opts.RoleArn);\n setOutput('assumedRoleArn', callerIdentity.Arn);\n setOutput('accessKeyId', assumeResponse.Credentials.AccessKeyId);\n setOutput('secretAccessKey', assumeResponse.Credentials.SecretAccessKey);\n setOutput('sessionToken', assumeResponse.Credentials.SessionToken);\n }\n}\n","module.exports = require('./lib/tunnel');\n","'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n","module.exports = require(\"assert\");","module.exports = require(\"events\");","module.exports = require(\"fs\");","module.exports = require(\"http\");","module.exports = require(\"https\");","module.exports = require(\"net\");","module.exports = require(\"os\");","module.exports = require(\"path\");","module.exports = require(\"stream\");","module.exports = require(\"tls\");","module.exports = require(\"tty\");","module.exports = require(\"url\");","module.exports = require(\"util\");","module.exports = require(\"zlib\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.hmd = (module) => {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: () => {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { Action } from './action';\nimport { setFailed, warning } from '@actions/core';\n\n(async () => {\n try {\n const action = new Action();\n await action.run();\n } catch (e) {\n if (e instanceof Error) {\n setFailed(e.message);\n warning(`Need help? https://docs.saml.to/troubleshooting/get-help`);\n return;\n }\n throw e;\n }\n process.exit(0);\n})();\n"],"names":["__createBinding","this","Object","create","o","m","k","k2","undefined","defineProperty","enumerable","get","__setModuleDefault","v","value","__importStar","mod","__esModule","result","hasOwnProperty","call","exports","issue","issueCommand","os","utils_1","command","properties","message","cmd","Command","process","stdout","write","toString","EOL","name","constructor","cmdStr","keys","length","first","key","val","s","toCommandValue","replace","escapeData","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","e","rejected","done","then","apply","getIDToken","getState","saveState","group","endGroup","startGroup","info","notice","warning","error","debug","isDebug","setFailed","setCommandEcho","setOutput","getBooleanInput","getMultilineInput","getInput","addPath","setSecret","exportVariable","ExitCode","command_1","file_command_1","path","oidc_utils_1","options","env","toUpperCase","required","Error","trimWhitespace","trim","toCommandProperties","convertedVal","delimiter","commandValue","secret","inputPath","split","filter","x","includes","TypeError","enabled","exitCode","Failure","fn","aud","OidcClient","fs","filePath","existsSync","appendFileSync","encoding","http_client_1","auth_1","core_1","static","allowRetry","maxRetry","requestOptions","allowRetries","maxRetries","HttpClient","BearerCredentialHandler","getRequestToken","token","runtimeUrl","id_token_url","_a","httpclient","createHttpClient","res","getJson","catch","statusCode","id_token","audience","getIDTokenUrl","encodeURIComponent","getCall","input","String","JSON","stringify","annotationProperties","title","file","line","startLine","endLine","col","startColumn","endColumn","BasicCredentialHandler","username","password","prepareRequest","headers","Buffer","from","canHandleAuthentication","response","handleAuthentication","httpClient","requestInfo","objs","PersonalAccessTokenCredentialHandler","http","https","pm","tunnel","HttpCodes","Headers","MediaTypes","getProxyUrl","serverUrl","proxyUrl","URL","href","HttpRedirectCodes","MovedPermanently","ResourceMoved","SeeOther","TemporaryRedirect","PermanentRedirect","HttpResponseRetryCodes","BadGateway","ServiceUnavailable","GatewayTimeout","RetryableHttpVerbs","HttpClientError","super","setPrototypeOf","prototype","HttpClientResponse","readBody","async","output","alloc","on","chunk","concat","isHttps","requestUrl","protocol","userAgent","handlers","_ignoreSslError","_allowRedirects","_allowRedirectDowngrade","_maxRedirects","_allowRetries","_maxRetries","_keepAlive","_disposed","ignoreSslError","_socketTimeout","socketTimeout","allowRedirects","allowRedirectDowngrade","maxRedirects","Math","max","keepAlive","additionalHeaders","request","del","post","data","patch","put","head","sendStream","verb","stream","Accept","_getExistingOrDefaultHeader","ApplicationJson","_processResponse","obj","ContentType","parsedUrl","_prepareRequest","maxTries","indexOf","numTries","requestRaw","Unauthorized","authenticationHandler","i","redirectsRemaining","redirectUrl","parsedRedirectUrl","hostname","header","toLowerCase","_performExponentialBackoff","dispose","_agent","destroy","requestRawWithCallback","err","onResult","socket","byteLength","callbackCalled","handleResult","req","httpModule","msg","sock","setTimeout","end","pipe","getAgent","_getAgent","method","usingSsl","defaultPort","host","port","parseInt","pathname","search","_mergeHeaders","agent","forEach","handler","lowercaseKeys","reduce","c","assign","_default","clientHeader","useProxy","_proxyAgent","maxSockets","globalAgent","agentOptions","proxy","proxyAuth","tunnelAgent","overHttps","httpsOverHttps","httpsOverHttp","httpOverHttps","httpOverHttp","Agent","rejectUnauthorized","retryNumber","min","ms","pow","a","Date","isNaN","valueOf","contents","NotFound","deserializeDates","parse","dateTimeDeserializer","checkBypass","reqUrl","reqPort","noProxy","Number","upperReqHosts","push","upperNoProxyItem","map","some","proxyVar","extendStatics","d","b","__proto__","Array","p","__extends","__","t","n","arguments","__rest","getOwnPropertySymbols","propertyIsEnumerable","body","f","y","g","_","label","sent","trys","ops","Symbol","iterator","op","pop","r","ar","__spreadArray","to","pack","l","slice","deserializerMiddlewareOption","tags","override","serializerMiddlewareOption","getSerdePlugin","config","serializer","deserializer","applyToStack","commandStack","add","context","args","parsed","deserializerMiddleware","serializerMiddleware","ProviderError","_super","tryNextLink","_this","configurable","writable","CredentialsProviderError","chain","providers","_i","e_1","promise","_loop_1","provider","providers_1","providers_1_1","e_1_1","return","memoize","isExpired","requiresRefresh","resolved","pending","hasResult","coalesceProvider","isConstant","SHORT_TO_HEX","HEX_TO_SHORT","encodedByte","toHex","bytes","out","SIGNATURE_QUERY_PARAM","TOKEN_QUERY_PARAM","AUTH_HEADER","AMZ_DATE_HEADER","GENERATED_HEADERS","SIGNATURE_HEADER","SHA256_HEADER","TOKEN_HEADER","ALWAYS_UNSIGNABLE_HEADERS","authorization","connection","expect","pragma","referer","te","trailer","upgrade","PROXY_HEADER_PATTERN","SEC_HEADER_PATTERN","EVENT_ALGORITHM_IDENTIFIER","KEY_TYPE_IDENTIFIER","signingKeyCache","cacheQueue","createScope","shortDate","region","service","hmac","ctor","hash","update","digest","getCanonicalHeaders","unsignableHeaders","signableHeaders","_b","canonical","_c","sort","_d","headerName","canonicalHeaderName","has","test","escapeUri","uri","hexEncode","charCodeAt","isArrayBuffer","arg","ArrayBuffer","getPayloadHash","hashConstructor","hashCtor","_e","_f","isView","cloneRequest","query","rest","cloneQuery","carry","paramName","param","isArray","clone","SignatureV4","applyChecksum","credentials","sha256","uriEscapePath","regionProvider","promisified_1","normalizeRegionProvider","credentialProvider","promisified_2","normalizeCredentialsProvider","presign","originalRequest","signingDate","expiresIn","unhoistableHeaders","signingRegion","signingService","longDate","scope","canonicalHeaders","_g","_h","_j","_k","_l","formatDate","lname","substr","moveHeadersToQuery","sessionToken","accessKeyId","AMZ_DATE_QUERY_PARAM","getCanonicalHeaderList","getSignature","getSigningKey","createCanonicalRequest","sign","toSign","signString","payload","signEvent","signRequest","priorSignature","hashedPayload","hashedHeaders","stringToSign","join","bind","requestToSign","payloadHash","signature","soughtHeader","hasHeader","ALGORITHM_IDENTIFIER","sortedHeaders","getCanonicalPath","serialized","encoded","getCanonicalQuery","createStringToSign","credentialScope","canonicalRequest","hashedRequest","keyPromise","sha256Constructor","credsHash","cacheKey","signable","secretAccessKey","shift","now","time","toDate","toISOString","normalizeProvider","HttpRequest","charAt","isInstance","cloned","HttpResponse","resp","getSkewCorrectedDate","systemClockOffset","getUpdatedSystemClockOffset","clockTime","currentSystemClockOffset","clockTimeInMs","abs","getTime","isClockSkewed","awsAuthMiddlewareOptions","relation","toMiddleware","getAwsAuthPlugin","clientStack","addRelativeTo","signer","dateHeader","ServerTime","date","awsAuthMiddleware","constructStack","absoluteEntries","relativeEntries","entriesNameSet","Set","cloneTo","toStack","entry","middleware","expandRelativeMiddlewareList","expandedMiddlewareList","before","after","reverse","stack","priority","toOverrideIndex","findIndex","toOverride","splice","use","plugin","remove","toRemove","isRemoved","filterCb","delete","removeByName","removeByReference","removeByTag","entries","normalizedAbsoluteEntries","normalizedRelativeEntries","normalizedEntriesNameMap","normalizedEntry","stepWeights","priorityWeights","wholeList","expendedMiddlewareList","getMiddlewareList","initialize","serialize","build","finalizeRequest","deserialize","high","normal","low","Client","middlewareStack","send","optionsOrCb","cb","callback","resolveMiddleware","requestHandler","SENSITIVE_STRING","MAX_FLOAT","ceil","expectFloat32","expected","expectNumber","Infinity","expectLong","isInteger","expectSizedInt","size","castInt","Int32Array","of","Int16Array","Int8Array","expectNonNull","location","expectObject","expectString","NUMBER_REGEX","parseNumber","matches","match","parseFloat","strictParseInt32","expectInt32","MONTHS","RFC3339","RegExp","parseRfc3339DateTime","exec","yearStr","monthStr","dayStr","hours","minutes","seconds","fractionalMilliseconds","year","expectShort","stripLeadingZeroes","month","parseDateValue","day","buildDate","adjustedMonth","validateDayOfMonth","UTC","parseMilliseconds","DAYS_IN_MONTH","maxDays","isLeapYear","type","lower","upper","dateVal","expectByte","strictParseByte","strictParseFloat32","idx","warningEmitted","emitWarningIfUnsupportedVersion","version","substring","emitWarning","extendedEncodeURIComponent","str","AssumedRoleUser","PolicyDescriptorType","Tag","AssumeRoleRequest","Credentials","AssumeRoleResponse","ExpiredTokenException","MalformedPolicyDocumentException","PackedPolicyTooLargeException","RegionDisabledException","AssumeRoleWithSAMLRequest","AssumeRoleWithSAMLResponse","IDPRejectedClaimException","InvalidIdentityTokenException","AssumeRoleWithWebIdentityRequest","AssumeRoleWithWebIdentityResponse","IDPCommunicationErrorException","DecodeAuthorizationMessageRequest","DecodeAuthorizationMessageResponse","InvalidAuthorizationMessageException","GetAccessKeyInfoRequest","GetAccessKeyInfoResponse","GetCallerIdentityRequest","GetCallerIdentityResponse","GetFederationTokenRequest","FederatedUser","GetFederationTokenResponse","GetSessionTokenRequest","GetSessionTokenResponse","getValueFromTextNode","textNodeName","StringWrapper","Class","getPrototypeOf","Constructor","Function","instance","LazyJsonString","deserializeJSON","toJSON","fromObject","object","filterSensitiveLog","SelectorType","deserializeAws_queryAssumeRoleCommandError","parsedOutput","errorCode","parsedBody","parseBody","loadQueryErrorCode","deserializeAws_queryExpiredTokenExceptionResponse","$metadata","deserializeMetadata","deserializeAws_queryMalformedPolicyDocumentExceptionResponse","deserializeAws_queryPackedPolicyTooLargeExceptionResponse","deserializeAws_queryRegionDisabledExceptionResponse","code","Code","Message","$fault","deserializeAws_queryAssumeRoleWithSAMLCommandError","deserializeAws_queryIDPRejectedClaimExceptionResponse","deserializeAws_queryInvalidIdentityTokenExceptionResponse","deserializeAws_queryAssumeRoleWithWebIdentityCommandError","deserializeAws_queryIDPCommunicationErrorExceptionResponse","deserializeAws_queryDecodeAuthorizationMessageCommandError","deserializeAws_queryInvalidAuthorizationMessageExceptionResponse","deserializeAws_queryGetAccessKeyInfoCommandError","deserializeAws_queryGetCallerIdentityCommandError","deserializeAws_queryGetFederationTokenCommandError","deserializeAws_queryGetSessionTokenCommandError","deserialized","deserializeAws_queryExpiredTokenException","deserializeAws_queryIDPCommunicationErrorException","deserializeAws_queryIDPRejectedClaimException","deserializeAws_queryInvalidAuthorizationMessageException","deserializeAws_queryInvalidIdentityTokenException","deserializeAws_queryMalformedPolicyDocumentException","deserializeAws_queryPackedPolicyTooLargeException","deserializeAws_queryRegionDisabledException","serializeAws_querypolicyDescriptorListType","counter","input_1","input_1_1","memberEntries","serializeAws_queryPolicyDescriptorType","arn","serializeAws_queryTag","Key","Value","serializeAws_querytagKeyListType","e_2","input_2","input_2_1","e_2_1","serializeAws_querytagListType","e_3","input_3","input_3_1","e_3_1","deserializeAws_queryAssumedRoleUser","AssumedRoleId","Arn","deserializeAws_queryCredentials","AccessKeyId","SecretAccessKey","SessionToken","Expiration","httpStatusCode","requestId","extendedRequestId","cfId","buildHttpRpcRequest","resolvedHostname","basePath","endpoint","endsWith","streamBody","Uint8Array","streamCollector","collectBody","utf8Encoder","collectBodyString","parsedObj","attributeNamePrefix","ignoreAttributes","parseNodeValue","trimValues","tagValueProcessor","parsedObjToReturn","buildFormUrlencodedString","formEntries","AssumeRoleCommand","configuration","handlerExecutionContext","logger","clientName","commandName","inputFilterSensitiveLog","outputFilterSensitiveLog","handle","RoleArn","RoleSessionName","PolicyArns","Policy","DurationSeconds","Tags","TransitiveTagKeys","ExternalId","SerialNumber","TokenCode","SourceIdentity","serializeAws_queryAssumeRoleRequest","Action","Version","serializeAws_queryAssumeRoleCommand","PackedPolicySize","deserializeAws_queryAssumeRoleResponse","AssumeRoleResult","deserializeAws_queryAssumeRoleCommand","AssumeRoleWithSAMLCommand","PrincipalArn","SAMLAssertion","serializeAws_queryAssumeRoleWithSAMLRequest","serializeAws_queryAssumeRoleWithSAMLCommand","Subject","SubjectType","Issuer","Audience","NameQualifier","deserializeAws_queryAssumeRoleWithSAMLResponse","AssumeRoleWithSAMLResult","deserializeAws_queryAssumeRoleWithSAMLCommand","AssumeRoleWithWebIdentityCommand","WebIdentityToken","ProviderId","serializeAws_queryAssumeRoleWithWebIdentityRequest","serializeAws_queryAssumeRoleWithWebIdentityCommand","SubjectFromWebIdentityToken","Provider","deserializeAws_queryAssumeRoleWithWebIdentityResponse","AssumeRoleWithWebIdentityResult","deserializeAws_queryAssumeRoleWithWebIdentityCommand","DecodeAuthorizationMessageCommand","EncodedMessage","serializeAws_queryDecodeAuthorizationMessageRequest","serializeAws_queryDecodeAuthorizationMessageCommand","DecodedMessage","deserializeAws_queryDecodeAuthorizationMessageResponse","DecodeAuthorizationMessageResult","deserializeAws_queryDecodeAuthorizationMessageCommand","GetAccessKeyInfoCommand","serializeAws_queryGetAccessKeyInfoRequest","serializeAws_queryGetAccessKeyInfoCommand","Account","deserializeAws_queryGetAccessKeyInfoResponse","GetAccessKeyInfoResult","deserializeAws_queryGetAccessKeyInfoCommand","GetCallerIdentityCommand","serializeAws_queryGetCallerIdentityCommand","UserId","deserializeAws_queryGetCallerIdentityResponse","GetCallerIdentityResult","deserializeAws_queryGetCallerIdentityCommand","GetFederationTokenCommand","Name","serializeAws_queryGetFederationTokenRequest","serializeAws_queryGetFederationTokenCommand","FederatedUserId","deserializeAws_queryFederatedUser","deserializeAws_queryGetFederationTokenResponse","GetFederationTokenResult","deserializeAws_queryGetFederationTokenCommand","GetSessionTokenCommand","serializeAws_queryGetSessionTokenRequest","serializeAws_queryGetSessionTokenCommand","deserializeAws_queryGetSessionTokenResponse","GetSessionTokenResult","deserializeAws_queryGetSessionTokenCommand","RETRY_MODES","booleanSelector","NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS","environmentVariableSelector","ENV","configFileSelector","profile","CONFIG","default","NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS","normalizeEndpoint","urlParser","resolveEndpointsConfig","useDualstackEndpoint","normalizeBoolean","useFipsEndpoint","tls","regionInfoProvider","getEndpointFromRegion","isCustomEndpoint","NODE_REGION_CONFIG_OPTIONS","NODE_REGION_CONFIG_FILE_OPTIONS","preferredFile","isFipsRegion","startsWith","getRealRegion","resolveRegionConfig","providedRegion","getHostnameFromVariants","variants","find","getRegionInfo","regionHash","partitionHash","partition","regions","getResolvedPartition","resolvedRegion","hostnameOptions","partitionHostname","regionHostname","getResolvedHostname","regionRegexJs","regionRegex","regionRegexmatchArray","getResolvedSigningRegion","contentLengthMiddlewareOptions","getContentLengthPlugin","bodyLengthChecker","CONTENT_LENGTH_HEADER","contentLengthMiddleware","hostHeaderMiddlewareOptions","getHostHeaderPlugin","metadata","handlerProtocol","hostHeaderMiddleware","loggerMiddlewareOptions","getLoggerPlugin","outputWithoutMetadata","DEFAULT_RETRY_MODE","STANDARD","CLOCK_SKEW_ERROR_CODES","THROTTLING_ERROR_CODES","TRANSIENT_ERROR_CODES","TRANSIENT_ERROR_STATUS_CODES","isThrottlingError","$retryable","throttling","DefaultRateLimiter","currentCapacity","lastMaxRate","measuredTxRate","requestCount","lastTimestamp","timeWindow","beta","minCapacity","minFillRate","scaleConstant","smooth","currentTimeInSeconds","getCurrentTimeInSeconds","lastThrottleTime","lastTxRateBucket","floor","fillRate","maxCapacity","getSendToken","acquireTokenBucket","amount","delay_1","refillTokenBucket","timestamp","fillAmount","updateClientSendingRate","calculatedRate","updateMeasuredRate","rateToUse","calculateTimeWindow","cubicThrottle","enableTokenBucket","cubicSuccess","newRate","updateTokenBucketRate","getPrecise","timeBucket","currentRate","num","toFixed","require","rnds8Pool","poolPtr","rng","byteToHex","arr","offset","uuid","buf","rnds","random","defaultDelayDecider","delayBase","attempts","defaultRetryDecider","isRetryableByTrait","isClockSkewError","isTransientError","StandardRetryStrategy","maxAttemptsProvider","noRetryIncrement","retryCost","timeoutRetryCost","availableCapacity","getCapacityAmount","hasRetryTokens","mode","retryDecider","delayDecider","retryQuota","freeze","retrieveRetryTokens","capacityAmount","releaseRetryTokens","capacityReleaseAmount","shouldRetry","maxAttempts","getMaxAttempts","retry","retryTokenAmount","totalDelay","this_1","state_1","beforeRequest","afterRequest","totalRetryDelay","asSdkError","AdaptiveRetryStrategy","rateLimiter","superOptions","ADAPTIVE","NODE_MAX_ATTEMPT_CONFIG_OPTIONS","maxAttempt","resolveRetryConfig","normalizeMaxAttempts","retryStrategy","getRetryMode","retryMode","NODE_RETRY_MODE_CONFIG_OPTIONS","retryMiddlewareOptions","getRetryPlugin","retryMiddleware","resolveStsAuthConfig","stsClientCtor","normalizedCreds","expiration","credentialDefaultProvider","signingEscapePath","regionInfo","signingName","serviceId","params","signerConstructor","resolveAwsAuthConfig","resolveUserAgentConfig","customUserAgent","USER_AGENT","X_AMZ_USER_AGENT","UA_ESCAPE_REGEX","escapeUserAgent","prefixSeparatorIndex","prefix","uaName","item","getUserAgentMiddlewareOptions","getUserAgentPlugin","defaultUserAgent","sdkUserAgentValue","normalUAValue","defaultUserAgentProvider","section","runtime","ASSUME_ROLE_DEFAULT_REGION","decorateDefaultRegion","getDefaultRoleAssumer","stsOptions","stsClient","closureSourceCreds","sourceCreds","getDefaultRoleAssumerWithWebIdentity","fromEnv","expiry","httpRequest","chunks","Endpoint","isImdsCredentials","Boolean","Token","fromImdsCredentials","creds","providerConfigFromInit","timeout","toRetry","ENV_CMDS_FULL_URI","ENV_CMDS_RELATIVE_URI","ENV_CMDS_AUTH_TOKEN","fromContainerMetadata","init","credsResponse","getCmdsUri","requestFromEcsImds","Authorization","GREENGRASS_HOSTS","localhost","GREENGRASS_PROTOCOLS","swallowError","loadSharedConfigFiles","filepath","getHomeDir","configFilepath","all","slurpFile","parseIni","normalizeConfigFile","parsedFiles","configFile","credentialsFile","profileKeyRegex","normalizedKey","profileNameBlockList","iniData","currentSection","readFile","HOME","USERPROFILE","HOMEPATH","HOMEDRIVE","sep","homedir","loadConfig","envVarSelector","defaultValue","configSelector","loadedConfig","profileFromCredentials","profileFromConfig","mergedProfile","configValue","fromSharedConfigFiles","staticValue","parseUrl","url","querystring","decodeURIComponent","parseQueryString","EndpointMode","ENDPOINT_CONFIG_OPTIONS","ENDPOINT_MODE_CONFIG_OPTIONS","IPv4","IMDS_PATH","fromInstanceMetadata","disableFetchToken","getCredentials","err_1","getProfile","err_2","getCredentialsFromProfile","error_1","endpointMode","IPv6","values","getMetadataToken","fromArrayBuffer","fromString","Hash","algorithmIdentifier","createHmac","castSourceData","createHash","toHash","toCast","buffer","byteOffset","buildQueryString","parts","iLen","qsEntry","NODEJS_TIMEOUT_ERROR_CODES","getTransformedHeaders","transformedHeaders","headerValues","writeRequestBody","writeBody","Readable","NodeHttpHandler","connectionTimeout","httpAgent","httpsAgent","abortSignal","aborted","abortError","isSSL","queryString","nodeHttpsOptions","httpResponse","timeoutInMs","connecting","timeoutId_1","clearTimeout","setConnectionTimeout","setSocketTimeout","onabort","abort","NodeHttp2Handler","requestTimeout","sessionTimeout","disableConcurrentStreams","sessionCache","Map","session","destroySession","clear","rejectOriginal","authority","getSession","constants","close","deleteSessionFromCache","timeoutError","id","rstCode","existingSessions","newSession","connect","destroySessionCb","set","destroyed","Collector","bufferedBytes","_write","Writable","collector","BASE64_REGEX","fromBase64","toBase64","calculateBodyLength","lstatSync","AccountInfo","GetRoleCredentialsRequest","RoleCredentials","GetRoleCredentialsResponse","InvalidRequestException","ResourceNotFoundException","TooManyRequestsException","UnauthorizedException","ListAccountRolesRequest","RoleInfo","ListAccountRolesResponse","ListAccountsRequest","ListAccountsResponse","LogoutRequest","clientVersion","sections","platform","release","versions","crtAvailable","appIdPromise","resolvedUserAgent","appId","fromUtf8","BYTES_PER_ELEMENT","toUtf8","aws","defaultRegionInfoProvider","SSOClient","_config_0","_m","_o","_p","clientSharedValues","apiVersion","disableHostPrefix","base64Decoder","base64Encoder","utf8Decoder","_config_1","_config_2","_config_5","accessToken","roleCredentials","deserializeAws_restJson1GetRoleCredentialsCommandError","loadRestJsonErrorCode","deserializeAws_restJson1InvalidRequestExceptionResponse","deserializeAws_restJson1ResourceNotFoundExceptionResponse","deserializeAws_restJson1TooManyRequestsExceptionResponse","deserializeAws_restJson1UnauthorizedExceptionResponse","sanitizeErrorCode","rawValue","cleanValue","headerKey","GetRoleCredentialsCommand","resolvedPath","getOwnPropertyNames","roleName","role_name","accountId","account_id","serializeAws_restJson1GetRoleCredentialsCommand","deserializeAws_restJson1RoleCredentials","deserializeAws_restJson1GetRoleCredentialsCommand","parseKnownFiles","getMasterProfileName","SHOULD_FAIL_CREDENTIAL_CHAIN","fromSSO","ssoStartUrl","ssoAccountId","ssoRegion","ssoRoleName","ssoClient","profiles","profileName","sso_start_url","sso_account_id","sso_region","sso_role_name","isSsoProfile","validateSsoProfile","resolveSSOCredentials","hasher","cacheName","tokenFile","sso","ssoResp","readFileSync","expiresAt","fromTokenFile","resolveTokenFile","webIdentityTokenFile","roleArn","roleSessionName","webIdentityToken","providerId","policyArns","policy","durationSeconds","roleAssumerWithWebIdentity","fromWebToken","isStaticCredsProfile","aws_access_key_id","aws_secret_access_key","aws_session_token","isAssumeRoleProfile","role_arn","role_session_name","external_id","mfa_serial","fromIni","resolveProfileData","visitedProfiles","source_profile","credential_source","resolveStaticCredentials","isAssumeRoleWithProviderProfile","roleAssumer","resolveCredentialSource","mfaCodeProvider","web_identity_token_file","isWebIdentityProfile","resolveWebIdentityCredentials","credentialSource","sourceProvidersMap","EcsContainer","Ec2InstanceMetadata","Environment","fromProcess","resolveProcessCredentials","credentialProcess","execPromise","processResult","expirationUnix","currentTime","defaultProvider","remoteProvider","unshift","providerChain","STSClient","_q","_config_3","_config_6","STS","assumeRole","assumeRoleWithSAML","assumeRoleWithWebIdentity","decodeAuthorizationMessage","getAccessKeyInfo","getCallerIdentity","getFederationToken","getSessionToken","isCrtAvailable","module","utils","settle","buildFullPath","buildURL","httpFollow","httpsFollow","zlib","VERSION","createError","enhanceError","defaults","Cancel","setProxy","auth","base64","beforeRedirect","redirection","resolvePromise","rejectPromise","onCanceled","cancelToken","unsubscribe","signal","removeEventListener","headerNames","isStream","isBuffer","isString","fullPath","baseURL","urlAuth","isHttpsRequest","paramsSerializer","agents","socketPath","transport","proxyEnv","parsedProxyUrl","noProxyEnv","no_proxy","NO_PROXY","shouldProxy","proxyElement","proxyUrlAuth","isHttpsProxy","maxBodyLength","insecureHTTPParser","lastRequest","decompress","createUnzip","status","statusText","statusMessage","responseType","responseBuffer","totalResponseBytes","maxContentLength","responseData","responseEncoding","stripBOM","transitional","clarifyTimeoutError","cancel","subscribe","addEventListener","cookies","parseHeaders","isURLSameOrigin","requestData","requestHeaders","isFormData","XMLHttpRequest","unescape","btoa","onloadend","responseHeaders","getAllResponseHeaders","responseText","open","onreadystatechange","readyState","responseURL","onerror","ontimeout","timeoutErrorMessage","isStandardBrowserEnv","xsrfValue","withCredentials","xsrfCookieName","read","xsrfHeaderName","setRequestHeader","isUndefined","onDownloadProgress","onUploadProgress","upload","Axios","mergeConfig","axios","createInstance","defaultConfig","extend","instanceConfig","CancelToken","isCancel","promises","spread","isAxiosError","__CANCEL__","executor","_listeners","onfulfilled","_resolve","reason","throwIfRequested","listener","index","source","InterceptorManager","dispatchRequest","validator","validators","interceptors","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","responseInterceptorChain","newConfig","onFulfilled","onRejected","getUri","eject","h","isAbsoluteURL","combineURLs","requestedURL","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","description","number","fileName","lineNumber","columnNumber","config1","config2","getMergedValue","target","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","validateStatus","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","isFile","isBlob","isArrayBufferView","isURLSearchParams","isObject","parser","encoder","stringifySafely","strictJSONParsing","encode","serializedParams","isDate","hashmarkIndex","relativeURL","expires","domain","secure","cookie","isNumber","toGMTString","document","originURL","msie","navigator","urlParsingNode","createElement","resolveURL","setAttribute","window","requestURL","normalizedName","ignoreDuplicateOf","thing","deprecatedWarnings","formatMessage","opt","desc","opts","console","warn","schema","allowUnknown","isFunction","FormData","URLSearchParams","product","assignValue","content","formatArgs","useColors","namespace","humanize","diff","color","lastC","save","namespaces","storage","setItem","removeItem","load","getItem","DEBUG","__nwjs","documentElement","style","WebkitAppearance","firebug","exception","table","$1","localStorage","localstorage","warned","colors","log","formatters","j","createDebug","prevTime","namespacesCache","enabledCache","enableOverride","self","curr","prev","coerce","format","formatter","selectColor","newDebug","toNamespace","regexp","disable","names","skips","enable","len","browser","tty","util","inspectOpts","stderr","colorCode","hideDate","isatty","fd","deprecate","supportsColor","level","inspect","O","__importDefault","decodeHTML","decodeHTMLStrict","decodeXML","entities_json_1","legacy_json_1","xml_json_1","decode_codepoint_1","strictEntityRe","getStrictDecoder","getReplacer","sorter","secondChar","legacy","re","replacer","decode_json_1","fromCodePoint","codePoint","fromCharCode","escapeUTF8","escape","encodeNonAsciiHTML","encodeHTML","encodeXML","inverseXML","getInverseObj","xmlReplacer","getInverseReplacer","getASCIIEncoder","inverse","inverseHTML","htmlReplacer","single","multiple","start","count","reNonASCII","singleCharReplacer","getCodePoint","codePointAt","reEscapeChars","decode_2","buildOptions","defaultOptions","attrNodeName","cdataTagName","cdataPositionChar","indentBy","supressEmptyNode","attrValueProcessor","props","Parser","isAttribute","attrPrefixLen","isCDATA","replaceCDATAstr","replaceCDATAarr","indentate","tagEndChar","newLine","buildTextNode","buildEmptyTextNode","buildObjNode","buildEmptyObjNode","buildTextValNode","buildObjectNode","cdata","attrStr","repeat","jObj","j2x","attr","arrLen","Ks","L","char","chars","nilChar","missingChar","nilPremitive","missingPremitive","emptyChar","emptyValue","boundryChar","objStart","arrStart","arrayEnd","charsArr","node","e_schema","getValue","hasValidData","child","attrsMap","itemSchema","arr_len","arr_i","processValue","isAppChar","ch","x2j","convert2nimn","convertToJson","parentTagName","isEmptyObject","isExist","asArray","isTagNameInArrayMode","tagname","arrayMode","tagName","tag","_cToJsonStr","convertToJsonString","nodeToJson","xmlToNodeobj","x2xmlnode","xmlData","validationOption","validate","traversableObj","getTraversalObj","convertTonimn","j2xParser","parseToNimn","nameRegexp","regexName","newOptions","isName","string","getAllMatches","regex","allmatches","allowBooleanAttributes","readPI","getErrorObject","getLineNumberForPosition","readCommentAndCDATA","angleBracketsCount","readAttributeStr","startChar","tagClosed","tagFound","reachedRoot","closingTag","isValid","validateAttributeString","otg","afterAmp","validateAmpersand","validAttrStrRegxp","attrNames","getPositionFromMatch","attrName","validateAttrName","validateNumberAmpersand","parent","addChild","xmlNode","ignoreNameSpace","parseAttributeValue","stopNodes","processTagValue","parseValue","parseTrueNumberOnly","resolveNameSpace","shouldParse","attrsRegx","buildAttributesMap","attrs","attrCollection","closingIndexForOpeningTag","attrBoundary","tagExp","findClosingIndex","errMsg","closingIndex","xmlObj","currentNode","textData","closeIndex","colonIndex","startIndex","childNode","separatorIndex","shouldBuildAttributesMap","lastIndexOf","assert","events","eventHandlers","event","arg1","arg2","arg3","_redirectable","emit","RedirectionError","createErrorType","TooManyRedirectsError","MaxBodyLengthExceededError","WriteAfterEndError","RedirectableRequest","responseCallback","_sanitizeOptions","_options","_ended","_ending","_redirectCount","_redirects","_requestBodyLength","_requestBodyBuffers","_onNativeResponse","_performRequest","wrap","protocols","nativeProtocols","scheme","nativeProtocol","wrappedProtocol","defineProperties","urlStr","urlToOptions","equal","wrappedRequest","noop","urlObject","removeMatchingHeaders","lastValue","defaultMessage","CustomError","cause","captureStackTrace","abortRequest","removeListener","_currentRequest","currentRequest","setHeader","removeHeader","msecs","destroyOnTimeout","addListener","startTimer","_timeout","clearTimer","once","property","searchPos","_currentUrl","_isRedirect","buffers","writeNext","finished","trackRedirects","followRedirects","currentHostHeader","currentUrlParts","currentHost","currentUrl","redirectUrlParts","subdomain","dot","isSubdomainOf","responseDetails","responseUrl","redirects","flag","argv","position","terminatorPosition","plural","msAbs","isPlural","round","isFinite","long","fmtShort","hasFlag","forceColor","translateLevel","hasBasic","has256","has16m","haveStream","streamIsTTY","TERM","osRelease","CI_NAME","TEAMCITY_VERSION","COLORTERM","TERM_PROGRAM_VERSION","TERM_PROGRAM","FORCE_COLOR","isTTY","GithubSlsRestApiNameIdFormatV1","GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum","GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum","GithubSlsRestApiSupportedVersions","HealthApiAxiosParamCreator","localVarUrlObj","DUMMY_BASE_URL","baseOptions","localVarRequestOptions","setSearchParams","headersFromBaseOptions","toPathString","HealthApiFp","localVarAxiosParamCreator","localVarAxiosArgs","createRequestFunction","BASE_PATH","HealthApiFactory","localVarFp","HealthApi","BaseAPI","IDPApiAxiosParamCreator","role","org","assertParamExists","localVarPath","localVarHeaderParameter","localVarQueryParameter","setBearerAuthToObject","assumeRoleForBrowser","assumeRoleForRepo","repo","commitSha","encrypt","githubSlsRestApiEncryptRequest","serializeDataIfNeeded","getOrgConfig","raw","getOrgMetadata","listLogins","refresh","listOrgRepos","listRoles","providerLogin","refreshOrgRepoConfig","dryrun","setOrgAndRepo","force","IDPApiFp","IDPApiFactory","IDPApi","COLLECTION_FORMATS","csv","ssv","tsv","pipes","RequiredError","field","functionName","paramValue","setApiKeyToObject","keyParamName","apiKey","localVarApiKeyValue","setBasicAuthToObject","setOAuthToObject","scopes","localVarAccessTokenValue","objects","searchParams","append","nonString","isJsonMime","axiosArgs","globalAxios","axiosRequestArgs","formDataCtor","mime","jsonMime","GITHUB_TOKEN","GITHUB_REPOSITORY","GITHUB_SHA","DEV","API_KEY","Configuration","api","sdkOpts","recipient","sdkOptions","attributes","assumeAws","providerHint","sts","assumeResponse","samlResponse","assumedSts","callerIdentity","TunnelingAgent","proxyOptions","defaultMaxSockets","requests","sockets","localAddress","toOptions","onSocket","removeSocket","createSecureSocket","createSocket","hostHeader","getHeader","tlsOptions","mergeOptions","servername","secureSocket","overrides","keyLen","inherits","EventEmitter","addRequest","onFree","onCloseOrRemove","placeholder","connectOptions","connectReq","onConnect","removeAllListeners","useChunkedEncodingByDefault","nextTick","pos","NODE_DEBUG","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","getter","definition","hmd","children","toStringTag","action","run","exit"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"file":"main.js","mappings":"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CACVmH,KAAM,IAEV,CACInH,SAAU,kCACVmH,KAAM,CAAC,WAInB,YAAa,CACT2kB,SAAU,CACN,CACI9rB,SAAU,8BACVmH,KAAM,IAEV,CACInH,SAAU,mCACVmH,KAAM,CAAC,WAInB,YAAa,CACT2kB,SAAU,CACN,CACI9rB,SAAU,8BACVmH,KAAM,IAEV,CACInH,SAAU,mCACVmH,KAAM,CAAC,YAKnB,GAAgB,CAChBs7B,IAAK,CACDrW,QAAS,CACL,aACA,YACA,iBACA,iBACA,iBACA,aACA,iBACA,iBACA,iBACA,aACA,eACA,eACA,aACA,aACA,YACA,YACA,YACA,aACA,YACA,YACA,iBACA,YACA,iBACA,YACA,iBACA,YACA,kBAEJQ,YAAa,yCACbd,SAAU,CACN,CACI9rB,SAAU,6BACVmH,KAAM,IAEV,CACInH,SAAU,kCACVmH,KAAM,CAAC,SAEX,CACInH,SAAU,4BACVmH,KAAM,CAAC,YAAa,SAExB,CACInH,SAAU,uBACVmH,KAAM,CAAC,gBAInB,SAAU,CACNilB,QAAS,CAAC,aAAc,kBACxBQ,YAAa,qBACbd,SAAU,CACN,CACI9rB,SAAU,gCACVmH,KAAM,IAEV,CACInH,SAAU,qCACVmH,KAAM,CAAC,SAEX,CACInH,SAAU,iDACVmH,KAAM,CAAC,YAAa,SAExB,CACInH,SAAU,4CACVmH,KAAM,CAAC,gBAInB,UAAW,CACPilB,QAAS,CAAC,gBAAiB,iBAC3BQ,YAAa,2BACbd,SAAU,CACN,CACI9rB,SAAU,0BACVmH,KAAM,IAEV,CACInH,SAAU,+BACVmH,KAAM,CAAC,WAInB,YAAa,CACTilB,QAAS,CAAC,kBACVQ,YAAa,4BACbd,SAAU,CACN,CACI9rB,SAAU,6BACVmH,KAAM,IAEV,CACInH,SAAU,kCACVmH,KAAM,CAAC,WAInB,aAAc,CACVilB,QAAS,CAAC,gBAAiB,qBAAsB,gBAAiB,sBAClEQ,YAAa,2BACbd,SAAU,CACN,CACI9rB,SAAU,6BACVmH,KAAM,IAEV,CACInH,SAAU,6BACVmH,KAAM,CAAC,SAEX,CACInH,SAAU,4BACVmH,KAAM,CAAC,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","sources":["webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/command.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/core.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/file-command.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/oidc-utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/core/lib/utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/http-client/auth.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/http-client/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@actions/http-client/proxy.js","webpack://@saml-to/assume-aws-role-action/./node_modules/tslib/tslib.es6.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-serde/dist-es/deserializerMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-serde/dist-es/serdePlugin.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-serde/dist-es/serializerMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/ProviderError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/chain.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-hex-encoding/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/fromStatic.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/property-provider/dist-es/memoize.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/credentialDerivation.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/getCanonicalHeaders.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-uri-escape/dist-es/escape-uri.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/is-array-buffer/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/getPayloadHash.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/cloneRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/prepareRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/SignatureV4.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/normalizeProvider.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/moveHeadersToQuery.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/headerUtil.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/getCanonicalQuery.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/signature-v4/dist-es/utilDate.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/configurations.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/protocol-http/dist-es/httpRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/protocol-http/dist-es/httpResponse.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/utils/getSkewCorrectedDate.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/utils/getUpdatedSystemClockOffset.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/utils/isClockSkewed.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-signing/dist-es/middleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-stack/dist-es/MiddlewareStack.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/client.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/command.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/parse-utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/date-utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/emitWarningIfUnsupportedVersion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/extended-encode-uri-component.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/get-value-from-text-node.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/models/models_0.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/smithy-client/dist-es/lazy-json.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-config-provider/dist-es/booleanSelector.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/protocols/Aws_query.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithSAMLCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/AssumeRoleWithWebIdentityCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/DecodeAuthorizationMessageCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetAccessKeyInfoCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetCallerIdentityCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetFederationTokenCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/commands/GetSessionTokenCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/config.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/NodeUseFipsEndpointConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/utils/normalizeEndpoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/resolveEndpointsConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/utils/normalizeBoolean.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/endpointsConfig/utils/getEndpointFromRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/config.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/isFipsRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/getRealRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionConfig/resolveRegionConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getHostnameFromVariants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getRegionInfo.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getResolvedPartition.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getResolvedHostname.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/config-resolver/dist-es/regionInfo/getResolvedSigningRegion.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-content-length/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-host-header/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-logger/dist-es/loggerMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/service-error-classification/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/service-error-classification/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/DefaultRateLimiter.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"crypto\"","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/rng.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/regex.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/stringify.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/validate.js","webpack://@saml-to/assume-aws-role-action/./node_modules/uuid/dist/esm-node/v4.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/delayDecider.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/retryDecider.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/StandardRetryStrategy.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/defaultRetryQuota.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/AdaptiveRetryStrategy.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/configurations.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-retry/dist-es/retryMiddleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-sdk-sts/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-user-agent/dist-es/configurations.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-user-agent/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/middleware-user-agent/dist-es/user-agent-middleware.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/defaultStsRoleAssumers.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-env/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"buffer\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/httpRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/ImdsCredentials.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/Endpoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/RemoteProviderInit.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/remoteProvider/retry.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/fromContainerMetadata.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/shared-ini-file-loader/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/configLoader.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/fromEnv.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/fromSharedConfigFiles.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-config-provider/dist-es/fromStatic.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/url-parser/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/querystring-parser/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/EndpointConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/EndpointMode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/config/EndpointModeConfigOptions.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/fromInstanceMetadata.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-imds/dist-es/utils/getInstanceMetadataEndpoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-buffer-from/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/hash-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/querystring-builder/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/constants.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/get-transformed-headers.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/write-request-body.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/node-http-handler.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/set-connection-timeout.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/set-socket-timeout.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"http2\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/node-http2-handler.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/stream-collector/collector.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/node-http-handler/dist-es/stream-collector/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-base64-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-body-length-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"process\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/models/models_0.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-user-agent-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-utf8-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/endpoints.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/SSOClient.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/runtimeConfig.shared.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/protocols/Aws_restJson1.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sso/dist-es/commands/GetRoleCredentialsCommand.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-credentials/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-sso/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromTokenFile.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-web-identity/dist-es/fromWebToken.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-ini/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"child_process\"","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-process/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/credential-provider-node/dist-es/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/endpoints.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/STSClient.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/runtimeConfig.shared.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/STS.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/client-sts/dist-es/defaultRoleAssumers.js","webpack://@saml-to/assume-aws-role-action/./node_modules/@aws-sdk/util-user-agent-node/dist-es/is-crt-available.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/adapters/http.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/adapters/xhr.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/axios.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/cancel/Cancel.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/cancel/CancelToken.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/cancel/isCancel.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/Axios.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/InterceptorManager.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/buildFullPath.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/createError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/dispatchRequest.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/enhanceError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/mergeConfig.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/settle.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/core/transformData.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/defaults.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/env/data.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/bind.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/buildURL.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/combineURLs.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/cookies.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/isAxiosError.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/parseHeaders.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/spread.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/helpers/validator.js","webpack://@saml-to/assume-aws-role-action/./node_modules/axios/lib/utils.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/browser.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/common.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/debug/src/node.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/decode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/decode_codepoint.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/encode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/entities/lib/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/json2xml.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/nimndata.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/node2json.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/node2json_str.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/parser.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/util.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/validator.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/xmlNode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/fast-xml-parser/src/xmlstr2xmlnode.js","webpack://@saml-to/assume-aws-role-action/./node_modules/follow-redirects/debug.js","webpack://@saml-to/assume-aws-role-action/./node_modules/follow-redirects/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/has-flag/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/ms/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/supports-color/index.js","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/api.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/base.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/common.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/configuration.ts","webpack://@saml-to/assume-aws-role-action/./api/github-sls-rest-api/index.ts","webpack://@saml-to/assume-aws-role-action/./src/action.ts","webpack://@saml-to/assume-aws-role-action/./node_modules/tunnel/index.js","webpack://@saml-to/assume-aws-role-action/./node_modules/tunnel/lib/tunnel.js","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"assert\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"events\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"fs\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"http\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"https\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"net\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"os\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"path\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"stream\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"tls\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"tty\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"url\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"util\"","webpack://@saml-to/assume-aws-role-action/external node-commonjs \"zlib\"","webpack://@saml-to/assume-aws-role-action/webpack/bootstrap","webpack://@saml-to/assume-aws-role-action/webpack/runtime/compat get default export","webpack://@saml-to/assume-aws-role-action/webpack/runtime/define property getters","webpack://@saml-to/assume-aws-role-action/webpack/runtime/harmony module decorator","webpack://@saml-to/assume-aws-role-action/webpack/runtime/hasOwnProperty shorthand","webpack://@saml-to/assume-aws-role-action/webpack/runtime/make namespace object","webpack://@saml-to/assume-aws-role-action/./src/index.ts"],"sourcesContent":["\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.issue = exports.issueCommand = void 0;\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\n/**\n * Commands\n *\n * Command Format:\n * ::name key=value,key=value::message\n *\n * Examples:\n * ::warning::This is the message\n * ::set-env name=MY_VAR::some value\n */\nfunction issueCommand(command, properties, message) {\n const cmd = new Command(command, properties, message);\n process.stdout.write(cmd.toString() + os.EOL);\n}\nexports.issueCommand = issueCommand;\nfunction issue(name, message = '') {\n issueCommand(name, {}, message);\n}\nexports.issue = issue;\nconst CMD_STRING = '::';\nclass Command {\n constructor(command, properties, message) {\n if (!command) {\n command = 'missing.command';\n }\n this.command = command;\n this.properties = properties;\n this.message = message;\n }\n toString() {\n let cmdStr = CMD_STRING + this.command;\n if (this.properties && Object.keys(this.properties).length > 0) {\n cmdStr += ' ';\n let first = true;\n for (const key in this.properties) {\n if (this.properties.hasOwnProperty(key)) {\n const val = this.properties[key];\n if (val) {\n if (first) {\n first = false;\n }\n else {\n cmdStr += ',';\n }\n cmdStr += `${key}=${escapeProperty(val)}`;\n }\n }\n }\n }\n cmdStr += `${CMD_STRING}${escapeData(this.message)}`;\n return cmdStr;\n }\n}\nfunction escapeData(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A');\n}\nfunction escapeProperty(s) {\n return utils_1.toCommandValue(s)\n .replace(/%/g, '%25')\n .replace(/\\r/g, '%0D')\n .replace(/\\n/g, '%0A')\n .replace(/:/g, '%3A')\n .replace(/,/g, '%2C');\n}\n//# sourceMappingURL=command.js.map","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getIDToken = exports.getState = exports.saveState = exports.group = exports.endGroup = exports.startGroup = exports.info = exports.notice = exports.warning = exports.error = exports.debug = exports.isDebug = exports.setFailed = exports.setCommandEcho = exports.setOutput = exports.getBooleanInput = exports.getMultilineInput = exports.getInput = exports.addPath = exports.setSecret = exports.exportVariable = exports.ExitCode = void 0;\nconst command_1 = require(\"./command\");\nconst file_command_1 = require(\"./file-command\");\nconst utils_1 = require(\"./utils\");\nconst os = __importStar(require(\"os\"));\nconst path = __importStar(require(\"path\"));\nconst oidc_utils_1 = require(\"./oidc-utils\");\n/**\n * The code to exit an action\n */\nvar ExitCode;\n(function (ExitCode) {\n /**\n * A code indicating that the action was successful\n */\n ExitCode[ExitCode[\"Success\"] = 0] = \"Success\";\n /**\n * A code indicating that the action was a failure\n */\n ExitCode[ExitCode[\"Failure\"] = 1] = \"Failure\";\n})(ExitCode = exports.ExitCode || (exports.ExitCode = {}));\n//-----------------------------------------------------------------------\n// Variables\n//-----------------------------------------------------------------------\n/**\n * Sets env variable for this action and future actions in the job\n * @param name the name of the variable to set\n * @param val the value of the variable. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction exportVariable(name, val) {\n const convertedVal = utils_1.toCommandValue(val);\n process.env[name] = convertedVal;\n const filePath = process.env['GITHUB_ENV'] || '';\n if (filePath) {\n const delimiter = '_GitHubActionsFileCommandDelimeter_';\n const commandValue = `${name}<<${delimiter}${os.EOL}${convertedVal}${os.EOL}${delimiter}`;\n file_command_1.issueCommand('ENV', commandValue);\n }\n else {\n command_1.issueCommand('set-env', { name }, convertedVal);\n }\n}\nexports.exportVariable = exportVariable;\n/**\n * Registers a secret which will get masked from logs\n * @param secret value of the secret\n */\nfunction setSecret(secret) {\n command_1.issueCommand('add-mask', {}, secret);\n}\nexports.setSecret = setSecret;\n/**\n * Prepends inputPath to the PATH (for this action and future actions)\n * @param inputPath\n */\nfunction addPath(inputPath) {\n const filePath = process.env['GITHUB_PATH'] || '';\n if (filePath) {\n file_command_1.issueCommand('PATH', inputPath);\n }\n else {\n command_1.issueCommand('add-path', {}, inputPath);\n }\n process.env['PATH'] = `${inputPath}${path.delimiter}${process.env['PATH']}`;\n}\nexports.addPath = addPath;\n/**\n * Gets the value of an input.\n * Unless trimWhitespace is set to false in InputOptions, the value is also trimmed.\n * Returns an empty string if the value is not defined.\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns string\n */\nfunction getInput(name, options) {\n const val = process.env[`INPUT_${name.replace(/ /g, '_').toUpperCase()}`] || '';\n if (options && options.required && !val) {\n throw new Error(`Input required and not supplied: ${name}`);\n }\n if (options && options.trimWhitespace === false) {\n return val;\n }\n return val.trim();\n}\nexports.getInput = getInput;\n/**\n * Gets the values of an multiline input. Each value is also trimmed.\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns string[]\n *\n */\nfunction getMultilineInput(name, options) {\n const inputs = getInput(name, options)\n .split('\\n')\n .filter(x => x !== '');\n return inputs;\n}\nexports.getMultilineInput = getMultilineInput;\n/**\n * Gets the input value of the boolean type in the YAML 1.2 \"core schema\" specification.\n * Support boolean input list: `true | True | TRUE | false | False | FALSE` .\n * The return value is also in boolean type.\n * ref: https://yaml.org/spec/1.2/spec.html#id2804923\n *\n * @param name name of the input to get\n * @param options optional. See InputOptions.\n * @returns boolean\n */\nfunction getBooleanInput(name, options) {\n const trueValue = ['true', 'True', 'TRUE'];\n const falseValue = ['false', 'False', 'FALSE'];\n const val = getInput(name, options);\n if (trueValue.includes(val))\n return true;\n if (falseValue.includes(val))\n return false;\n throw new TypeError(`Input does not meet YAML 1.2 \"Core Schema\" specification: ${name}\\n` +\n `Support boolean input list: \\`true | True | TRUE | false | False | FALSE\\``);\n}\nexports.getBooleanInput = getBooleanInput;\n/**\n * Sets the value of an output.\n *\n * @param name name of the output to set\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction setOutput(name, value) {\n process.stdout.write(os.EOL);\n command_1.issueCommand('set-output', { name }, value);\n}\nexports.setOutput = setOutput;\n/**\n * Enables or disables the echoing of commands into stdout for the rest of the step.\n * Echoing is disabled by default if ACTIONS_STEP_DEBUG is not set.\n *\n */\nfunction setCommandEcho(enabled) {\n command_1.issue('echo', enabled ? 'on' : 'off');\n}\nexports.setCommandEcho = setCommandEcho;\n//-----------------------------------------------------------------------\n// Results\n//-----------------------------------------------------------------------\n/**\n * Sets the action status to failed.\n * When the action exits it will be with an exit code of 1\n * @param message add error issue message\n */\nfunction setFailed(message) {\n process.exitCode = ExitCode.Failure;\n error(message);\n}\nexports.setFailed = setFailed;\n//-----------------------------------------------------------------------\n// Logging Commands\n//-----------------------------------------------------------------------\n/**\n * Gets whether Actions Step Debug is on or not\n */\nfunction isDebug() {\n return process.env['RUNNER_DEBUG'] === '1';\n}\nexports.isDebug = isDebug;\n/**\n * Writes debug message to user log\n * @param message debug message\n */\nfunction debug(message) {\n command_1.issueCommand('debug', {}, message);\n}\nexports.debug = debug;\n/**\n * Adds an error issue\n * @param message error issue message. Errors will be converted to string via toString()\n * @param properties optional properties to add to the annotation.\n */\nfunction error(message, properties = {}) {\n command_1.issueCommand('error', utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);\n}\nexports.error = error;\n/**\n * Adds a warning issue\n * @param message warning issue message. Errors will be converted to string via toString()\n * @param properties optional properties to add to the annotation.\n */\nfunction warning(message, properties = {}) {\n command_1.issueCommand('warning', utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);\n}\nexports.warning = warning;\n/**\n * Adds a notice issue\n * @param message notice issue message. Errors will be converted to string via toString()\n * @param properties optional properties to add to the annotation.\n */\nfunction notice(message, properties = {}) {\n command_1.issueCommand('notice', utils_1.toCommandProperties(properties), message instanceof Error ? message.toString() : message);\n}\nexports.notice = notice;\n/**\n * Writes info to log with console.log.\n * @param message info message\n */\nfunction info(message) {\n process.stdout.write(message + os.EOL);\n}\nexports.info = info;\n/**\n * Begin an output group.\n *\n * Output until the next `groupEnd` will be foldable in this group\n *\n * @param name The name of the output group\n */\nfunction startGroup(name) {\n command_1.issue('group', name);\n}\nexports.startGroup = startGroup;\n/**\n * End an output group.\n */\nfunction endGroup() {\n command_1.issue('endgroup');\n}\nexports.endGroup = endGroup;\n/**\n * Wrap an asynchronous function call in a group.\n *\n * Returns the same type as the function itself.\n *\n * @param name The name of the group\n * @param fn The function to wrap in the group\n */\nfunction group(name, fn) {\n return __awaiter(this, void 0, void 0, function* () {\n startGroup(name);\n let result;\n try {\n result = yield fn();\n }\n finally {\n endGroup();\n }\n return result;\n });\n}\nexports.group = group;\n//-----------------------------------------------------------------------\n// Wrapper action state\n//-----------------------------------------------------------------------\n/**\n * Saves state for current action, the state can only be retrieved by this action's post job execution.\n *\n * @param name name of the state to store\n * @param value value to store. Non-string values will be converted to a string via JSON.stringify\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction saveState(name, value) {\n command_1.issueCommand('save-state', { name }, value);\n}\nexports.saveState = saveState;\n/**\n * Gets the value of an state set by this action's main execution.\n *\n * @param name name of the state to get\n * @returns string\n */\nfunction getState(name) {\n return process.env[`STATE_${name}`] || '';\n}\nexports.getState = getState;\nfunction getIDToken(aud) {\n return __awaiter(this, void 0, void 0, function* () {\n return yield oidc_utils_1.OidcClient.getIDToken(aud);\n });\n}\nexports.getIDToken = getIDToken;\n//# sourceMappingURL=core.js.map","\"use strict\";\n// For internal use, subject to change.\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.issueCommand = void 0;\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nconst fs = __importStar(require(\"fs\"));\nconst os = __importStar(require(\"os\"));\nconst utils_1 = require(\"./utils\");\nfunction issueCommand(command, message) {\n const filePath = process.env[`GITHUB_${command}`];\n if (!filePath) {\n throw new Error(`Unable to find environment variable for file command ${command}`);\n }\n if (!fs.existsSync(filePath)) {\n throw new Error(`Missing file at path: ${filePath}`);\n }\n fs.appendFileSync(filePath, `${utils_1.toCommandValue(message)}${os.EOL}`, {\n encoding: 'utf8'\n });\n}\nexports.issueCommand = issueCommand;\n//# sourceMappingURL=file-command.js.map","\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.OidcClient = void 0;\nconst http_client_1 = require(\"@actions/http-client\");\nconst auth_1 = require(\"@actions/http-client/auth\");\nconst core_1 = require(\"./core\");\nclass OidcClient {\n static createHttpClient(allowRetry = true, maxRetry = 10) {\n const requestOptions = {\n allowRetries: allowRetry,\n maxRetries: maxRetry\n };\n return new http_client_1.HttpClient('actions/oidc-client', [new auth_1.BearerCredentialHandler(OidcClient.getRequestToken())], requestOptions);\n }\n static getRequestToken() {\n const token = process.env['ACTIONS_ID_TOKEN_REQUEST_TOKEN'];\n if (!token) {\n throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_TOKEN env variable');\n }\n return token;\n }\n static getIDTokenUrl() {\n const runtimeUrl = process.env['ACTIONS_ID_TOKEN_REQUEST_URL'];\n if (!runtimeUrl) {\n throw new Error('Unable to get ACTIONS_ID_TOKEN_REQUEST_URL env variable');\n }\n return runtimeUrl;\n }\n static getCall(id_token_url) {\n var _a;\n return __awaiter(this, void 0, void 0, function* () {\n const httpclient = OidcClient.createHttpClient();\n const res = yield httpclient\n .getJson(id_token_url)\n .catch(error => {\n throw new Error(`Failed to get ID Token. \\n \n Error Code : ${error.statusCode}\\n \n Error Message: ${error.result.message}`);\n });\n const id_token = (_a = res.result) === null || _a === void 0 ? void 0 : _a.value;\n if (!id_token) {\n throw new Error('Response json body do not have ID Token field');\n }\n return id_token;\n });\n }\n static getIDToken(audience) {\n return __awaiter(this, void 0, void 0, function* () {\n try {\n // New ID Token is requested from action service\n let id_token_url = OidcClient.getIDTokenUrl();\n if (audience) {\n const encodedAudience = encodeURIComponent(audience);\n id_token_url = `${id_token_url}&audience=${encodedAudience}`;\n }\n core_1.debug(`ID token url is ${id_token_url}`);\n const id_token = yield OidcClient.getCall(id_token_url);\n core_1.setSecret(id_token);\n return id_token;\n }\n catch (error) {\n throw new Error(`Error message: ${error.message}`);\n }\n });\n }\n}\nexports.OidcClient = OidcClient;\n//# sourceMappingURL=oidc-utils.js.map","\"use strict\";\n// We use any as a valid input type\n/* eslint-disable @typescript-eslint/no-explicit-any */\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.toCommandProperties = exports.toCommandValue = void 0;\n/**\n * Sanitizes an input into a string so it can be passed into issueCommand safely\n * @param input input to sanitize into a string\n */\nfunction toCommandValue(input) {\n if (input === null || input === undefined) {\n return '';\n }\n else if (typeof input === 'string' || input instanceof String) {\n return input;\n }\n return JSON.stringify(input);\n}\nexports.toCommandValue = toCommandValue;\n/**\n *\n * @param annotationProperties\n * @returns The command properties to send with the actual annotation command\n * See IssueCommandProperties: https://github.com/actions/runner/blob/main/src/Runner.Worker/ActionCommandManager.cs#L646\n */\nfunction toCommandProperties(annotationProperties) {\n if (!Object.keys(annotationProperties).length) {\n return {};\n }\n return {\n title: annotationProperties.title,\n file: annotationProperties.file,\n line: annotationProperties.startLine,\n endLine: annotationProperties.endLine,\n col: annotationProperties.startColumn,\n endColumn: annotationProperties.endColumn\n };\n}\nexports.toCommandProperties = toCommandProperties;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nclass BasicCredentialHandler {\n constructor(username, password) {\n this.username = username;\n this.password = password;\n }\n prepareRequest(options) {\n options.headers['Authorization'] =\n 'Basic ' +\n Buffer.from(this.username + ':' + this.password).toString('base64');\n }\n // This handler cannot handle 401\n canHandleAuthentication(response) {\n return false;\n }\n handleAuthentication(httpClient, requestInfo, objs) {\n return null;\n }\n}\nexports.BasicCredentialHandler = BasicCredentialHandler;\nclass BearerCredentialHandler {\n constructor(token) {\n this.token = token;\n }\n // currently implements pre-authorization\n // TODO: support preAuth = false where it hooks on 401\n prepareRequest(options) {\n options.headers['Authorization'] = 'Bearer ' + this.token;\n }\n // This handler cannot handle 401\n canHandleAuthentication(response) {\n return false;\n }\n handleAuthentication(httpClient, requestInfo, objs) {\n return null;\n }\n}\nexports.BearerCredentialHandler = BearerCredentialHandler;\nclass PersonalAccessTokenCredentialHandler {\n constructor(token) {\n this.token = token;\n }\n // currently implements pre-authorization\n // TODO: support preAuth = false where it hooks on 401\n prepareRequest(options) {\n options.headers['Authorization'] =\n 'Basic ' + Buffer.from('PAT:' + this.token).toString('base64');\n }\n // This handler cannot handle 401\n canHandleAuthentication(response) {\n return false;\n }\n handleAuthentication(httpClient, requestInfo, objs) {\n return null;\n }\n}\nexports.PersonalAccessTokenCredentialHandler = PersonalAccessTokenCredentialHandler;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst http = require(\"http\");\nconst https = require(\"https\");\nconst pm = require(\"./proxy\");\nlet tunnel;\nvar HttpCodes;\n(function (HttpCodes) {\n HttpCodes[HttpCodes[\"OK\"] = 200] = \"OK\";\n HttpCodes[HttpCodes[\"MultipleChoices\"] = 300] = \"MultipleChoices\";\n HttpCodes[HttpCodes[\"MovedPermanently\"] = 301] = \"MovedPermanently\";\n HttpCodes[HttpCodes[\"ResourceMoved\"] = 302] = \"ResourceMoved\";\n HttpCodes[HttpCodes[\"SeeOther\"] = 303] = \"SeeOther\";\n HttpCodes[HttpCodes[\"NotModified\"] = 304] = \"NotModified\";\n HttpCodes[HttpCodes[\"UseProxy\"] = 305] = \"UseProxy\";\n HttpCodes[HttpCodes[\"SwitchProxy\"] = 306] = \"SwitchProxy\";\n HttpCodes[HttpCodes[\"TemporaryRedirect\"] = 307] = \"TemporaryRedirect\";\n HttpCodes[HttpCodes[\"PermanentRedirect\"] = 308] = \"PermanentRedirect\";\n HttpCodes[HttpCodes[\"BadRequest\"] = 400] = \"BadRequest\";\n HttpCodes[HttpCodes[\"Unauthorized\"] = 401] = \"Unauthorized\";\n HttpCodes[HttpCodes[\"PaymentRequired\"] = 402] = \"PaymentRequired\";\n HttpCodes[HttpCodes[\"Forbidden\"] = 403] = \"Forbidden\";\n HttpCodes[HttpCodes[\"NotFound\"] = 404] = \"NotFound\";\n HttpCodes[HttpCodes[\"MethodNotAllowed\"] = 405] = \"MethodNotAllowed\";\n HttpCodes[HttpCodes[\"NotAcceptable\"] = 406] = \"NotAcceptable\";\n HttpCodes[HttpCodes[\"ProxyAuthenticationRequired\"] = 407] = \"ProxyAuthenticationRequired\";\n HttpCodes[HttpCodes[\"RequestTimeout\"] = 408] = \"RequestTimeout\";\n HttpCodes[HttpCodes[\"Conflict\"] = 409] = \"Conflict\";\n HttpCodes[HttpCodes[\"Gone\"] = 410] = \"Gone\";\n HttpCodes[HttpCodes[\"TooManyRequests\"] = 429] = \"TooManyRequests\";\n HttpCodes[HttpCodes[\"InternalServerError\"] = 500] = \"InternalServerError\";\n HttpCodes[HttpCodes[\"NotImplemented\"] = 501] = \"NotImplemented\";\n HttpCodes[HttpCodes[\"BadGateway\"] = 502] = \"BadGateway\";\n HttpCodes[HttpCodes[\"ServiceUnavailable\"] = 503] = \"ServiceUnavailable\";\n HttpCodes[HttpCodes[\"GatewayTimeout\"] = 504] = \"GatewayTimeout\";\n})(HttpCodes = exports.HttpCodes || (exports.HttpCodes = {}));\nvar Headers;\n(function (Headers) {\n Headers[\"Accept\"] = \"accept\";\n Headers[\"ContentType\"] = \"content-type\";\n})(Headers = exports.Headers || (exports.Headers = {}));\nvar MediaTypes;\n(function (MediaTypes) {\n MediaTypes[\"ApplicationJson\"] = \"application/json\";\n})(MediaTypes = exports.MediaTypes || (exports.MediaTypes = {}));\n/**\n * Returns the proxy URL, depending upon the supplied url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\nfunction getProxyUrl(serverUrl) {\n let proxyUrl = pm.getProxyUrl(new URL(serverUrl));\n return proxyUrl ? proxyUrl.href : '';\n}\nexports.getProxyUrl = getProxyUrl;\nconst HttpRedirectCodes = [\n HttpCodes.MovedPermanently,\n HttpCodes.ResourceMoved,\n HttpCodes.SeeOther,\n HttpCodes.TemporaryRedirect,\n HttpCodes.PermanentRedirect\n];\nconst HttpResponseRetryCodes = [\n HttpCodes.BadGateway,\n HttpCodes.ServiceUnavailable,\n HttpCodes.GatewayTimeout\n];\nconst RetryableHttpVerbs = ['OPTIONS', 'GET', 'DELETE', 'HEAD'];\nconst ExponentialBackoffCeiling = 10;\nconst ExponentialBackoffTimeSlice = 5;\nclass HttpClientError extends Error {\n constructor(message, statusCode) {\n super(message);\n this.name = 'HttpClientError';\n this.statusCode = statusCode;\n Object.setPrototypeOf(this, HttpClientError.prototype);\n }\n}\nexports.HttpClientError = HttpClientError;\nclass HttpClientResponse {\n constructor(message) {\n this.message = message;\n }\n readBody() {\n return new Promise(async (resolve, reject) => {\n let output = Buffer.alloc(0);\n this.message.on('data', (chunk) => {\n output = Buffer.concat([output, chunk]);\n });\n this.message.on('end', () => {\n resolve(output.toString());\n });\n });\n }\n}\nexports.HttpClientResponse = HttpClientResponse;\nfunction isHttps(requestUrl) {\n let parsedUrl = new URL(requestUrl);\n return parsedUrl.protocol === 'https:';\n}\nexports.isHttps = isHttps;\nclass HttpClient {\n constructor(userAgent, handlers, requestOptions) {\n this._ignoreSslError = false;\n this._allowRedirects = true;\n this._allowRedirectDowngrade = false;\n this._maxRedirects = 50;\n this._allowRetries = false;\n this._maxRetries = 1;\n this._keepAlive = false;\n this._disposed = false;\n this.userAgent = userAgent;\n this.handlers = handlers || [];\n this.requestOptions = requestOptions;\n if (requestOptions) {\n if (requestOptions.ignoreSslError != null) {\n this._ignoreSslError = requestOptions.ignoreSslError;\n }\n this._socketTimeout = requestOptions.socketTimeout;\n if (requestOptions.allowRedirects != null) {\n this._allowRedirects = requestOptions.allowRedirects;\n }\n if (requestOptions.allowRedirectDowngrade != null) {\n this._allowRedirectDowngrade = requestOptions.allowRedirectDowngrade;\n }\n if (requestOptions.maxRedirects != null) {\n this._maxRedirects = Math.max(requestOptions.maxRedirects, 0);\n }\n if (requestOptions.keepAlive != null) {\n this._keepAlive = requestOptions.keepAlive;\n }\n if (requestOptions.allowRetries != null) {\n this._allowRetries = requestOptions.allowRetries;\n }\n if (requestOptions.maxRetries != null) {\n this._maxRetries = requestOptions.maxRetries;\n }\n }\n }\n options(requestUrl, additionalHeaders) {\n return this.request('OPTIONS', requestUrl, null, additionalHeaders || {});\n }\n get(requestUrl, additionalHeaders) {\n return this.request('GET', requestUrl, null, additionalHeaders || {});\n }\n del(requestUrl, additionalHeaders) {\n return this.request('DELETE', requestUrl, null, additionalHeaders || {});\n }\n post(requestUrl, data, additionalHeaders) {\n return this.request('POST', requestUrl, data, additionalHeaders || {});\n }\n patch(requestUrl, data, additionalHeaders) {\n return this.request('PATCH', requestUrl, data, additionalHeaders || {});\n }\n put(requestUrl, data, additionalHeaders) {\n return this.request('PUT', requestUrl, data, additionalHeaders || {});\n }\n head(requestUrl, additionalHeaders) {\n return this.request('HEAD', requestUrl, null, additionalHeaders || {});\n }\n sendStream(verb, requestUrl, stream, additionalHeaders) {\n return this.request(verb, requestUrl, stream, additionalHeaders);\n }\n /**\n * Gets a typed object from an endpoint\n * Be aware that not found returns a null. Other errors (4xx, 5xx) reject the promise\n */\n async getJson(requestUrl, additionalHeaders = {}) {\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n let res = await this.get(requestUrl, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async postJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.post(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async putJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.put(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n async patchJson(requestUrl, obj, additionalHeaders = {}) {\n let data = JSON.stringify(obj, null, 2);\n additionalHeaders[Headers.Accept] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.Accept, MediaTypes.ApplicationJson);\n additionalHeaders[Headers.ContentType] = this._getExistingOrDefaultHeader(additionalHeaders, Headers.ContentType, MediaTypes.ApplicationJson);\n let res = await this.patch(requestUrl, data, additionalHeaders);\n return this._processResponse(res, this.requestOptions);\n }\n /**\n * Makes a raw http request.\n * All other methods such as get, post, patch, and request ultimately call this.\n * Prefer get, del, post and patch\n */\n async request(verb, requestUrl, data, headers) {\n if (this._disposed) {\n throw new Error('Client has already been disposed.');\n }\n let parsedUrl = new URL(requestUrl);\n let info = this._prepareRequest(verb, parsedUrl, headers);\n // Only perform retries on reads since writes may not be idempotent.\n let maxTries = this._allowRetries && RetryableHttpVerbs.indexOf(verb) != -1\n ? this._maxRetries + 1\n : 1;\n let numTries = 0;\n let response;\n while (numTries < maxTries) {\n response = await this.requestRaw(info, data);\n // Check if it's an authentication challenge\n if (response &&\n response.message &&\n response.message.statusCode === HttpCodes.Unauthorized) {\n let authenticationHandler;\n for (let i = 0; i < this.handlers.length; i++) {\n if (this.handlers[i].canHandleAuthentication(response)) {\n authenticationHandler = this.handlers[i];\n break;\n }\n }\n if (authenticationHandler) {\n return authenticationHandler.handleAuthentication(this, info, data);\n }\n else {\n // We have received an unauthorized response but have no handlers to handle it.\n // Let the response return to the caller.\n return response;\n }\n }\n let redirectsRemaining = this._maxRedirects;\n while (HttpRedirectCodes.indexOf(response.message.statusCode) != -1 &&\n this._allowRedirects &&\n redirectsRemaining > 0) {\n const redirectUrl = response.message.headers['location'];\n if (!redirectUrl) {\n // if there's no location to redirect to, we won't\n break;\n }\n let parsedRedirectUrl = new URL(redirectUrl);\n if (parsedUrl.protocol == 'https:' &&\n parsedUrl.protocol != parsedRedirectUrl.protocol &&\n !this._allowRedirectDowngrade) {\n throw new Error('Redirect from HTTPS to HTTP protocol. This downgrade is not allowed for security reasons. If you want to allow this behavior, set the allowRedirectDowngrade option to true.');\n }\n // we need to finish reading the response before reassigning response\n // which will leak the open socket.\n await response.readBody();\n // strip authorization header if redirected to a different hostname\n if (parsedRedirectUrl.hostname !== parsedUrl.hostname) {\n for (let header in headers) {\n // header names are case insensitive\n if (header.toLowerCase() === 'authorization') {\n delete headers[header];\n }\n }\n }\n // let's make the request with the new redirectUrl\n info = this._prepareRequest(verb, parsedRedirectUrl, headers);\n response = await this.requestRaw(info, data);\n redirectsRemaining--;\n }\n if (HttpResponseRetryCodes.indexOf(response.message.statusCode) == -1) {\n // If not a retry code, return immediately instead of retrying\n return response;\n }\n numTries += 1;\n if (numTries < maxTries) {\n await response.readBody();\n await this._performExponentialBackoff(numTries);\n }\n }\n return response;\n }\n /**\n * Needs to be called if keepAlive is set to true in request options.\n */\n dispose() {\n if (this._agent) {\n this._agent.destroy();\n }\n this._disposed = true;\n }\n /**\n * Raw request.\n * @param info\n * @param data\n */\n requestRaw(info, data) {\n return new Promise((resolve, reject) => {\n let callbackForResult = function (err, res) {\n if (err) {\n reject(err);\n }\n resolve(res);\n };\n this.requestRawWithCallback(info, data, callbackForResult);\n });\n }\n /**\n * Raw request with callback.\n * @param info\n * @param data\n * @param onResult\n */\n requestRawWithCallback(info, data, onResult) {\n let socket;\n if (typeof data === 'string') {\n info.options.headers['Content-Length'] = Buffer.byteLength(data, 'utf8');\n }\n let callbackCalled = false;\n let handleResult = (err, res) => {\n if (!callbackCalled) {\n callbackCalled = true;\n onResult(err, res);\n }\n };\n let req = info.httpModule.request(info.options, (msg) => {\n let res = new HttpClientResponse(msg);\n handleResult(null, res);\n });\n req.on('socket', sock => {\n socket = sock;\n });\n // If we ever get disconnected, we want the socket to timeout eventually\n req.setTimeout(this._socketTimeout || 3 * 60000, () => {\n if (socket) {\n socket.end();\n }\n handleResult(new Error('Request timeout: ' + info.options.path), null);\n });\n req.on('error', function (err) {\n // err has statusCode property\n // res should have headers\n handleResult(err, null);\n });\n if (data && typeof data === 'string') {\n req.write(data, 'utf8');\n }\n if (data && typeof data !== 'string') {\n data.on('close', function () {\n req.end();\n });\n data.pipe(req);\n }\n else {\n req.end();\n }\n }\n /**\n * Gets an http agent. This function is useful when you need an http agent that handles\n * routing through a proxy server - depending upon the url and proxy environment variables.\n * @param serverUrl The server URL where the request will be sent. For example, https://api.github.com\n */\n getAgent(serverUrl) {\n let parsedUrl = new URL(serverUrl);\n return this._getAgent(parsedUrl);\n }\n _prepareRequest(method, requestUrl, headers) {\n const info = {};\n info.parsedUrl = requestUrl;\n const usingSsl = info.parsedUrl.protocol === 'https:';\n info.httpModule = usingSsl ? https : http;\n const defaultPort = usingSsl ? 443 : 80;\n info.options = {};\n info.options.host = info.parsedUrl.hostname;\n info.options.port = info.parsedUrl.port\n ? parseInt(info.parsedUrl.port)\n : defaultPort;\n info.options.path =\n (info.parsedUrl.pathname || '') + (info.parsedUrl.search || '');\n info.options.method = method;\n info.options.headers = this._mergeHeaders(headers);\n if (this.userAgent != null) {\n info.options.headers['user-agent'] = this.userAgent;\n }\n info.options.agent = this._getAgent(info.parsedUrl);\n // gives handlers an opportunity to participate\n if (this.handlers) {\n this.handlers.forEach(handler => {\n handler.prepareRequest(info.options);\n });\n }\n return info;\n }\n _mergeHeaders(headers) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n if (this.requestOptions && this.requestOptions.headers) {\n return Object.assign({}, lowercaseKeys(this.requestOptions.headers), lowercaseKeys(headers));\n }\n return lowercaseKeys(headers || {});\n }\n _getExistingOrDefaultHeader(additionalHeaders, header, _default) {\n const lowercaseKeys = obj => Object.keys(obj).reduce((c, k) => ((c[k.toLowerCase()] = obj[k]), c), {});\n let clientHeader;\n if (this.requestOptions && this.requestOptions.headers) {\n clientHeader = lowercaseKeys(this.requestOptions.headers)[header];\n }\n return additionalHeaders[header] || clientHeader || _default;\n }\n _getAgent(parsedUrl) {\n let agent;\n let proxyUrl = pm.getProxyUrl(parsedUrl);\n let useProxy = proxyUrl && proxyUrl.hostname;\n if (this._keepAlive && useProxy) {\n agent = this._proxyAgent;\n }\n if (this._keepAlive && !useProxy) {\n agent = this._agent;\n }\n // if agent is already assigned use that agent.\n if (!!agent) {\n return agent;\n }\n const usingSsl = parsedUrl.protocol === 'https:';\n let maxSockets = 100;\n if (!!this.requestOptions) {\n maxSockets = this.requestOptions.maxSockets || http.globalAgent.maxSockets;\n }\n if (useProxy) {\n // If using proxy, need tunnel\n if (!tunnel) {\n tunnel = require('tunnel');\n }\n const agentOptions = {\n maxSockets: maxSockets,\n keepAlive: this._keepAlive,\n proxy: {\n ...((proxyUrl.username || proxyUrl.password) && {\n proxyAuth: `${proxyUrl.username}:${proxyUrl.password}`\n }),\n host: proxyUrl.hostname,\n port: proxyUrl.port\n }\n };\n let tunnelAgent;\n const overHttps = proxyUrl.protocol === 'https:';\n if (usingSsl) {\n tunnelAgent = overHttps ? tunnel.httpsOverHttps : tunnel.httpsOverHttp;\n }\n else {\n tunnelAgent = overHttps ? tunnel.httpOverHttps : tunnel.httpOverHttp;\n }\n agent = tunnelAgent(agentOptions);\n this._proxyAgent = agent;\n }\n // if reusing agent across request and tunneling agent isn't assigned create a new agent\n if (this._keepAlive && !agent) {\n const options = { keepAlive: this._keepAlive, maxSockets: maxSockets };\n agent = usingSsl ? new https.Agent(options) : new http.Agent(options);\n this._agent = agent;\n }\n // if not using private agent and tunnel agent isn't setup then use global agent\n if (!agent) {\n agent = usingSsl ? https.globalAgent : http.globalAgent;\n }\n if (usingSsl && this._ignoreSslError) {\n // we don't want to set NODE_TLS_REJECT_UNAUTHORIZED=0 since that will affect request for entire process\n // http.RequestOptions doesn't expose a way to modify RequestOptions.agent.options\n // we have to cast it to any and change it directly\n agent.options = Object.assign(agent.options || {}, {\n rejectUnauthorized: false\n });\n }\n return agent;\n }\n _performExponentialBackoff(retryNumber) {\n retryNumber = Math.min(ExponentialBackoffCeiling, retryNumber);\n const ms = ExponentialBackoffTimeSlice * Math.pow(2, retryNumber);\n return new Promise(resolve => setTimeout(() => resolve(), ms));\n }\n static dateTimeDeserializer(key, value) {\n if (typeof value === 'string') {\n let a = new Date(value);\n if (!isNaN(a.valueOf())) {\n return a;\n }\n }\n return value;\n }\n async _processResponse(res, options) {\n return new Promise(async (resolve, reject) => {\n const statusCode = res.message.statusCode;\n const response = {\n statusCode: statusCode,\n result: null,\n headers: {}\n };\n // not found leads to null obj returned\n if (statusCode == HttpCodes.NotFound) {\n resolve(response);\n }\n let obj;\n let contents;\n // get the result from the body\n try {\n contents = await res.readBody();\n if (contents && contents.length > 0) {\n if (options && options.deserializeDates) {\n obj = JSON.parse(contents, HttpClient.dateTimeDeserializer);\n }\n else {\n obj = JSON.parse(contents);\n }\n response.result = obj;\n }\n response.headers = res.message.headers;\n }\n catch (err) {\n // Invalid resource (contents not json); leaving result obj null\n }\n // note that 3xx redirects are handled by the http layer.\n if (statusCode > 299) {\n let msg;\n // if exception/error in body, attempt to get better error\n if (obj && obj.message) {\n msg = obj.message;\n }\n else if (contents && contents.length > 0) {\n // it may be the case that the exception is in the body message as string\n msg = contents;\n }\n else {\n msg = 'Failed request: (' + statusCode + ')';\n }\n let err = new HttpClientError(msg, statusCode);\n err.result = response.result;\n reject(err);\n }\n else {\n resolve(response);\n }\n });\n }\n}\nexports.HttpClient = HttpClient;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nfunction getProxyUrl(reqUrl) {\n let usingSsl = reqUrl.protocol === 'https:';\n let proxyUrl;\n if (checkBypass(reqUrl)) {\n return proxyUrl;\n }\n let proxyVar;\n if (usingSsl) {\n proxyVar = process.env['https_proxy'] || process.env['HTTPS_PROXY'];\n }\n else {\n proxyVar = process.env['http_proxy'] || process.env['HTTP_PROXY'];\n }\n if (proxyVar) {\n proxyUrl = new URL(proxyVar);\n }\n return proxyUrl;\n}\nexports.getProxyUrl = getProxyUrl;\nfunction checkBypass(reqUrl) {\n if (!reqUrl.hostname) {\n return false;\n }\n let noProxy = process.env['no_proxy'] || process.env['NO_PROXY'] || '';\n if (!noProxy) {\n return false;\n }\n // Determine the request port\n let reqPort;\n if (reqUrl.port) {\n reqPort = Number(reqUrl.port);\n }\n else if (reqUrl.protocol === 'http:') {\n reqPort = 80;\n }\n else if (reqUrl.protocol === 'https:') {\n reqPort = 443;\n }\n // Format the request hostname and hostname with port\n let upperReqHosts = [reqUrl.hostname.toUpperCase()];\n if (typeof reqPort === 'number') {\n upperReqHosts.push(`${upperReqHosts[0]}:${reqPort}`);\n }\n // Compare request host against noproxy\n for (let upperNoProxyItem of noProxy\n .split(',')\n .map(x => x.trim().toUpperCase())\n .filter(x => x)) {\n if (upperReqHosts.some(x => x === upperNoProxyItem)) {\n return true;\n }\n }\n return false;\n}\nexports.checkBypass = checkBypass;\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { __awaiter, __generator } from \"tslib\";\nexport var deserializerMiddleware = function (options, deserializer) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var response, parsed;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, next(args)];\n case 1:\n response = (_a.sent()).response;\n return [4, deserializer(response, options)];\n case 2:\n parsed = _a.sent();\n return [2, {\n response: response,\n output: parsed,\n }];\n }\n });\n }); };\n };\n};\n","import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport var deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport var serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: function (commandStack) {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n","import { __assign, __awaiter, __generator } from \"tslib\";\nexport var serializerMiddleware = function (options, serializer) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var request;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, serializer(args.input, options)];\n case 1:\n request = _a.sent();\n return [2, next(__assign(__assign({}, args), { request: request }))];\n }\n });\n }); };\n };\n};\n","import { __extends } from \"tslib\";\nvar ProviderError = (function (_super) {\n __extends(ProviderError, _super);\n function ProviderError(message, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n var _this = _super.call(this, message) || this;\n _this.tryNextLink = tryNextLink;\n return _this;\n }\n ProviderError.from = function (error, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n Object.defineProperty(error, \"tryNextLink\", {\n value: tryNextLink,\n configurable: false,\n enumerable: false,\n writable: false,\n });\n return error;\n };\n return ProviderError;\n}(Error));\nexport { ProviderError };\nvar CredentialsProviderError = (function (_super) {\n __extends(CredentialsProviderError, _super);\n function CredentialsProviderError(message, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n var _this = _super.call(this, message) || this;\n _this.tryNextLink = tryNextLink;\n _this.name = \"CredentialsProviderError\";\n return _this;\n }\n CredentialsProviderError.from = function (error, tryNextLink) {\n if (tryNextLink === void 0) { tryNextLink = true; }\n Object.defineProperty(error, \"tryNextLink\", {\n value: tryNextLink,\n configurable: false,\n enumerable: false,\n writable: false,\n });\n return error;\n };\n return CredentialsProviderError;\n}(Error));\nexport { CredentialsProviderError };\n","import { __values } from \"tslib\";\nimport { ProviderError } from \"./ProviderError\";\nexport function chain() {\n var providers = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n providers[_i] = arguments[_i];\n }\n return function () {\n var e_1, _a;\n var promise = Promise.reject(new ProviderError(\"No providers in chain\"));\n var _loop_1 = function (provider) {\n promise = promise.catch(function (err) {\n if (err === null || err === void 0 ? void 0 : err.tryNextLink) {\n return provider();\n }\n throw err;\n });\n };\n try {\n for (var providers_1 = __values(providers), providers_1_1 = providers_1.next(); !providers_1_1.done; providers_1_1 = providers_1.next()) {\n var provider = providers_1_1.value;\n _loop_1(provider);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (providers_1_1 && !providers_1_1.done && (_a = providers_1.return)) _a.call(providers_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return promise;\n };\n}\n","var SHORT_TO_HEX = {};\nvar HEX_TO_SHORT = {};\nfor (var i = 0; i < 256; i++) {\n var 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 var out = new Uint8Array(encoded.length / 2);\n for (var i = 0; i < encoded.length; i += 2) {\n var encodedByte = encoded.substr(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 var out = \"\";\n for (var i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n","export var fromStatic = function (staticValue) {\n return function () {\n return Promise.resolve(staticValue);\n };\n};\n","import { __awaiter, __generator } from \"tslib\";\nexport var memoize = function (provider, isExpired, requiresRefresh) {\n var resolved;\n var pending;\n var hasResult;\n var coalesceProvider = function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!pending) {\n pending = provider();\n }\n _a.label = 1;\n case 1:\n _a.trys.push([1, , 3, 4]);\n return [4, pending];\n case 2:\n resolved = _a.sent();\n hasResult = true;\n return [3, 4];\n case 3:\n pending = undefined;\n return [7];\n case 4: return [2, resolved];\n }\n });\n }); };\n if (isExpired === undefined) {\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!hasResult) return [3, 2];\n return [4, coalesceProvider()];\n case 1:\n resolved = _a.sent();\n _a.label = 2;\n case 2: return [2, resolved];\n }\n });\n }); };\n }\n var isConstant = false;\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!hasResult) return [3, 2];\n return [4, coalesceProvider()];\n case 1:\n resolved = _a.sent();\n _a.label = 2;\n case 2:\n if (isConstant) {\n return [2, resolved];\n }\n if (requiresRefresh && !requiresRefresh(resolved)) {\n isConstant = true;\n return [2, resolved];\n }\n if (!isExpired(resolved)) return [3, 4];\n return [4, coalesceProvider()];\n case 3:\n _a.sent();\n return [2, resolved];\n case 4: return [2, resolved];\n }\n });\n }); };\n};\n","export var ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nexport var CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nexport var AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nexport var SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nexport var EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nexport var SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nexport var TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nexport var REGION_SET_PARAM = \"X-Amz-Region-Set\";\nexport var AUTH_HEADER = \"authorization\";\nexport var AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nexport var DATE_HEADER = \"date\";\nexport var GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nexport var SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nexport var SHA256_HEADER = \"x-amz-content-sha256\";\nexport var TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nexport var HOST_HEADER = \"host\";\nexport var 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 var PROXY_HEADER_PATTERN = /^proxy-/;\nexport var SEC_HEADER_PATTERN = /^sec-/;\nexport var UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];\nexport var ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nexport var ALGORITHM_IDENTIFIER_V4A = \"AWS4-ECDSA-P256-SHA256\";\nexport var EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nexport var UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nexport var MAX_CACHE_SIZE = 50;\nexport var KEY_TYPE_IDENTIFIER = \"aws4_request\";\nexport var MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n","import { __awaiter, __generator, __values } from \"tslib\";\nimport { toHex } from \"@aws-sdk/util-hex-encoding\";\nimport { KEY_TYPE_IDENTIFIER, MAX_CACHE_SIZE } from \"./constants\";\nvar signingKeyCache = {};\nvar cacheQueue = [];\nexport var createScope = function (shortDate, region, service) {\n return shortDate + \"/\" + region + \"/\" + service + \"/\" + KEY_TYPE_IDENTIFIER;\n};\nexport var getSigningKey = function (sha256Constructor, credentials, shortDate, region, service) { return __awaiter(void 0, void 0, void 0, function () {\n var credsHash, cacheKey, key, _a, _b, signable, e_1_1;\n var e_1, _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4, hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId)];\n case 1:\n credsHash = _d.sent();\n cacheKey = shortDate + \":\" + region + \":\" + service + \":\" + toHex(credsHash) + \":\" + credentials.sessionToken;\n if (cacheKey in signingKeyCache) {\n return [2, signingKeyCache[cacheKey]];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n key = \"AWS4\" + credentials.secretAccessKey;\n _d.label = 2;\n case 2:\n _d.trys.push([2, 7, 8, 9]);\n _a = __values([shortDate, region, service, KEY_TYPE_IDENTIFIER]), _b = _a.next();\n _d.label = 3;\n case 3:\n if (!!_b.done) return [3, 6];\n signable = _b.value;\n return [4, hmac(sha256Constructor, key, signable)];\n case 4:\n key = _d.sent();\n _d.label = 5;\n case 5:\n _b = _a.next();\n return [3, 3];\n case 6: return [3, 9];\n case 7:\n e_1_1 = _d.sent();\n e_1 = { error: e_1_1 };\n return [3, 9];\n case 8:\n try {\n if (_b && !_b.done && (_c = _a.return)) _c.call(_a);\n }\n finally { if (e_1) throw e_1.error; }\n return [7];\n case 9: return [2, (signingKeyCache[cacheKey] = key)];\n }\n });\n}); };\nexport var clearCredentialCache = function () {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach(function (cacheKey) {\n delete signingKeyCache[cacheKey];\n });\n};\nvar hmac = function (ctor, secret, data) {\n var hash = new ctor(secret);\n hash.update(data);\n return hash.digest();\n};\n","import { __values } from \"tslib\";\nimport { ALWAYS_UNSIGNABLE_HEADERS, PROXY_HEADER_PATTERN, SEC_HEADER_PATTERN } from \"./constants\";\nexport var getCanonicalHeaders = function (_a, unsignableHeaders, signableHeaders) {\n var e_1, _b;\n var headers = _a.headers;\n var canonical = {};\n try {\n for (var _c = __values(Object.keys(headers).sort()), _d = _c.next(); !_d.done; _d = _c.next()) {\n var headerName = _d.value;\n var canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS ||\n (unsignableHeaders === null || unsignableHeaders === void 0 ? void 0 : 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 }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_d && !_d.done && (_b = _c.return)) _b.call(_c);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return canonical;\n};\n","export var escapeUri = function (uri) {\n return encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\n};\nvar hexEncode = function (c) { return \"%\" + c.charCodeAt(0).toString(16).toUpperCase(); };\n","export var isArrayBuffer = function (arg) {\n return (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n};\n","import { __awaiter, __generator, __values } from \"tslib\";\nimport { isArrayBuffer } from \"@aws-sdk/is-array-buffer\";\nimport { toHex } from \"@aws-sdk/util-hex-encoding\";\nimport { SHA256_HEADER, UNSIGNED_PAYLOAD } from \"./constants\";\nexport var getPayloadHash = function (_a, hashConstructor) {\n var headers = _a.headers, body = _a.body;\n return __awaiter(void 0, void 0, void 0, function () {\n var _b, _c, headerName, hashCtor, _d;\n var e_1, _e;\n return __generator(this, function (_f) {\n switch (_f.label) {\n case 0:\n try {\n for (_b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n headerName = _c.value;\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return [2, headers[headerName]];\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_e = _b.return)) _e.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n if (!(body == undefined)) return [3, 1];\n return [2, \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\"];\n case 1:\n if (!(typeof body === \"string\" || ArrayBuffer.isView(body) || isArrayBuffer(body))) return [3, 3];\n hashCtor = new hashConstructor();\n hashCtor.update(body);\n _d = toHex;\n return [4, hashCtor.digest()];\n case 2: return [2, _d.apply(void 0, [_f.sent()])];\n case 3: return [2, UNSIGNED_PAYLOAD];\n }\n });\n });\n};\n","import { __assign, __read, __rest, __spreadArray } from \"tslib\";\nexport var cloneRequest = function (_a) {\n var headers = _a.headers, query = _a.query, rest = __rest(_a, [\"headers\", \"query\"]);\n return (__assign(__assign({}, rest), { headers: __assign({}, headers), query: query ? cloneQuery(query) : undefined }));\n};\nexport var cloneQuery = function (query) {\n return Object.keys(query).reduce(function (carry, paramName) {\n var _a;\n var param = query[paramName];\n return __assign(__assign({}, carry), (_a = {}, _a[paramName] = Array.isArray(param) ? __spreadArray([], __read(param)) : param, _a));\n }, {});\n};\n","import { __values } from \"tslib\";\nimport { cloneRequest } from \"./cloneRequest\";\nimport { GENERATED_HEADERS } from \"./constants\";\nexport var prepareRequest = function (request) {\n var e_1, _a;\n request = typeof request.clone === \"function\" ? request.clone() : cloneRequest(request);\n try {\n for (var _b = __values(Object.keys(request.headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return request;\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { toHex } from \"@aws-sdk/util-hex-encoding\";\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 { hasHeader } from \"./headerUtil\";\nimport { moveHeadersToQuery } from \"./moveHeadersToQuery\";\nimport { normalizeCredentialsProvider, normalizeRegionProvider } from \"./normalizeProvider\";\nimport { prepareRequest } from \"./prepareRequest\";\nimport { iso8601 } from \"./utilDate\";\nvar SignatureV4 = (function () {\n function SignatureV4(_a) {\n var applyChecksum = _a.applyChecksum, credentials = _a.credentials, region = _a.region, service = _a.service, sha256 = _a.sha256, _b = _a.uriEscapePath, uriEscapePath = _b === void 0 ? true : _b;\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = normalizeRegionProvider(region);\n this.credentialProvider = normalizeCredentialsProvider(credentials);\n }\n SignatureV4.prototype.presign = function (originalRequest, options) {\n if (options === void 0) { options = {}; }\n return __awaiter(this, void 0, void 0, function () {\n var _a, signingDate, _b, expiresIn, unsignableHeaders, unhoistableHeaders, signableHeaders, signingRegion, signingService, credentials, region, _c, _d, longDate, shortDate, scope, request, canonicalHeaders, _e, _f, _g, _h, _j, _k;\n return __generator(this, function (_l) {\n switch (_l.label) {\n case 0:\n _a = options.signingDate, signingDate = _a === void 0 ? new Date() : _a, _b = options.expiresIn, expiresIn = _b === void 0 ? 3600 : _b, unsignableHeaders = options.unsignableHeaders, unhoistableHeaders = options.unhoistableHeaders, signableHeaders = options.signableHeaders, signingRegion = options.signingRegion, signingService = options.signingService;\n return [4, this.credentialProvider()];\n case 1:\n credentials = _l.sent();\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 2];\n _c = signingRegion;\n return [3, 4];\n case 2: return [4, this.regionProvider()];\n case 3:\n _c = (_l.sent());\n _l.label = 4;\n case 4:\n region = _c;\n _d = formatDate(signingDate), longDate = _d.longDate, shortDate = _d.shortDate;\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return [2, Promise.reject(\"Signature version 4 presigned URLs\" + \" must have an expiration date less than one week in\" + \" the future\")];\n }\n scope = createScope(shortDate, region, signingService !== null && signingService !== void 0 ? signingService : this.service);\n request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders: unhoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = credentials.accessKeyId + \"/\" + scope;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = getCanonicalHeaderList(canonicalHeaders);\n _e = request.query;\n _f = SIGNATURE_QUERY_PARAM;\n _g = this.getSignature;\n _h = [longDate,\n scope,\n this.getSigningKey(credentials, region, shortDate, signingService)];\n _j = this.createCanonicalRequest;\n _k = [request, canonicalHeaders];\n return [4, getPayloadHash(originalRequest, this.sha256)];\n case 5: return [4, _g.apply(this, _h.concat([_j.apply(this, _k.concat([_l.sent()]))]))];\n case 6:\n _e[_f] = _l.sent();\n return [2, request];\n }\n });\n });\n };\n SignatureV4.prototype.sign = function (toSign, options) {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n if (typeof toSign === \"string\") {\n return [2, this.signString(toSign, options)];\n }\n else if (toSign.headers && toSign.payload) {\n return [2, this.signEvent(toSign, options)];\n }\n else {\n return [2, this.signRequest(toSign, options)];\n }\n return [2];\n });\n });\n };\n SignatureV4.prototype.signEvent = function (_a, _b) {\n var headers = _a.headers, payload = _a.payload;\n var _c = _b.signingDate, signingDate = _c === void 0 ? new Date() : _c, priorSignature = _b.priorSignature, signingRegion = _b.signingRegion, signingService = _b.signingService;\n return __awaiter(this, void 0, void 0, function () {\n var region, _d, _e, shortDate, longDate, scope, hashedPayload, hash, hashedHeaders, _f, stringToSign;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 1];\n _d = signingRegion;\n return [3, 3];\n case 1: return [4, this.regionProvider()];\n case 2:\n _d = (_g.sent());\n _g.label = 3;\n case 3:\n region = _d;\n _e = formatDate(signingDate), shortDate = _e.shortDate, longDate = _e.longDate;\n scope = createScope(shortDate, region, signingService !== null && signingService !== void 0 ? signingService : this.service);\n return [4, getPayloadHash({ headers: {}, body: payload }, this.sha256)];\n case 4:\n hashedPayload = _g.sent();\n hash = new this.sha256();\n hash.update(headers);\n _f = toHex;\n return [4, hash.digest()];\n case 5:\n hashedHeaders = _f.apply(void 0, [_g.sent()]);\n stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload,\n ].join(\"\\n\");\n return [2, this.signString(stringToSign, { signingDate: signingDate, signingRegion: region, signingService: signingService })];\n }\n });\n });\n };\n SignatureV4.prototype.signString = function (stringToSign, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.signingDate, signingDate = _c === void 0 ? new Date() : _c, signingRegion = _b.signingRegion, signingService = _b.signingService;\n return __awaiter(this, void 0, void 0, function () {\n var credentials, region, _d, shortDate, hash, _e, _f, _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0: return [4, this.credentialProvider()];\n case 1:\n credentials = _h.sent();\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 2];\n _d = signingRegion;\n return [3, 4];\n case 2: return [4, this.regionProvider()];\n case 3:\n _d = (_h.sent());\n _h.label = 4;\n case 4:\n region = _d;\n shortDate = formatDate(signingDate).shortDate;\n _f = (_e = this.sha256).bind;\n return [4, this.getSigningKey(credentials, region, shortDate, signingService)];\n case 5:\n hash = new (_f.apply(_e, [void 0, _h.sent()]))();\n hash.update(stringToSign);\n _g = toHex;\n return [4, hash.digest()];\n case 6: return [2, _g.apply(void 0, [_h.sent()])];\n }\n });\n });\n };\n SignatureV4.prototype.signRequest = function (requestToSign, _a) {\n var _b = _a === void 0 ? {} : _a, _c = _b.signingDate, signingDate = _c === void 0 ? new Date() : _c, signableHeaders = _b.signableHeaders, unsignableHeaders = _b.unsignableHeaders, signingRegion = _b.signingRegion, signingService = _b.signingService;\n return __awaiter(this, void 0, void 0, function () {\n var credentials, region, _d, request, _e, longDate, shortDate, scope, payloadHash, canonicalHeaders, signature;\n return __generator(this, function (_f) {\n switch (_f.label) {\n case 0: return [4, this.credentialProvider()];\n case 1:\n credentials = _f.sent();\n if (!(signingRegion !== null && signingRegion !== void 0)) return [3, 2];\n _d = signingRegion;\n return [3, 4];\n case 2: return [4, this.regionProvider()];\n case 3:\n _d = (_f.sent());\n _f.label = 4;\n case 4:\n region = _d;\n request = prepareRequest(requestToSign);\n _e = formatDate(signingDate), longDate = _e.longDate, shortDate = _e.shortDate;\n scope = createScope(shortDate, region, signingService !== null && signingService !== void 0 ? signingService : this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n return [4, getPayloadHash(request, this.sha256)];\n case 5:\n payloadHash = _f.sent();\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n return [4, this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash))];\n case 6:\n signature = _f.sent();\n request.headers[AUTH_HEADER] =\n ALGORITHM_IDENTIFIER + \" \" +\n (\"Credential=\" + credentials.accessKeyId + \"/\" + scope + \", \") +\n (\"SignedHeaders=\" + getCanonicalHeaderList(canonicalHeaders) + \", \") +\n (\"Signature=\" + signature);\n return [2, request];\n }\n });\n });\n };\n SignatureV4.prototype.createCanonicalRequest = function (request, canonicalHeaders, payloadHash) {\n var sortedHeaders = Object.keys(canonicalHeaders).sort();\n return request.method + \"\\n\" + this.getCanonicalPath(request) + \"\\n\" + getCanonicalQuery(request) + \"\\n\" + sortedHeaders.map(function (name) { return name + \":\" + canonicalHeaders[name]; }).join(\"\\n\") + \"\\n\\n\" + sortedHeaders.join(\";\") + \"\\n\" + payloadHash;\n };\n SignatureV4.prototype.createStringToSign = function (longDate, credentialScope, canonicalRequest) {\n return __awaiter(this, void 0, void 0, function () {\n var hash, hashedRequest;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n hash = new this.sha256();\n hash.update(canonicalRequest);\n return [4, hash.digest()];\n case 1:\n hashedRequest = _a.sent();\n return [2, ALGORITHM_IDENTIFIER + \"\\n\" + longDate + \"\\n\" + credentialScope + \"\\n\" + toHex(hashedRequest)];\n }\n });\n });\n };\n SignatureV4.prototype.getCanonicalPath = function (_a) {\n var path = _a.path;\n if (this.uriEscapePath) {\n var doubleEncoded = encodeURIComponent(path.replace(/^\\//, \"\"));\n return \"/\" + doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n };\n SignatureV4.prototype.getSignature = function (longDate, credentialScope, keyPromise, canonicalRequest) {\n return __awaiter(this, void 0, void 0, function () {\n var stringToSign, hash, _a, _b, _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0: return [4, this.createStringToSign(longDate, credentialScope, canonicalRequest)];\n case 1:\n stringToSign = _d.sent();\n _b = (_a = this.sha256).bind;\n return [4, keyPromise];\n case 2:\n hash = new (_b.apply(_a, [void 0, _d.sent()]))();\n hash.update(stringToSign);\n _c = toHex;\n return [4, hash.digest()];\n case 3: return [2, _c.apply(void 0, [_d.sent()])];\n }\n });\n });\n };\n SignatureV4.prototype.getSigningKey = function (credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n };\n return SignatureV4;\n}());\nexport { SignatureV4 };\nvar formatDate = function (now) {\n var longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate: longDate,\n shortDate: longDate.substr(0, 8),\n };\n};\nvar getCanonicalHeaderList = function (headers) { return Object.keys(headers).sort().join(\";\"); };\n","export var normalizeRegionProvider = function (region) {\n if (typeof region === \"string\") {\n var promisified_1 = Promise.resolve(region);\n return function () { return promisified_1; };\n }\n else {\n return region;\n }\n};\nexport var normalizeCredentialsProvider = function (credentials) {\n if (typeof credentials === \"object\") {\n var promisified_2 = Promise.resolve(credentials);\n return function () { return promisified_2; };\n }\n else {\n return credentials;\n }\n};\n","import { __assign, __values } from \"tslib\";\nimport { cloneRequest } from \"./cloneRequest\";\nexport var moveHeadersToQuery = function (request, options) {\n var e_1, _a;\n var _b;\n if (options === void 0) { options = {}; }\n var _c = typeof request.clone === \"function\" ? request.clone() : cloneRequest(request), headers = _c.headers, _d = _c.query, query = _d === void 0 ? {} : _d;\n try {\n for (var _e = __values(Object.keys(headers)), _f = _e.next(); !_f.done; _f = _e.next()) {\n var name = _f.value;\n var lname = name.toLowerCase();\n if (lname.substr(0, 6) === \"x-amz-\" && !((_b = options.unhoistableHeaders) === null || _b === void 0 ? void 0 : _b.has(lname))) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_f && !_f.done && (_a = _e.return)) _a.call(_e);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return __assign(__assign({}, request), { headers: headers, query: query });\n};\n","import { __values } from \"tslib\";\nexport var hasHeader = function (soughtHeader, headers) {\n var e_1, _a;\n soughtHeader = soughtHeader.toLowerCase();\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return false;\n};\nexport var getHeaderValue = function (soughtHeader, headers) {\n var e_2, _a;\n soughtHeader = soughtHeader.toLowerCase();\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (soughtHeader === headerName.toLowerCase()) {\n return headers[headerName];\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_2) throw e_2.error; }\n }\n return undefined;\n};\nexport var deleteHeader = function (soughtHeader, headers) {\n var e_3, _a;\n soughtHeader = soughtHeader.toLowerCase();\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var headerName = _c.value;\n if (soughtHeader === headerName.toLowerCase()) {\n delete headers[headerName];\n }\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_3) throw e_3.error; }\n }\n};\n","import { __values } from \"tslib\";\nimport { escapeUri } from \"@aws-sdk/util-uri-escape\";\nimport { SIGNATURE_HEADER } from \"./constants\";\nexport var getCanonicalQuery = function (_a) {\n var e_1, _b;\n var _c = _a.query, query = _c === void 0 ? {} : _c;\n var keys = [];\n var serialized = {};\n var _loop_1 = function (key) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n return \"continue\";\n }\n keys.push(key);\n var value = query[key];\n if (typeof value === \"string\") {\n serialized[key] = escapeUri(key) + \"=\" + escapeUri(value);\n }\n else if (Array.isArray(value)) {\n serialized[key] = value\n .slice(0)\n .sort()\n .reduce(function (encoded, value) { return encoded.concat([escapeUri(key) + \"=\" + escapeUri(value)]); }, [])\n .join(\"&\");\n }\n };\n try {\n for (var _d = __values(Object.keys(query).sort()), _e = _d.next(); !_e.done; _e = _d.next()) {\n var key = _e.value;\n _loop_1(key);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_e && !_e.done && (_b = _d.return)) _b.call(_d);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return keys\n .map(function (key) { return serialized[key]; })\n .filter(function (serialized) { return serialized; })\n .join(\"&\");\n};\n","export var iso8601 = function (time) {\n return toDate(time)\n .toISOString()\n .replace(/\\.\\d{3}Z$/, \"Z\");\n};\nexport var toDate = function (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 { __assign, __awaiter, __generator, __read } from \"tslib\";\nimport { memoize } from \"@aws-sdk/property-provider\";\nimport { SignatureV4 } from \"@aws-sdk/signature-v4\";\nvar CREDENTIAL_EXPIRE_WINDOW = 300000;\nexport var resolveAwsAuthConfig = function (input) {\n var normalizedCreds = input.credentials\n ? normalizeCredentialProvider(input.credentials)\n : input.credentialDefaultProvider(input);\n var _a = input.signingEscapePath, signingEscapePath = _a === void 0 ? true : _a, _b = input.systemClockOffset, systemClockOffset = _b === void 0 ? input.systemClockOffset || 0 : _b, sha256 = input.sha256;\n var signer;\n if (input.signer) {\n signer = normalizeProvider(input.signer);\n }\n else {\n signer = function () {\n return normalizeProvider(input.region)()\n .then(function (region) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, _b, _c;\n var _d;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n _b = (_a = input).regionInfoProvider;\n _c = [region];\n _d = {};\n return [4, input.useFipsEndpoint()];\n case 1:\n _d.useFipsEndpoint = _e.sent();\n return [4, input.useDualstackEndpoint()];\n case 2: return [4, _b.apply(_a, _c.concat([(_d.useDualstackEndpoint = _e.sent(),\n _d)]))];\n case 3: return [2, [\n (_e.sent()) || {},\n region\n ]];\n }\n });\n }); })\n .then(function (_a) {\n var _b = __read(_a, 2), regionInfo = _b[0], region = _b[1];\n var signingRegion = regionInfo.signingRegion, signingService = regionInfo.signingService;\n input.signingRegion = input.signingRegion || signingRegion || region;\n input.signingName = input.signingName || signingService || input.serviceId;\n var params = __assign(__assign({}, input), { credentials: normalizedCreds, region: input.signingRegion, service: input.signingName, sha256: sha256, uriEscapePath: signingEscapePath });\n var signerConstructor = input.signerConstructor || SignatureV4;\n return new signerConstructor(params);\n });\n };\n }\n return __assign(__assign({}, input), { systemClockOffset: systemClockOffset, signingEscapePath: signingEscapePath, credentials: normalizedCreds, signer: signer });\n};\nexport var resolveSigV4AuthConfig = function (input) {\n var normalizedCreds = input.credentials\n ? normalizeCredentialProvider(input.credentials)\n : input.credentialDefaultProvider(input);\n var _a = input.signingEscapePath, signingEscapePath = _a === void 0 ? true : _a, _b = input.systemClockOffset, systemClockOffset = _b === void 0 ? input.systemClockOffset || 0 : _b, sha256 = input.sha256;\n var signer;\n if (input.signer) {\n signer = normalizeProvider(input.signer);\n }\n else {\n signer = normalizeProvider(new SignatureV4({\n credentials: normalizedCreds,\n region: input.region,\n service: input.signingName,\n sha256: sha256,\n uriEscapePath: signingEscapePath,\n }));\n }\n return __assign(__assign({}, input), { systemClockOffset: systemClockOffset, signingEscapePath: signingEscapePath, credentials: normalizedCreds, signer: signer });\n};\nvar normalizeProvider = function (input) {\n if (typeof input === \"object\") {\n var promisified_1 = Promise.resolve(input);\n return function () { return promisified_1; };\n }\n return input;\n};\nvar normalizeCredentialProvider = function (credentials) {\n if (typeof credentials === \"function\") {\n return memoize(credentials, function (credentials) {\n return credentials.expiration !== undefined &&\n credentials.expiration.getTime() - Date.now() < CREDENTIAL_EXPIRE_WINDOW;\n }, function (credentials) { return credentials.expiration !== undefined; });\n }\n return normalizeProvider(credentials);\n};\n","import { __assign, __read, __spreadArray } from \"tslib\";\nvar HttpRequest = (function () {\n function HttpRequest(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.substr(-1) !== \":\"\n ? options.protocol + \":\"\n : options.protocol\n : \"https:\";\n this.path = options.path ? (options.path.charAt(0) !== \"/\" ? \"/\" + options.path : options.path) : \"/\";\n }\n HttpRequest.isInstance = function (request) {\n if (!request)\n return false;\n var 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 HttpRequest.prototype.clone = function () {\n var cloned = new HttpRequest(__assign(__assign({}, this), { headers: __assign({}, this.headers) }));\n if (cloned.query)\n cloned.query = cloneQuery(cloned.query);\n return cloned;\n };\n return HttpRequest;\n}());\nexport { HttpRequest };\nfunction cloneQuery(query) {\n return Object.keys(query).reduce(function (carry, paramName) {\n var _a;\n var param = query[paramName];\n return __assign(__assign({}, carry), (_a = {}, _a[paramName] = Array.isArray(param) ? __spreadArray([], __read(param)) : param, _a));\n }, {});\n}\n","var HttpResponse = (function () {\n function HttpResponse(options) {\n this.statusCode = options.statusCode;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n HttpResponse.isInstance = function (response) {\n if (!response)\n return false;\n var resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n };\n return HttpResponse;\n}());\nexport { HttpResponse };\n","export var getSkewCorrectedDate = function (systemClockOffset) { return new Date(Date.now() + systemClockOffset); };\n","import { isClockSkewed } from \"./isClockSkewed\";\nexport var getUpdatedSystemClockOffset = function (clockTime, currentSystemClockOffset) {\n var clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n","import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport var isClockSkewed = function (clockTime, systemClockOffset) {\n return Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { getSkewCorrectedDate } from \"./utils/getSkewCorrectedDate\";\nimport { getUpdatedSystemClockOffset } from \"./utils/getUpdatedSystemClockOffset\";\nexport var awsAuthMiddleware = function (options) {\n return function (next, context) {\n return function (args) {\n return __awaiter(this, void 0, void 0, function () {\n var signer, output, _a, _b, headers, dateHeader;\n var _c;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n if (!HttpRequest.isInstance(args.request))\n return [2, next(args)];\n return [4, options.signer()];\n case 1:\n signer = _d.sent();\n _a = next;\n _b = [__assign({}, args)];\n _c = {};\n return [4, signer.sign(args.request, {\n signingDate: getSkewCorrectedDate(options.systemClockOffset),\n signingRegion: context[\"signing_region\"],\n signingService: context[\"signing_service\"],\n })];\n case 2: return [4, _a.apply(void 0, [__assign.apply(void 0, _b.concat([(_c.request = _d.sent(), _c)]))]).catch(function (error) {\n if (error.ServerTime) {\n options.systemClockOffset = getUpdatedSystemClockOffset(error.ServerTime, options.systemClockOffset);\n }\n throw error;\n })];\n case 3:\n output = _d.sent();\n headers = output.response.headers;\n dateHeader = headers && (headers.date || headers.Date);\n if (dateHeader) {\n options.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, options.systemClockOffset);\n }\n return [2, output];\n }\n });\n });\n };\n };\n};\nexport var awsAuthMiddlewareOptions = {\n name: \"awsAuthMiddleware\",\n tags: [\"SIGNATURE\", \"AWSAUTH\"],\n relation: \"after\",\n toMiddleware: \"retryMiddleware\",\n override: true,\n};\nexport var getAwsAuthPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.addRelativeTo(awsAuthMiddleware(options), awsAuthMiddlewareOptions);\n },\n}); };\nexport var getSigV4AuthPlugin = getAwsAuthPlugin;\n","import { __assign, __read, __spreadArray, __values } from \"tslib\";\nexport var constructStack = function () {\n var absoluteEntries = [];\n var relativeEntries = [];\n var entriesNameSet = new Set();\n var sort = function (entries) {\n return entries.sort(function (a, b) {\n return stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"];\n });\n };\n var removeByName = function (toRemove) {\n var isRemoved = false;\n var filterCb = function (entry) {\n if (entry.name && entry.name === toRemove) {\n isRemoved = true;\n entriesNameSet.delete(toRemove);\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n var removeByReference = function (toRemove) {\n var isRemoved = false;\n var filterCb = function (entry) {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n if (entry.name)\n entriesNameSet.delete(entry.name);\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n var cloneTo = function (toStack) {\n absoluteEntries.forEach(function (entry) {\n toStack.add(entry.middleware, __assign({}, entry));\n });\n relativeEntries.forEach(function (entry) {\n toStack.addRelativeTo(entry.middleware, __assign({}, entry));\n });\n return toStack;\n };\n var expandRelativeMiddlewareList = function (from) {\n var expandedMiddlewareList = [];\n from.before.forEach(function (entry) {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push.apply(expandedMiddlewareList, __spreadArray([], __read(expandRelativeMiddlewareList(entry))));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach(function (entry) {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push.apply(expandedMiddlewareList, __spreadArray([], __read(expandRelativeMiddlewareList(entry))));\n }\n });\n return expandedMiddlewareList;\n };\n var getMiddlewareList = function () {\n var normalizedAbsoluteEntries = [];\n var normalizedRelativeEntries = [];\n var normalizedEntriesNameMap = {};\n absoluteEntries.forEach(function (entry) {\n var normalizedEntry = __assign(__assign({}, entry), { before: [], after: [] });\n if (normalizedEntry.name)\n normalizedEntriesNameMap[normalizedEntry.name] = normalizedEntry;\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach(function (entry) {\n var normalizedEntry = __assign(__assign({}, entry), { before: [], after: [] });\n if (normalizedEntry.name)\n normalizedEntriesNameMap[normalizedEntry.name] = normalizedEntry;\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach(function (entry) {\n if (entry.toMiddleware) {\n var toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n throw new Error(entry.toMiddleware + \" is not found when adding \" + (entry.name || \"anonymous\") + \" 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 var mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce(function (wholeList, expendedMiddlewareList) {\n wholeList.push.apply(wholeList, __spreadArray([], __read(expendedMiddlewareList)));\n return wholeList;\n }, []);\n return mainChain.map(function (entry) { return entry.middleware; });\n };\n var stack = {\n add: function (middleware, options) {\n if (options === void 0) { options = {}; }\n var name = options.name, override = options.override;\n var entry = __assign({ step: \"initialize\", priority: \"normal\", middleware: middleware }, options);\n if (name) {\n if (entriesNameSet.has(name)) {\n if (!override)\n throw new Error(\"Duplicate middleware name '\" + name + \"'\");\n var toOverrideIndex = absoluteEntries.findIndex(function (entry) { return entry.name === name; });\n var toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || toOverride.priority !== entry.priority) {\n throw new Error(\"\\\"\" + name + \"\\\" middleware with \" + toOverride.priority + \" priority in \" + toOverride.step + \" step cannot be \" +\n (\"overridden by same-name middleware with \" + entry.priority + \" priority in \" + entry.step + \" step.\"));\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n entriesNameSet.add(name);\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: function (middleware, options) {\n var name = options.name, override = options.override;\n var entry = __assign({ middleware: middleware }, options);\n if (name) {\n if (entriesNameSet.has(name)) {\n if (!override)\n throw new Error(\"Duplicate middleware name '\" + name + \"'\");\n var toOverrideIndex = relativeEntries.findIndex(function (entry) { return entry.name === name; });\n var toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(\"\\\"\" + name + \"\\\" middleware \" + toOverride.relation + \" \\\"\" + toOverride.toMiddleware + \"\\\" middleware cannot be overridden \" +\n (\"by same-name middleware \" + entry.relation + \" \\\"\" + entry.toMiddleware + \"\\\" middleware.\"));\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n entriesNameSet.add(name);\n }\n relativeEntries.push(entry);\n },\n clone: function () { return cloneTo(constructStack()); },\n use: function (plugin) {\n plugin.applyToStack(stack);\n },\n remove: function (toRemove) {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: function (toRemove) {\n var isRemoved = false;\n var filterCb = function (entry) {\n var tags = entry.tags, name = entry.name;\n if (tags && tags.includes(toRemove)) {\n if (name)\n entriesNameSet.delete(name);\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: function (from) {\n var cloned = cloneTo(constructStack());\n cloned.use(from);\n return cloned;\n },\n applyToStack: cloneTo,\n resolve: function (handler, context) {\n var e_1, _a;\n try {\n for (var _b = __values(getMiddlewareList().reverse()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var middleware = _c.value;\n handler = middleware(handler, context);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return handler;\n },\n };\n return stack;\n};\nvar stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nvar priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n","import { constructStack } from \"@aws-sdk/middleware-stack\";\nvar Client = (function () {\n function Client(config) {\n this.middlewareStack = constructStack();\n this.config = config;\n }\n Client.prototype.send = function (command, optionsOrCb, cb) {\n var options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n var callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n var handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n if (callback) {\n handler(command)\n .then(function (result) { return callback(null, result.output); }, function (err) { return callback(err); })\n .catch(function () { });\n }\n else {\n return handler(command).then(function (result) { return result.output; });\n }\n };\n Client.prototype.destroy = function () {\n if (this.config.requestHandler.destroy)\n this.config.requestHandler.destroy();\n };\n return Client;\n}());\nexport { Client };\n","import { constructStack } from \"@aws-sdk/middleware-stack\";\nvar Command = (function () {\n function Command() {\n this.middlewareStack = constructStack();\n }\n return Command;\n}());\nexport { Command };\n","export var SENSITIVE_STRING = \"***SensitiveInformation***\";\n","import { __read } from \"tslib\";\nexport var parseBoolean = function (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 var expectBoolean = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(\"Expected boolean, got \" + typeof value);\n};\nexport var expectNumber = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(\"Expected number, got \" + typeof value);\n};\nvar MAX_FLOAT = Math.ceil(Math.pow(2, 127) * (2 - Math.pow(2, -23)));\nexport var expectFloat32 = function (value) {\n var 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 var expectLong = function (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);\n};\nexport var expectInt = expectLong;\nexport var expectInt32 = function (value) { return expectSizedInt(value, 32); };\nexport var expectShort = function (value) { return expectSizedInt(value, 16); };\nexport var expectByte = function (value) { return expectSizedInt(value, 8); };\nvar expectSizedInt = function (value, size) {\n var 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};\nvar castInt = function (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 var expectNonNull = function (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 var expectObject = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n throw new TypeError(\"Expected object, got \" + typeof value);\n};\nexport var expectString = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n return value;\n }\n throw new TypeError(\"Expected string, got \" + typeof value);\n};\nexport var expectUnion = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n var asObject = expectObject(value);\n var setKeys = Object.entries(asObject)\n .filter(function (_a) {\n var _b = __read(_a, 2), _ = _b[0], v = _b[1];\n return v !== null && v !== undefined;\n })\n .map(function (_a) {\n var _b = __read(_a, 2), k = _b[0], _ = _b[1];\n return k;\n });\n if (setKeys.length === 0) {\n throw new TypeError(\"Unions must have exactly one non-null member\");\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 var strictParseDouble = function (value) {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n};\nexport var strictParseFloat = strictParseDouble;\nexport var strictParseFloat32 = function (value) {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n};\nvar NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nvar parseNumber = function (value) {\n var 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 var limitedParseDouble = function (value) {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n};\nexport var handleFloat = limitedParseDouble;\nexport var limitedParseFloat = limitedParseDouble;\nexport var limitedParseFloat32 = function (value) {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n};\nvar parseFloatString = function (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 var strictParseLong = function (value) {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n};\nexport var strictParseInt = strictParseLong;\nexport var strictParseInt32 = function (value) {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n};\nexport var strictParseShort = function (value) {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n};\nexport var strictParseByte = function (value) {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n};\n","import { __read } from \"tslib\";\nimport { strictParseByte, strictParseDouble, strictParseFloat32, strictParseShort } from \"./parse-utils\";\nvar DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nvar MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport function dateToUtcString(date) {\n var year = date.getUTCFullYear();\n var month = date.getUTCMonth();\n var dayOfWeek = date.getUTCDay();\n var dayOfMonthInt = date.getUTCDate();\n var hoursInt = date.getUTCHours();\n var minutesInt = date.getUTCMinutes();\n var secondsInt = date.getUTCSeconds();\n var dayOfMonthString = dayOfMonthInt < 10 ? \"0\" + dayOfMonthInt : \"\" + dayOfMonthInt;\n var hoursString = hoursInt < 10 ? \"0\" + hoursInt : \"\" + hoursInt;\n var minutesString = minutesInt < 10 ? \"0\" + minutesInt : \"\" + minutesInt;\n var secondsString = secondsInt < 10 ? \"0\" + secondsInt : \"\" + secondsInt;\n return DAYS[dayOfWeek] + \", \" + dayOfMonthString + \" \" + MONTHS[month] + \" \" + year + \" \" + hoursString + \":\" + minutesString + \":\" + secondsString + \" GMT\";\n}\nvar RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nexport var parseRfc3339DateTime = function (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 var match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n var _a = __read(match, 8), _ = _a[0], yearStr = _a[1], monthStr = _a[2], dayStr = _a[3], hours = _a[4], minutes = _a[5], seconds = _a[6], fractionalMilliseconds = _a[7];\n var year = strictParseShort(stripLeadingZeroes(yearStr));\n var month = parseDateValue(monthStr, \"month\", 1, 12);\n var day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours: hours, minutes: minutes, seconds: seconds, fractionalMilliseconds: fractionalMilliseconds });\n};\nvar 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{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nvar 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{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nvar 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{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nexport var parseRfc7231DateTime = function (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 var match = IMF_FIXDATE.exec(value);\n if (match) {\n var _a = __read(match, 8), _1 = _a[0], dayStr = _a[1], monthStr = _a[2], yearStr = _a[3], hours = _a[4], minutes = _a[5], seconds = _a[6], fractionalMilliseconds = _a[7];\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours: hours, minutes: minutes, seconds: seconds, fractionalMilliseconds: fractionalMilliseconds });\n }\n match = RFC_850_DATE.exec(value);\n if (match) {\n var _b = __read(match, 8), _2 = _b[0], dayStr = _b[1], monthStr = _b[2], yearStr = _b[3], hours = _b[4], minutes = _b[5], seconds = _b[6], fractionalMilliseconds = _b[7];\n return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours: hours,\n minutes: minutes,\n seconds: seconds,\n fractionalMilliseconds: fractionalMilliseconds,\n }));\n }\n match = ASC_TIME.exec(value);\n if (match) {\n var _c = __read(match, 8), _3 = _c[0], monthStr = _c[1], dayStr = _c[2], hours = _c[3], minutes = _c[4], seconds = _c[5], fractionalMilliseconds = _c[6], yearStr = _c[7];\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours: hours, minutes: minutes, seconds: seconds, fractionalMilliseconds: fractionalMilliseconds });\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nexport var parseEpochTimestamp = function (value) {\n if (value === null || value === undefined) {\n return undefined;\n }\n var valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n }\n else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(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};\nvar buildDate = function (year, month, day, time) {\n var 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};\nvar parseTwoDigitYear = function (value) {\n var thisYear = new Date().getUTCFullYear();\n var valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n};\nvar FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nvar adjustRfc850Year = function (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};\nvar parseMonthByShortName = function (value) {\n var monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(\"Invalid month: \" + value);\n }\n return monthIdx + 1;\n};\nvar DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nvar validateDayOfMonth = function (year, month, day) {\n var 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};\nvar isLeapYear = function (year) {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nvar parseDateValue = function (value, type, lower, upper) {\n var 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};\nvar parseMilliseconds = function (value) {\n if (value === null || value === undefined) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1000;\n};\nvar stripLeadingZeroes = function (value) {\n var 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","var warningEmitted = false;\nexport var emitWarningIfUnsupportedVersion = function (version) {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 12) {\n warningEmitted = true;\n process.emitWarning(\"The AWS SDK for JavaScript (v3) will\\n\" +\n (\"no longer support Node.js \" + version + \" as of January 1, 2022.\\n\") +\n \"To continue receiving updates to AWS services, bug fixes, and security\\n\" +\n \"updates please upgrade to Node.js 12.x or later.\\n\\n\" +\n \"More information can be found at: https://a.co/1l6FLnu\", \"NodeDeprecationWarning\");\n }\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","export var getValueFromTextNode = function (obj) {\n var textNodeName = \"#text\";\n for (var 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","import { __assign } from \"tslib\";\nexport var AssumedRoleUser;\n(function (AssumedRoleUser) {\n AssumedRoleUser.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumedRoleUser || (AssumedRoleUser = {}));\nexport var PolicyDescriptorType;\n(function (PolicyDescriptorType) {\n PolicyDescriptorType.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(PolicyDescriptorType || (PolicyDescriptorType = {}));\nexport var Tag;\n(function (Tag) {\n Tag.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(Tag || (Tag = {}));\nexport var AssumeRoleRequest;\n(function (AssumeRoleRequest) {\n AssumeRoleRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleRequest || (AssumeRoleRequest = {}));\nexport var Credentials;\n(function (Credentials) {\n Credentials.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(Credentials || (Credentials = {}));\nexport var AssumeRoleResponse;\n(function (AssumeRoleResponse) {\n AssumeRoleResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleResponse || (AssumeRoleResponse = {}));\nexport var ExpiredTokenException;\n(function (ExpiredTokenException) {\n ExpiredTokenException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ExpiredTokenException || (ExpiredTokenException = {}));\nexport var MalformedPolicyDocumentException;\n(function (MalformedPolicyDocumentException) {\n MalformedPolicyDocumentException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(MalformedPolicyDocumentException || (MalformedPolicyDocumentException = {}));\nexport var PackedPolicyTooLargeException;\n(function (PackedPolicyTooLargeException) {\n PackedPolicyTooLargeException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(PackedPolicyTooLargeException || (PackedPolicyTooLargeException = {}));\nexport var RegionDisabledException;\n(function (RegionDisabledException) {\n RegionDisabledException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(RegionDisabledException || (RegionDisabledException = {}));\nexport var AssumeRoleWithSAMLRequest;\n(function (AssumeRoleWithSAMLRequest) {\n AssumeRoleWithSAMLRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithSAMLRequest || (AssumeRoleWithSAMLRequest = {}));\nexport var AssumeRoleWithSAMLResponse;\n(function (AssumeRoleWithSAMLResponse) {\n AssumeRoleWithSAMLResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithSAMLResponse || (AssumeRoleWithSAMLResponse = {}));\nexport var IDPRejectedClaimException;\n(function (IDPRejectedClaimException) {\n IDPRejectedClaimException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(IDPRejectedClaimException || (IDPRejectedClaimException = {}));\nexport var InvalidIdentityTokenException;\n(function (InvalidIdentityTokenException) {\n InvalidIdentityTokenException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(InvalidIdentityTokenException || (InvalidIdentityTokenException = {}));\nexport var AssumeRoleWithWebIdentityRequest;\n(function (AssumeRoleWithWebIdentityRequest) {\n AssumeRoleWithWebIdentityRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithWebIdentityRequest || (AssumeRoleWithWebIdentityRequest = {}));\nexport var AssumeRoleWithWebIdentityResponse;\n(function (AssumeRoleWithWebIdentityResponse) {\n AssumeRoleWithWebIdentityResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AssumeRoleWithWebIdentityResponse || (AssumeRoleWithWebIdentityResponse = {}));\nexport var IDPCommunicationErrorException;\n(function (IDPCommunicationErrorException) {\n IDPCommunicationErrorException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(IDPCommunicationErrorException || (IDPCommunicationErrorException = {}));\nexport var DecodeAuthorizationMessageRequest;\n(function (DecodeAuthorizationMessageRequest) {\n DecodeAuthorizationMessageRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(DecodeAuthorizationMessageRequest || (DecodeAuthorizationMessageRequest = {}));\nexport var DecodeAuthorizationMessageResponse;\n(function (DecodeAuthorizationMessageResponse) {\n DecodeAuthorizationMessageResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(DecodeAuthorizationMessageResponse || (DecodeAuthorizationMessageResponse = {}));\nexport var InvalidAuthorizationMessageException;\n(function (InvalidAuthorizationMessageException) {\n InvalidAuthorizationMessageException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(InvalidAuthorizationMessageException || (InvalidAuthorizationMessageException = {}));\nexport var GetAccessKeyInfoRequest;\n(function (GetAccessKeyInfoRequest) {\n GetAccessKeyInfoRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetAccessKeyInfoRequest || (GetAccessKeyInfoRequest = {}));\nexport var GetAccessKeyInfoResponse;\n(function (GetAccessKeyInfoResponse) {\n GetAccessKeyInfoResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetAccessKeyInfoResponse || (GetAccessKeyInfoResponse = {}));\nexport var GetCallerIdentityRequest;\n(function (GetCallerIdentityRequest) {\n GetCallerIdentityRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetCallerIdentityRequest || (GetCallerIdentityRequest = {}));\nexport var GetCallerIdentityResponse;\n(function (GetCallerIdentityResponse) {\n GetCallerIdentityResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetCallerIdentityResponse || (GetCallerIdentityResponse = {}));\nexport var GetFederationTokenRequest;\n(function (GetFederationTokenRequest) {\n GetFederationTokenRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetFederationTokenRequest || (GetFederationTokenRequest = {}));\nexport var FederatedUser;\n(function (FederatedUser) {\n FederatedUser.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(FederatedUser || (FederatedUser = {}));\nexport var GetFederationTokenResponse;\n(function (GetFederationTokenResponse) {\n GetFederationTokenResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetFederationTokenResponse || (GetFederationTokenResponse = {}));\nexport var GetSessionTokenRequest;\n(function (GetSessionTokenRequest) {\n GetSessionTokenRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetSessionTokenRequest || (GetSessionTokenRequest = {}));\nexport var GetSessionTokenResponse;\n(function (GetSessionTokenResponse) {\n GetSessionTokenResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(GetSessionTokenResponse || (GetSessionTokenResponse = {}));\n","import { __extends, __read, __spreadArray } from \"tslib\";\nexport var StringWrapper = function () {\n var Class = Object.getPrototypeOf(this).constructor;\n var Constructor = Function.bind.apply(String, __spreadArray([null], __read(arguments)));\n var 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);\nvar LazyJsonString = (function (_super) {\n __extends(LazyJsonString, _super);\n function LazyJsonString() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n LazyJsonString.prototype.deserializeJSON = function () {\n return JSON.parse(_super.prototype.toString.call(this));\n };\n LazyJsonString.prototype.toJSON = function () {\n return _super.prototype.toString.call(this);\n };\n LazyJsonString.fromObject = function (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 return LazyJsonString;\n}(StringWrapper));\nexport { LazyJsonString };\n","export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\nexport var booleanSelector = function (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","import { __assign, __awaiter, __generator, __read, __values } from \"tslib\";\nimport { HttpRequest as __HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { expectNonNull as __expectNonNull, expectString as __expectString, extendedEncodeURIComponent as __extendedEncodeURIComponent, getValueFromTextNode as __getValueFromTextNode, parseRfc3339DateTime as __parseRfc3339DateTime, strictParseInt32 as __strictParseInt32, } from \"@aws-sdk/smithy-client\";\nimport { decodeHTML } from \"entities\";\nimport { parse as xmlParse } from \"fast-xml-parser\";\nexport var serializeAws_queryAssumeRoleCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryAssumeRoleRequest(input, context)), { Action: \"AssumeRole\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryAssumeRoleWithSAMLCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryAssumeRoleWithSAMLRequest(input, context)), { Action: \"AssumeRoleWithSAML\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryAssumeRoleWithWebIdentityCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryAssumeRoleWithWebIdentityRequest(input, context)), { Action: \"AssumeRoleWithWebIdentity\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryDecodeAuthorizationMessageCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryDecodeAuthorizationMessageRequest(input, context)), { Action: \"DecodeAuthorizationMessage\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetAccessKeyInfoCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetAccessKeyInfoRequest(input, context)), { Action: \"GetAccessKeyInfo\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetCallerIdentityCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetCallerIdentityRequest(input, context)), { Action: \"GetCallerIdentity\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetFederationTokenCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetFederationTokenRequest(input, context)), { Action: \"GetFederationToken\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var serializeAws_queryGetSessionTokenCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var headers, body;\n return __generator(this, function (_a) {\n headers = {\n \"content-type\": \"application/x-www-form-urlencoded\",\n };\n body = buildFormUrlencodedString(__assign(__assign({}, serializeAws_queryGetSessionTokenRequest(input, context)), { Action: \"GetSessionToken\", Version: \"2011-06-15\" }));\n return [2, buildHttpRpcRequest(context, headers, \"/\", undefined, body)];\n });\n}); };\nexport var deserializeAws_queryAssumeRoleCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryAssumeRoleCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryAssumeRoleResponse(data.AssumeRoleResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryAssumeRoleCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"ExpiredTokenException\": return [3, 2];\n case \"com.amazonaws.sts#ExpiredTokenException\": return [3, 2];\n case \"MalformedPolicyDocumentException\": return [3, 4];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 4];\n case \"PackedPolicyTooLargeException\": return [3, 6];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 6];\n case \"RegionDisabledException\": return [3, 8];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryAssumeRoleWithSAMLCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryAssumeRoleWithSAMLCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryAssumeRoleWithSAMLResponse(data.AssumeRoleWithSAMLResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryAssumeRoleWithSAMLCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, _g, _h, parsedBody, message;\n var _j;\n return __generator(this, function (_k) {\n switch (_k.label) {\n case 0:\n _a = [__assign({}, output)];\n _j = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_j.body = _k.sent(), _j)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"ExpiredTokenException\": return [3, 2];\n case \"com.amazonaws.sts#ExpiredTokenException\": return [3, 2];\n case \"IDPRejectedClaimException\": return [3, 4];\n case \"com.amazonaws.sts#IDPRejectedClaimException\": return [3, 4];\n case \"InvalidIdentityTokenException\": return [3, 6];\n case \"com.amazonaws.sts#InvalidIdentityTokenException\": return [3, 6];\n case \"MalformedPolicyDocumentException\": return [3, 8];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 8];\n case \"PackedPolicyTooLargeException\": return [3, 10];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 10];\n case \"RegionDisabledException\": return [3, 12];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 12];\n }\n return [3, 14];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 8:\n _f = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 10:\n _g = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 11:\n response = __assign.apply(void 0, [__assign.apply(void 0, _g.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 12:\n _h = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 13:\n response = __assign.apply(void 0, [__assign.apply(void 0, _h.concat([(_k.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 15];\n case 14:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _k.label = 15;\n case 15:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryAssumeRoleWithWebIdentityCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryAssumeRoleWithWebIdentityCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryAssumeRoleWithWebIdentityResponse(data.AssumeRoleWithWebIdentityResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryAssumeRoleWithWebIdentityCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, _g, _h, _j, parsedBody, message;\n var _k;\n return __generator(this, function (_l) {\n switch (_l.label) {\n case 0:\n _a = [__assign({}, output)];\n _k = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_k.body = _l.sent(), _k)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"ExpiredTokenException\": return [3, 2];\n case \"com.amazonaws.sts#ExpiredTokenException\": return [3, 2];\n case \"IDPCommunicationErrorException\": return [3, 4];\n case \"com.amazonaws.sts#IDPCommunicationErrorException\": return [3, 4];\n case \"IDPRejectedClaimException\": return [3, 6];\n case \"com.amazonaws.sts#IDPRejectedClaimException\": return [3, 6];\n case \"InvalidIdentityTokenException\": return [3, 8];\n case \"com.amazonaws.sts#InvalidIdentityTokenException\": return [3, 8];\n case \"MalformedPolicyDocumentException\": return [3, 10];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 10];\n case \"PackedPolicyTooLargeException\": return [3, 12];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 12];\n case \"RegionDisabledException\": return [3, 14];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 14];\n }\n return [3, 16];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryExpiredTokenExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryIDPCommunicationErrorExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryIDPRejectedClaimExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 8:\n _f = [{}];\n return [4, deserializeAws_queryInvalidIdentityTokenExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 10:\n _g = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 11:\n response = __assign.apply(void 0, [__assign.apply(void 0, _g.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 12:\n _h = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 13:\n response = __assign.apply(void 0, [__assign.apply(void 0, _h.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 14:\n _j = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 15:\n response = __assign.apply(void 0, [__assign.apply(void 0, _j.concat([(_l.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 17];\n case 16:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _l.label = 17;\n case 17:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryDecodeAuthorizationMessageCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryDecodeAuthorizationMessageCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryDecodeAuthorizationMessageResponse(data.DecodeAuthorizationMessageResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryDecodeAuthorizationMessageCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, parsedBody, message;\n var _d;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n _a = [__assign({}, output)];\n _d = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_d.body = _e.sent(), _d)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidAuthorizationMessageException\": return [3, 2];\n case \"com.amazonaws.sts#InvalidAuthorizationMessageException\": return [3, 2];\n }\n return [3, 4];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryInvalidAuthorizationMessageExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_e.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 5];\n case 4:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _e.label = 5;\n case 5:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetAccessKeyInfoCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetAccessKeyInfoCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetAccessKeyInfoResponse(data.GetAccessKeyInfoResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetAccessKeyInfoCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, parsedBody, message;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = [__assign({}, output)];\n _b = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_b.body = _c.sent(), _b)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n default:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n }\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetCallerIdentityCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetCallerIdentityCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetCallerIdentityResponse(data.GetCallerIdentityResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetCallerIdentityCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, parsedBody, message;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = [__assign({}, output)];\n _b = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_b.body = _c.sent(), _b)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n switch (errorCode) {\n default:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n }\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetFederationTokenCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetFederationTokenCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetFederationTokenResponse(data.GetFederationTokenResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetFederationTokenCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, parsedBody, message;\n var _f;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n _a = [__assign({}, output)];\n _f = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_f.body = _g.sent(), _f)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"MalformedPolicyDocumentException\": return [3, 2];\n case \"com.amazonaws.sts#MalformedPolicyDocumentException\": return [3, 2];\n case \"PackedPolicyTooLargeException\": return [3, 4];\n case \"com.amazonaws.sts#PackedPolicyTooLargeException\": return [3, 4];\n case \"RegionDisabledException\": return [3, 6];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 6];\n }\n return [3, 8];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryMalformedPolicyDocumentExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 4:\n _d = [{}];\n return [4, deserializeAws_queryPackedPolicyTooLargeExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 6:\n _e = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 8:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _g.label = 9;\n case 9:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_queryGetSessionTokenCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var data, contents, response;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode >= 300) {\n return [2, deserializeAws_queryGetSessionTokenCommandError(output, context)];\n }\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.sent();\n contents = {};\n contents = deserializeAws_queryGetSessionTokenResponse(data.GetSessionTokenResult, context);\n response = __assign({ $metadata: deserializeMetadata(output) }, contents);\n return [2, Promise.resolve(response)];\n }\n });\n}); };\nvar deserializeAws_queryGetSessionTokenCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, parsedBody, message;\n var _d;\n return __generator(this, function (_e) {\n switch (_e.label) {\n case 0:\n _a = [__assign({}, output)];\n _d = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_d.body = _e.sent(), _d)]));\n errorCode = \"UnknownError\";\n errorCode = loadQueryErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"RegionDisabledException\": return [3, 2];\n case \"com.amazonaws.sts#RegionDisabledException\": return [3, 2];\n }\n return [3, 4];\n case 2:\n _c = [{}];\n return [4, deserializeAws_queryRegionDisabledExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_e.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 5];\n case 4:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.Error.code || parsedBody.Error.Code || errorCode;\n response = __assign(__assign({}, parsedBody.Error), { name: \"\" + errorCode, message: parsedBody.Error.message || parsedBody.Error.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _e.label = 5;\n case 5:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nvar deserializeAws_queryExpiredTokenExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryExpiredTokenException(body.Error, context);\n contents = __assign({ name: \"ExpiredTokenException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryIDPCommunicationErrorExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryIDPCommunicationErrorException(body.Error, context);\n contents = __assign({ name: \"IDPCommunicationErrorException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryIDPRejectedClaimExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryIDPRejectedClaimException(body.Error, context);\n contents = __assign({ name: \"IDPRejectedClaimException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryInvalidAuthorizationMessageExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryInvalidAuthorizationMessageException(body.Error, context);\n contents = __assign({ name: \"InvalidAuthorizationMessageException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryInvalidIdentityTokenExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryInvalidIdentityTokenException(body.Error, context);\n contents = __assign({ name: \"InvalidIdentityTokenException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryMalformedPolicyDocumentExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryMalformedPolicyDocumentException(body.Error, context);\n contents = __assign({ name: \"MalformedPolicyDocumentException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryPackedPolicyTooLargeExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryPackedPolicyTooLargeException(body.Error, context);\n contents = __assign({ name: \"PackedPolicyTooLargeException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar deserializeAws_queryRegionDisabledExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var body, deserialized, contents;\n return __generator(this, function (_a) {\n body = parsedOutput.body;\n deserialized = deserializeAws_queryRegionDisabledException(body.Error, context);\n contents = __assign({ name: \"RegionDisabledException\", $fault: \"client\", $metadata: deserializeMetadata(parsedOutput) }, deserialized);\n return [2, contents];\n });\n}); };\nvar serializeAws_queryAssumeRoleRequest = function (input, context) {\n var entries = {};\n if (input.RoleArn !== undefined && input.RoleArn !== null) {\n entries[\"RoleArn\"] = input.RoleArn;\n }\n if (input.RoleSessionName !== undefined && input.RoleSessionName !== null) {\n entries[\"RoleSessionName\"] = input.RoleSessionName;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n if (input.Tags !== undefined && input.Tags !== null) {\n var memberEntries = serializeAws_querytagListType(input.Tags, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"Tags.\" + key;\n entries[loc] = value;\n });\n }\n if (input.TransitiveTagKeys !== undefined && input.TransitiveTagKeys !== null) {\n var memberEntries = serializeAws_querytagKeyListType(input.TransitiveTagKeys, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"TransitiveTagKeys.\" + key;\n entries[loc] = value;\n });\n }\n if (input.ExternalId !== undefined && input.ExternalId !== null) {\n entries[\"ExternalId\"] = input.ExternalId;\n }\n if (input.SerialNumber !== undefined && input.SerialNumber !== null) {\n entries[\"SerialNumber\"] = input.SerialNumber;\n }\n if (input.TokenCode !== undefined && input.TokenCode !== null) {\n entries[\"TokenCode\"] = input.TokenCode;\n }\n if (input.SourceIdentity !== undefined && input.SourceIdentity !== null) {\n entries[\"SourceIdentity\"] = input.SourceIdentity;\n }\n return entries;\n};\nvar serializeAws_queryAssumeRoleWithSAMLRequest = function (input, context) {\n var entries = {};\n if (input.RoleArn !== undefined && input.RoleArn !== null) {\n entries[\"RoleArn\"] = input.RoleArn;\n }\n if (input.PrincipalArn !== undefined && input.PrincipalArn !== null) {\n entries[\"PrincipalArn\"] = input.PrincipalArn;\n }\n if (input.SAMLAssertion !== undefined && input.SAMLAssertion !== null) {\n entries[\"SAMLAssertion\"] = input.SAMLAssertion;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n return entries;\n};\nvar serializeAws_queryAssumeRoleWithWebIdentityRequest = function (input, context) {\n var entries = {};\n if (input.RoleArn !== undefined && input.RoleArn !== null) {\n entries[\"RoleArn\"] = input.RoleArn;\n }\n if (input.RoleSessionName !== undefined && input.RoleSessionName !== null) {\n entries[\"RoleSessionName\"] = input.RoleSessionName;\n }\n if (input.WebIdentityToken !== undefined && input.WebIdentityToken !== null) {\n entries[\"WebIdentityToken\"] = input.WebIdentityToken;\n }\n if (input.ProviderId !== undefined && input.ProviderId !== null) {\n entries[\"ProviderId\"] = input.ProviderId;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n return entries;\n};\nvar serializeAws_queryDecodeAuthorizationMessageRequest = function (input, context) {\n var entries = {};\n if (input.EncodedMessage !== undefined && input.EncodedMessage !== null) {\n entries[\"EncodedMessage\"] = input.EncodedMessage;\n }\n return entries;\n};\nvar serializeAws_queryGetAccessKeyInfoRequest = function (input, context) {\n var entries = {};\n if (input.AccessKeyId !== undefined && input.AccessKeyId !== null) {\n entries[\"AccessKeyId\"] = input.AccessKeyId;\n }\n return entries;\n};\nvar serializeAws_queryGetCallerIdentityRequest = function (input, context) {\n var entries = {};\n return entries;\n};\nvar serializeAws_queryGetFederationTokenRequest = function (input, context) {\n var entries = {};\n if (input.Name !== undefined && input.Name !== null) {\n entries[\"Name\"] = input.Name;\n }\n if (input.Policy !== undefined && input.Policy !== null) {\n entries[\"Policy\"] = input.Policy;\n }\n if (input.PolicyArns !== undefined && input.PolicyArns !== null) {\n var memberEntries = serializeAws_querypolicyDescriptorListType(input.PolicyArns, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"PolicyArns.\" + key;\n entries[loc] = value;\n });\n }\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n if (input.Tags !== undefined && input.Tags !== null) {\n var memberEntries = serializeAws_querytagListType(input.Tags, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n var loc = \"Tags.\" + key;\n entries[loc] = value;\n });\n }\n return entries;\n};\nvar serializeAws_queryGetSessionTokenRequest = function (input, context) {\n var entries = {};\n if (input.DurationSeconds !== undefined && input.DurationSeconds !== null) {\n entries[\"DurationSeconds\"] = input.DurationSeconds;\n }\n if (input.SerialNumber !== undefined && input.SerialNumber !== null) {\n entries[\"SerialNumber\"] = input.SerialNumber;\n }\n if (input.TokenCode !== undefined && input.TokenCode !== null) {\n entries[\"TokenCode\"] = input.TokenCode;\n }\n return entries;\n};\nvar serializeAws_querypolicyDescriptorListType = function (input, context) {\n var e_1, _a;\n var entries = {};\n var counter = 1;\n try {\n for (var input_1 = __values(input), input_1_1 = input_1.next(); !input_1_1.done; input_1_1 = input_1.next()) {\n var entry = input_1_1.value;\n if (entry === null) {\n continue;\n }\n var memberEntries = serializeAws_queryPolicyDescriptorType(entry, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n entries[\"member.\" + counter + \".\" + key] = value;\n });\n counter++;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (input_1_1 && !input_1_1.done && (_a = input_1.return)) _a.call(input_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return entries;\n};\nvar serializeAws_queryPolicyDescriptorType = function (input, context) {\n var entries = {};\n if (input.arn !== undefined && input.arn !== null) {\n entries[\"arn\"] = input.arn;\n }\n return entries;\n};\nvar serializeAws_queryTag = function (input, context) {\n var entries = {};\n if (input.Key !== undefined && input.Key !== null) {\n entries[\"Key\"] = input.Key;\n }\n if (input.Value !== undefined && input.Value !== null) {\n entries[\"Value\"] = input.Value;\n }\n return entries;\n};\nvar serializeAws_querytagKeyListType = function (input, context) {\n var e_2, _a;\n var entries = {};\n var counter = 1;\n try {\n for (var input_2 = __values(input), input_2_1 = input_2.next(); !input_2_1.done; input_2_1 = input_2.next()) {\n var entry = input_2_1.value;\n if (entry === null) {\n continue;\n }\n entries[\"member.\" + counter] = entry;\n counter++;\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (input_2_1 && !input_2_1.done && (_a = input_2.return)) _a.call(input_2);\n }\n finally { if (e_2) throw e_2.error; }\n }\n return entries;\n};\nvar serializeAws_querytagListType = function (input, context) {\n var e_3, _a;\n var entries = {};\n var counter = 1;\n try {\n for (var input_3 = __values(input), input_3_1 = input_3.next(); !input_3_1.done; input_3_1 = input_3.next()) {\n var entry = input_3_1.value;\n if (entry === null) {\n continue;\n }\n var memberEntries = serializeAws_queryTag(entry, context);\n Object.entries(memberEntries).forEach(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n entries[\"member.\" + counter + \".\" + key] = value;\n });\n counter++;\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (input_3_1 && !input_3_1.done && (_a = input_3.return)) _a.call(input_3);\n }\n finally { if (e_3) throw e_3.error; }\n }\n return entries;\n};\nvar deserializeAws_queryAssumedRoleUser = function (output, context) {\n var contents = {\n AssumedRoleId: undefined,\n Arn: undefined,\n };\n if (output[\"AssumedRoleId\"] !== undefined) {\n contents.AssumedRoleId = __expectString(output[\"AssumedRoleId\"]);\n }\n if (output[\"Arn\"] !== undefined) {\n contents.Arn = __expectString(output[\"Arn\"]);\n }\n return contents;\n};\nvar deserializeAws_queryAssumeRoleResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n AssumedRoleUser: undefined,\n PackedPolicySize: undefined,\n SourceIdentity: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"AssumedRoleUser\"] !== undefined) {\n contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output[\"AssumedRoleUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n if (output[\"SourceIdentity\"] !== undefined) {\n contents.SourceIdentity = __expectString(output[\"SourceIdentity\"]);\n }\n return contents;\n};\nvar deserializeAws_queryAssumeRoleWithSAMLResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n AssumedRoleUser: undefined,\n PackedPolicySize: undefined,\n Subject: undefined,\n SubjectType: undefined,\n Issuer: undefined,\n Audience: undefined,\n NameQualifier: undefined,\n SourceIdentity: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"AssumedRoleUser\"] !== undefined) {\n contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output[\"AssumedRoleUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n if (output[\"Subject\"] !== undefined) {\n contents.Subject = __expectString(output[\"Subject\"]);\n }\n if (output[\"SubjectType\"] !== undefined) {\n contents.SubjectType = __expectString(output[\"SubjectType\"]);\n }\n if (output[\"Issuer\"] !== undefined) {\n contents.Issuer = __expectString(output[\"Issuer\"]);\n }\n if (output[\"Audience\"] !== undefined) {\n contents.Audience = __expectString(output[\"Audience\"]);\n }\n if (output[\"NameQualifier\"] !== undefined) {\n contents.NameQualifier = __expectString(output[\"NameQualifier\"]);\n }\n if (output[\"SourceIdentity\"] !== undefined) {\n contents.SourceIdentity = __expectString(output[\"SourceIdentity\"]);\n }\n return contents;\n};\nvar deserializeAws_queryAssumeRoleWithWebIdentityResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n SubjectFromWebIdentityToken: undefined,\n AssumedRoleUser: undefined,\n PackedPolicySize: undefined,\n Provider: undefined,\n Audience: undefined,\n SourceIdentity: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"SubjectFromWebIdentityToken\"] !== undefined) {\n contents.SubjectFromWebIdentityToken = __expectString(output[\"SubjectFromWebIdentityToken\"]);\n }\n if (output[\"AssumedRoleUser\"] !== undefined) {\n contents.AssumedRoleUser = deserializeAws_queryAssumedRoleUser(output[\"AssumedRoleUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n if (output[\"Provider\"] !== undefined) {\n contents.Provider = __expectString(output[\"Provider\"]);\n }\n if (output[\"Audience\"] !== undefined) {\n contents.Audience = __expectString(output[\"Audience\"]);\n }\n if (output[\"SourceIdentity\"] !== undefined) {\n contents.SourceIdentity = __expectString(output[\"SourceIdentity\"]);\n }\n return contents;\n};\nvar deserializeAws_queryCredentials = function (output, context) {\n var contents = {\n AccessKeyId: undefined,\n SecretAccessKey: undefined,\n SessionToken: undefined,\n Expiration: undefined,\n };\n if (output[\"AccessKeyId\"] !== undefined) {\n contents.AccessKeyId = __expectString(output[\"AccessKeyId\"]);\n }\n if (output[\"SecretAccessKey\"] !== undefined) {\n contents.SecretAccessKey = __expectString(output[\"SecretAccessKey\"]);\n }\n if (output[\"SessionToken\"] !== undefined) {\n contents.SessionToken = __expectString(output[\"SessionToken\"]);\n }\n if (output[\"Expiration\"] !== undefined) {\n contents.Expiration = __expectNonNull(__parseRfc3339DateTime(output[\"Expiration\"]));\n }\n return contents;\n};\nvar deserializeAws_queryDecodeAuthorizationMessageResponse = function (output, context) {\n var contents = {\n DecodedMessage: undefined,\n };\n if (output[\"DecodedMessage\"] !== undefined) {\n contents.DecodedMessage = __expectString(output[\"DecodedMessage\"]);\n }\n return contents;\n};\nvar deserializeAws_queryExpiredTokenException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryFederatedUser = function (output, context) {\n var contents = {\n FederatedUserId: undefined,\n Arn: undefined,\n };\n if (output[\"FederatedUserId\"] !== undefined) {\n contents.FederatedUserId = __expectString(output[\"FederatedUserId\"]);\n }\n if (output[\"Arn\"] !== undefined) {\n contents.Arn = __expectString(output[\"Arn\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetAccessKeyInfoResponse = function (output, context) {\n var contents = {\n Account: undefined,\n };\n if (output[\"Account\"] !== undefined) {\n contents.Account = __expectString(output[\"Account\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetCallerIdentityResponse = function (output, context) {\n var contents = {\n UserId: undefined,\n Account: undefined,\n Arn: undefined,\n };\n if (output[\"UserId\"] !== undefined) {\n contents.UserId = __expectString(output[\"UserId\"]);\n }\n if (output[\"Account\"] !== undefined) {\n contents.Account = __expectString(output[\"Account\"]);\n }\n if (output[\"Arn\"] !== undefined) {\n contents.Arn = __expectString(output[\"Arn\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetFederationTokenResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n FederatedUser: undefined,\n PackedPolicySize: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n if (output[\"FederatedUser\"] !== undefined) {\n contents.FederatedUser = deserializeAws_queryFederatedUser(output[\"FederatedUser\"], context);\n }\n if (output[\"PackedPolicySize\"] !== undefined) {\n contents.PackedPolicySize = __strictParseInt32(output[\"PackedPolicySize\"]);\n }\n return contents;\n};\nvar deserializeAws_queryGetSessionTokenResponse = function (output, context) {\n var contents = {\n Credentials: undefined,\n };\n if (output[\"Credentials\"] !== undefined) {\n contents.Credentials = deserializeAws_queryCredentials(output[\"Credentials\"], context);\n }\n return contents;\n};\nvar deserializeAws_queryIDPCommunicationErrorException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryIDPRejectedClaimException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryInvalidAuthorizationMessageException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryInvalidIdentityTokenException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryMalformedPolicyDocumentException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryPackedPolicyTooLargeException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeAws_queryRegionDisabledException = function (output, context) {\n var contents = {\n message: undefined,\n };\n if (output[\"message\"] !== undefined) {\n contents.message = __expectString(output[\"message\"]);\n }\n return contents;\n};\nvar deserializeMetadata = function (output) {\n var _a;\n return ({\n httpStatusCode: output.statusCode,\n requestId: (_a = output.headers[\"x-amzn-requestid\"]) !== null && _a !== void 0 ? _a : output.headers[\"x-amzn-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n });\n};\nvar collectBody = function (streamBody, context) {\n if (streamBody === void 0) { streamBody = new Uint8Array(); }\n if (streamBody instanceof Uint8Array) {\n return Promise.resolve(streamBody);\n }\n return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());\n};\nvar collectBodyString = function (streamBody, context) {\n return collectBody(streamBody, context).then(function (body) { return context.utf8Encoder(body); });\n};\nvar buildHttpRpcRequest = function (context, headers, path, resolvedHostname, body) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, contents;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n contents = {\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"POST\",\n path: basePath.endsWith(\"/\") ? basePath.slice(0, -1) + path : basePath + path,\n headers: headers,\n };\n if (resolvedHostname !== undefined) {\n contents.hostname = resolvedHostname;\n }\n if (body !== undefined) {\n contents.body = body;\n }\n return [2, new __HttpRequest(contents)];\n }\n });\n}); };\nvar parseBody = function (streamBody, context) {\n return collectBodyString(streamBody, context).then(function (encoded) {\n if (encoded.length) {\n var parsedObj = xmlParse(encoded, {\n attributeNamePrefix: \"\",\n ignoreAttributes: false,\n parseNodeValue: false,\n trimValues: false,\n tagValueProcessor: function (val) { return (val.trim() === \"\" && val.includes(\"\\n\") ? \"\" : decodeHTML(val)); },\n });\n var textNodeName = \"#text\";\n var key = Object.keys(parsedObj)[0];\n var 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 });\n};\nvar buildFormUrlencodedString = function (formEntries) {\n return Object.entries(formEntries)\n .map(function (_a) {\n var _b = __read(_a, 2), key = _b[0], value = _b[1];\n return __extendedEncodeURIComponent(key) + \"=\" + __extendedEncodeURIComponent(value);\n })\n .join(\"&\");\n};\nvar loadQueryErrorCode = function (output, data) {\n if (data.Error.Code !== undefined) {\n return data.Error.Code;\n }\n if (output.statusCode == 404) {\n return \"NotFound\";\n }\n return \"\";\n};\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { AssumeRoleRequest, AssumeRoleResponse } from \"../models/models_0\";\nimport { deserializeAws_queryAssumeRoleCommand, serializeAws_queryAssumeRoleCommand } from \"../protocols/Aws_query\";\nvar AssumeRoleCommand = (function (_super) {\n __extends(AssumeRoleCommand, _super);\n function AssumeRoleCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n AssumeRoleCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"AssumeRoleCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: AssumeRoleRequest.filterSensitiveLog,\n outputFilterSensitiveLog: AssumeRoleResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n AssumeRoleCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryAssumeRoleCommand(input, context);\n };\n AssumeRoleCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryAssumeRoleCommand(output, context);\n };\n return AssumeRoleCommand;\n}($Command));\nexport { AssumeRoleCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { AssumeRoleWithSAMLRequest, AssumeRoleWithSAMLResponse } from \"../models/models_0\";\nimport { deserializeAws_queryAssumeRoleWithSAMLCommand, serializeAws_queryAssumeRoleWithSAMLCommand, } from \"../protocols/Aws_query\";\nvar AssumeRoleWithSAMLCommand = (function (_super) {\n __extends(AssumeRoleWithSAMLCommand, _super);\n function AssumeRoleWithSAMLCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n AssumeRoleWithSAMLCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"AssumeRoleWithSAMLCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: AssumeRoleWithSAMLRequest.filterSensitiveLog,\n outputFilterSensitiveLog: AssumeRoleWithSAMLResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n AssumeRoleWithSAMLCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryAssumeRoleWithSAMLCommand(input, context);\n };\n AssumeRoleWithSAMLCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryAssumeRoleWithSAMLCommand(output, context);\n };\n return AssumeRoleWithSAMLCommand;\n}($Command));\nexport { AssumeRoleWithSAMLCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { AssumeRoleWithWebIdentityRequest, AssumeRoleWithWebIdentityResponse } from \"../models/models_0\";\nimport { deserializeAws_queryAssumeRoleWithWebIdentityCommand, serializeAws_queryAssumeRoleWithWebIdentityCommand, } from \"../protocols/Aws_query\";\nvar AssumeRoleWithWebIdentityCommand = (function (_super) {\n __extends(AssumeRoleWithWebIdentityCommand, _super);\n function AssumeRoleWithWebIdentityCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n AssumeRoleWithWebIdentityCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"AssumeRoleWithWebIdentityCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: AssumeRoleWithWebIdentityRequest.filterSensitiveLog,\n outputFilterSensitiveLog: AssumeRoleWithWebIdentityResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n AssumeRoleWithWebIdentityCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryAssumeRoleWithWebIdentityCommand(input, context);\n };\n AssumeRoleWithWebIdentityCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryAssumeRoleWithWebIdentityCommand(output, context);\n };\n return AssumeRoleWithWebIdentityCommand;\n}($Command));\nexport { AssumeRoleWithWebIdentityCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { DecodeAuthorizationMessageRequest, DecodeAuthorizationMessageResponse } from \"../models/models_0\";\nimport { deserializeAws_queryDecodeAuthorizationMessageCommand, serializeAws_queryDecodeAuthorizationMessageCommand, } from \"../protocols/Aws_query\";\nvar DecodeAuthorizationMessageCommand = (function (_super) {\n __extends(DecodeAuthorizationMessageCommand, _super);\n function DecodeAuthorizationMessageCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n DecodeAuthorizationMessageCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"DecodeAuthorizationMessageCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: DecodeAuthorizationMessageRequest.filterSensitiveLog,\n outputFilterSensitiveLog: DecodeAuthorizationMessageResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n DecodeAuthorizationMessageCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryDecodeAuthorizationMessageCommand(input, context);\n };\n DecodeAuthorizationMessageCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryDecodeAuthorizationMessageCommand(output, context);\n };\n return DecodeAuthorizationMessageCommand;\n}($Command));\nexport { DecodeAuthorizationMessageCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetAccessKeyInfoRequest, GetAccessKeyInfoResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetAccessKeyInfoCommand, serializeAws_queryGetAccessKeyInfoCommand, } from \"../protocols/Aws_query\";\nvar GetAccessKeyInfoCommand = (function (_super) {\n __extends(GetAccessKeyInfoCommand, _super);\n function GetAccessKeyInfoCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetAccessKeyInfoCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetAccessKeyInfoCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetAccessKeyInfoRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetAccessKeyInfoResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetAccessKeyInfoCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetAccessKeyInfoCommand(input, context);\n };\n GetAccessKeyInfoCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetAccessKeyInfoCommand(output, context);\n };\n return GetAccessKeyInfoCommand;\n}($Command));\nexport { GetAccessKeyInfoCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetCallerIdentityRequest, GetCallerIdentityResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetCallerIdentityCommand, serializeAws_queryGetCallerIdentityCommand, } from \"../protocols/Aws_query\";\nvar GetCallerIdentityCommand = (function (_super) {\n __extends(GetCallerIdentityCommand, _super);\n function GetCallerIdentityCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetCallerIdentityCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetCallerIdentityCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetCallerIdentityRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetCallerIdentityResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetCallerIdentityCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetCallerIdentityCommand(input, context);\n };\n GetCallerIdentityCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetCallerIdentityCommand(output, context);\n };\n return GetCallerIdentityCommand;\n}($Command));\nexport { GetCallerIdentityCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetFederationTokenRequest, GetFederationTokenResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetFederationTokenCommand, serializeAws_queryGetFederationTokenCommand, } from \"../protocols/Aws_query\";\nvar GetFederationTokenCommand = (function (_super) {\n __extends(GetFederationTokenCommand, _super);\n function GetFederationTokenCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetFederationTokenCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetFederationTokenCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetFederationTokenRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetFederationTokenResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetFederationTokenCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetFederationTokenCommand(input, context);\n };\n GetFederationTokenCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetFederationTokenCommand(output, context);\n };\n return GetFederationTokenCommand;\n}($Command));\nexport { GetFederationTokenCommand };\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { getAwsAuthPlugin } from \"@aws-sdk/middleware-signing\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetSessionTokenRequest, GetSessionTokenResponse } from \"../models/models_0\";\nimport { deserializeAws_queryGetSessionTokenCommand, serializeAws_queryGetSessionTokenCommand, } from \"../protocols/Aws_query\";\nvar GetSessionTokenCommand = (function (_super) {\n __extends(GetSessionTokenCommand, _super);\n function GetSessionTokenCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetSessionTokenCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n this.middlewareStack.use(getAwsAuthPlugin(configuration));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"STSClient\";\n var commandName = \"GetSessionTokenCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetSessionTokenRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetSessionTokenResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetSessionTokenCommand.prototype.serialize = function (input, context) {\n return serializeAws_queryGetSessionTokenCommand(input, context);\n };\n GetSessionTokenCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_queryGetSessionTokenCommand(output, context);\n };\n return GetSessionTokenCommand;\n}($Command));\nexport { GetSessionTokenCommand };\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 var DEFAULT_MAX_ATTEMPTS = 3;\nexport var DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n","import { booleanSelector, SelectorType } from \"@aws-sdk/util-config-provider\";\nexport var ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport var CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport var DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport var NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) {\n return booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV);\n },\n configFileSelector: function (profile) { return booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG); },\n default: false,\n};\n","import { booleanSelector, SelectorType } from \"@aws-sdk/util-config-provider\";\nexport var ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport var CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport var DEFAULT_USE_FIPS_ENDPOINT = false;\nexport var NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) {\n return booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV);\n },\n configFileSelector: function (profile) { return booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG); },\n default: false,\n};\n","export var normalizeEndpoint = function (_a) {\n var endpoint = _a.endpoint, urlParser = _a.urlParser;\n if (typeof endpoint === \"string\") {\n var promisified_1 = Promise.resolve(urlParser(endpoint));\n return function () { return promisified_1; };\n }\n else if (typeof endpoint === \"object\") {\n var promisified_2 = Promise.resolve(endpoint);\n return function () { return promisified_2; };\n }\n return endpoint;\n};\n","import { __assign } from \"tslib\";\nimport { getEndpointFromRegion } from \"./utils/getEndpointFromRegion\";\nimport { normalizeBoolean } from \"./utils/normalizeBoolean\";\nimport { normalizeEndpoint } from \"./utils/normalizeEndpoint\";\nexport var resolveEndpointsConfig = function (input) {\n var _a;\n var useDualstackEndpoint = normalizeBoolean(input.useDualstackEndpoint);\n var endpoint = input.endpoint, useFipsEndpoint = input.useFipsEndpoint;\n return __assign(__assign({}, input), { tls: (_a = input.tls) !== null && _a !== void 0 ? _a : true, endpoint: endpoint\n ? normalizeEndpoint(__assign(__assign({}, input), { endpoint: endpoint }))\n : function () { return getEndpointFromRegion(__assign(__assign({}, input), { useDualstackEndpoint: useDualstackEndpoint, useFipsEndpoint: useFipsEndpoint })); }, isCustomEndpoint: endpoint ? true : false, useDualstackEndpoint: useDualstackEndpoint });\n};\n","export var normalizeBoolean = function (value) {\n if (typeof value === \"boolean\") {\n var promisified_1 = Promise.resolve(value);\n return function () { return promisified_1; };\n }\n return value;\n};\n","import { __awaiter, __generator } from \"tslib\";\nexport var getEndpointFromRegion = function (input) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, tls, region, dnsHostRegex, useDualstackEndpoint, useFipsEndpoint, hostname;\n var _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = input.tls, tls = _a === void 0 ? true : _a;\n return [4, input.region()];\n case 1:\n region = _c.sent();\n 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 return [4, input.useDualstackEndpoint()];\n case 2:\n useDualstackEndpoint = _c.sent();\n return [4, input.useFipsEndpoint()];\n case 3:\n useFipsEndpoint = _c.sent();\n return [4, input.regionInfoProvider(region, { useDualstackEndpoint: useDualstackEndpoint, useFipsEndpoint: useFipsEndpoint })];\n case 4:\n hostname = ((_b = (_c.sent())) !== null && _b !== void 0 ? _b : {}).hostname;\n if (!hostname) {\n throw new Error(\"Cannot resolve hostname from client config\");\n }\n return [2, input.urlParser((tls ? \"https:\" : \"http:\") + \"//\" + hostname)];\n }\n });\n}); };\n","export var REGION_ENV_NAME = \"AWS_REGION\";\nexport var REGION_INI_NAME = \"region\";\nexport var NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[REGION_ENV_NAME]; },\n configFileSelector: function (profile) { return profile[REGION_INI_NAME]; },\n default: function () {\n throw new Error(\"Region is missing\");\n },\n};\nexport var NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n","export var isFipsRegion = function (region) {\n return typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n};\n","import { isFipsRegion } from \"./isFipsRegion\";\nexport var getRealRegion = function (region) {\n return isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport var resolveRegionConfig = function (input) {\n var region = input.region, useFipsEndpoint = input.useFipsEndpoint;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return __assign(__assign({}, input), { region: function () { return __awaiter(void 0, void 0, void 0, function () {\n var providedRegion;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (typeof region === \"string\") {\n return [2, getRealRegion(region)];\n }\n return [4, region()];\n case 1:\n providedRegion = _a.sent();\n return [2, getRealRegion(providedRegion)];\n }\n });\n }); }, useFipsEndpoint: function () { return __awaiter(void 0, void 0, void 0, function () {\n var providedRegion, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!(typeof region === \"string\")) return [3, 1];\n _a = region;\n return [3, 3];\n case 1: return [4, region()];\n case 2:\n _a = _b.sent();\n _b.label = 3;\n case 3:\n providedRegion = _a;\n if (isFipsRegion(providedRegion)) {\n return [2, true];\n }\n return [2, typeof useFipsEndpoint === \"boolean\" ? Promise.resolve(useFipsEndpoint) : useFipsEndpoint()];\n }\n });\n }); } });\n};\n","export var getHostnameFromVariants = function (variants, _a) {\n var _b;\n if (variants === void 0) { variants = []; }\n var useFipsEndpoint = _a.useFipsEndpoint, useDualstackEndpoint = _a.useDualstackEndpoint;\n return (_b = variants.find(function (_a) {\n var tags = _a.tags;\n return useFipsEndpoint === tags.includes(\"fips\") && useDualstackEndpoint === tags.includes(\"dualstack\");\n })) === null || _b === void 0 ? void 0 : _b.hostname;\n};\n","import { __assign } from \"tslib\";\nimport { getHostnameFromVariants } from \"./getHostnameFromVariants\";\nimport { getResolvedHostname } from \"./getResolvedHostname\";\nimport { getResolvedPartition } from \"./getResolvedPartition\";\nimport { getResolvedSigningRegion } from \"./getResolvedSigningRegion\";\nexport var getRegionInfo = function (region, _a) {\n var _b, _c, _d, _e, _f, _g;\n var _h = _a.useFipsEndpoint, useFipsEndpoint = _h === void 0 ? false : _h, _j = _a.useDualstackEndpoint, useDualstackEndpoint = _j === void 0 ? false : _j, signingService = _a.signingService, regionHash = _a.regionHash, partitionHash = _a.partitionHash;\n var partition = getResolvedPartition(region, { partitionHash: partitionHash });\n var resolvedRegion = region in regionHash ? region : (_c = (_b = partitionHash[partition]) === null || _b === void 0 ? void 0 : _b.endpoint) !== null && _c !== void 0 ? _c : region;\n var hostnameOptions = { useFipsEndpoint: useFipsEndpoint, useDualstackEndpoint: useDualstackEndpoint };\n var regionHostname = getHostnameFromVariants((_d = regionHash[resolvedRegion]) === null || _d === void 0 ? void 0 : _d.variants, hostnameOptions);\n var partitionHostname = getHostnameFromVariants((_e = partitionHash[partition]) === null || _e === void 0 ? void 0 : _e.variants, hostnameOptions);\n var hostname = getResolvedHostname(resolvedRegion, { regionHostname: regionHostname, partitionHostname: partitionHostname });\n if (hostname === undefined) {\n throw new Error(\"Endpoint resolution failed for: \" + { resolvedRegion: resolvedRegion, useFipsEndpoint: useFipsEndpoint, useDualstackEndpoint: useDualstackEndpoint });\n }\n var signingRegion = getResolvedSigningRegion(hostname, {\n signingRegion: (_f = regionHash[resolvedRegion]) === null || _f === void 0 ? void 0 : _f.signingRegion,\n regionRegex: partitionHash[partition].regionRegex,\n useFipsEndpoint: useFipsEndpoint,\n });\n return __assign(__assign({ partition: partition, signingService: signingService, hostname: hostname }, (signingRegion && { signingRegion: signingRegion })), (((_g = regionHash[resolvedRegion]) === null || _g === void 0 ? void 0 : _g.signingService) && {\n signingService: regionHash[resolvedRegion].signingService,\n }));\n};\n","export var getResolvedPartition = function (region, _a) {\n var _b;\n var partitionHash = _a.partitionHash;\n return (_b = Object.keys(partitionHash || {}).find(function (key) { return partitionHash[key].regions.includes(region); })) !== null && _b !== void 0 ? _b : \"aws\";\n};\n","export var getResolvedHostname = function (resolvedRegion, _a) {\n var regionHostname = _a.regionHostname, partitionHostname = _a.partitionHostname;\n return regionHostname\n ? regionHostname\n : partitionHostname\n ? partitionHostname.replace(\"{region}\", resolvedRegion)\n : undefined;\n};\n","export var getResolvedSigningRegion = function (hostname, _a) {\n var signingRegion = _a.signingRegion, regionRegex = _a.regionRegex, useFipsEndpoint = _a.useFipsEndpoint;\n if (signingRegion) {\n return signingRegion;\n }\n else if (useFipsEndpoint) {\n var regionRegexJs = regionRegex.replace(\"\\\\\\\\\", \"\\\\\").replace(/^\\^/g, \"\\\\.\").replace(/\\$$/g, \"\\\\.\");\n var regionRegexmatchArray = hostname.match(regionRegexJs);\n if (regionRegexmatchArray) {\n return regionRegexmatchArray[0].slice(1, -1);\n }\n }\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nvar CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n var _this = this;\n return function (next) {\n return function (args) { return __awaiter(_this, void 0, void 0, function () {\n var request, body, headers, length;\n var _a;\n return __generator(this, function (_b) {\n request = args.request;\n if (HttpRequest.isInstance(request)) {\n body = request.body, headers = request.headers;\n if (body &&\n Object.keys(headers)\n .map(function (str) { return str.toLowerCase(); })\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n length = bodyLengthChecker(body);\n if (length !== undefined) {\n request.headers = __assign(__assign({}, request.headers), (_a = {}, _a[CONTENT_LENGTH_HEADER] = String(length), _a));\n }\n }\n }\n return [2, next(__assign(__assign({}, args), { request: request }))];\n });\n }); };\n };\n}\nexport var contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport var getContentLengthPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n}); };\n","import { __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport var hostHeaderMiddleware = function (options) {\n return function (next) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var request, _a, handlerProtocol;\n return __generator(this, function (_b) {\n if (!HttpRequest.isInstance(args.request))\n return [2, next(args)];\n request = args.request;\n _a = (options.requestHandler.metadata || {}).handlerProtocol, handlerProtocol = _a === void 0 ? \"\" : _a;\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = \"\";\n }\n else if (!request.headers[\"host\"]) {\n request.headers[\"host\"] = request.hostname;\n }\n return [2, next(args)];\n });\n }); };\n };\n};\nexport var hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport var getHostHeaderPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n}); };\n","import { __awaiter, __generator, __rest } from \"tslib\";\nexport var loggerMiddleware = function () {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var clientName, commandName, inputFilterSensitiveLog, logger, outputFilterSensitiveLog, response, _a, $metadata, outputWithoutMetadata;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n clientName = context.clientName, commandName = context.commandName, inputFilterSensitiveLog = context.inputFilterSensitiveLog, logger = context.logger, outputFilterSensitiveLog = context.outputFilterSensitiveLog;\n return [4, next(args)];\n case 1:\n response = _b.sent();\n if (!logger) {\n return [2, response];\n }\n if (typeof logger.info === \"function\") {\n _a = response.output, $metadata = _a.$metadata, outputWithoutMetadata = __rest(_a, [\"$metadata\"]);\n logger.info({\n clientName: clientName,\n commandName: commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n }\n return [2, response];\n }\n });\n }); };\n };\n};\nexport var loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport var getLoggerPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n}); };\n","export var CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport var 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 var TRANSIENT_ERROR_CODES = [\"AbortError\", \"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport var TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\n","import { CLOCK_SKEW_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport var isRetryableByTrait = function (error) { return error.$retryable !== undefined; };\nexport var isClockSkewError = function (error) { return CLOCK_SKEW_ERROR_CODES.includes(error.name); };\nexport var isThrottlingError = function (error) {\n var _a, _b;\n return ((_a = error.$metadata) === null || _a === void 0 ? void 0 : _a.httpStatusCode) === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n ((_b = error.$retryable) === null || _b === void 0 ? void 0 : _b.throttling) == true;\n};\nexport var isTransientError = function (error) {\n var _a;\n return TRANSIENT_ERROR_CODES.includes(error.name) ||\n TRANSIENT_ERROR_STATUS_CODES.includes(((_a = error.$metadata) === null || _a === void 0 ? void 0 : _a.httpStatusCode) || 0);\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { isThrottlingError } from \"@aws-sdk/service-error-classification\";\nvar DefaultRateLimiter = (function () {\n function DefaultRateLimiter(options) {\n var _a, _b, _c, _d, _e;\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 = (_a = options === null || options === void 0 ? void 0 : options.beta) !== null && _a !== void 0 ? _a : 0.7;\n this.minCapacity = (_b = options === null || options === void 0 ? void 0 : options.minCapacity) !== null && _b !== void 0 ? _b : 1;\n this.minFillRate = (_c = options === null || options === void 0 ? void 0 : options.minFillRate) !== null && _c !== void 0 ? _c : 0.5;\n this.scaleConstant = (_d = options === null || options === void 0 ? void 0 : options.scaleConstant) !== null && _d !== void 0 ? _d : 0.4;\n this.smooth = (_e = options === null || options === void 0 ? void 0 : options.smooth) !== null && _e !== void 0 ? _e : 0.8;\n var 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 DefaultRateLimiter.prototype.getCurrentTimeInSeconds = function () {\n return Date.now() / 1000;\n };\n DefaultRateLimiter.prototype.getSendToken = function () {\n return __awaiter(this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, this.acquireTokenBucket(1)];\n });\n });\n };\n DefaultRateLimiter.prototype.acquireTokenBucket = function (amount) {\n return __awaiter(this, void 0, void 0, function () {\n var delay_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!this.enabled) {\n return [2];\n }\n this.refillTokenBucket();\n if (!(amount > this.currentCapacity)) return [3, 2];\n delay_1 = ((amount - this.currentCapacity) / this.fillRate) * 1000;\n return [4, new Promise(function (resolve) { return setTimeout(resolve, delay_1); })];\n case 1:\n _a.sent();\n _a.label = 2;\n case 2:\n this.currentCapacity = this.currentCapacity - amount;\n return [2];\n }\n });\n });\n };\n DefaultRateLimiter.prototype.refillTokenBucket = function () {\n var timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n var fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.currentCapacity = Math.min(this.maxCapacity, this.currentCapacity + fillAmount);\n this.lastTimestamp = timestamp;\n };\n DefaultRateLimiter.prototype.updateClientSendingRate = function (response) {\n var calculatedRate;\n this.updateMeasuredRate();\n if (isThrottlingError(response)) {\n var 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 var newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n };\n DefaultRateLimiter.prototype.calculateTimeWindow = function () {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n };\n DefaultRateLimiter.prototype.cubicThrottle = function (rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n };\n DefaultRateLimiter.prototype.cubicSuccess = function (timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n };\n DefaultRateLimiter.prototype.enableTokenBucket = function () {\n this.enabled = true;\n };\n DefaultRateLimiter.prototype.updateTokenBucketRate = function (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 DefaultRateLimiter.prototype.updateMeasuredRate = function () {\n var t = this.getCurrentTimeInSeconds();\n var timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n var 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 DefaultRateLimiter.prototype.getPrecise = function (num) {\n return parseFloat(num.toFixed(8));\n };\n return DefaultRateLimiter;\n}());\nexport { DefaultRateLimiter };\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"crypto\");","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}","export default /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;","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).substr(1));\n}\n\nfunction stringify(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 const uuid = (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]]).toLowerCase(); // 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 REGEX from './regex.js';\n\nfunction validate(uuid) {\n return typeof uuid === 'string' && REGEX.test(uuid);\n}\n\nexport default validate;","import rng from './rng.js';\nimport stringify from './stringify.js';\n\nfunction v4(options, buf, offset) {\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 stringify(rnds);\n}\n\nexport default v4;","export var DEFAULT_RETRY_DELAY_BASE = 100;\nexport var MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport var THROTTLING_RETRY_DELAY_BASE = 500;\nexport var INITIAL_RETRY_TOKENS = 500;\nexport var RETRY_COST = 5;\nexport var TIMEOUT_RETRY_COST = 10;\nexport var NO_RETRY_INCREMENT = 1;\nexport var INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport var REQUEST_HEADER = \"amz-sdk-request\";\n","import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport var defaultDelayDecider = function (delayBase, attempts) {\n return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * Math.pow(2, attempts) * delayBase));\n};\n","import { isClockSkewError, isRetryableByTrait, isThrottlingError, isTransientError, } from \"@aws-sdk/service-error-classification\";\nexport var defaultRetryDecider = function (error) {\n if (!error) {\n return false;\n }\n return isRetryableByTrait(error) || isClockSkewError(error) || isThrottlingError(error) || isTransientError(error);\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { isThrottlingError } from \"@aws-sdk/service-error-classification\";\nimport { v4 } from \"uuid\";\nimport { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, INVOCATION_ID_HEADER, REQUEST_HEADER, THROTTLING_RETRY_DELAY_BASE, } from \"./constants\";\nimport { getDefaultRetryQuota } from \"./defaultRetryQuota\";\nimport { defaultDelayDecider } from \"./delayDecider\";\nimport { defaultRetryDecider } from \"./retryDecider\";\nvar StandardRetryStrategy = (function () {\n function StandardRetryStrategy(maxAttemptsProvider, options) {\n var _a, _b, _c;\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.mode = RETRY_MODES.STANDARD;\n this.retryDecider = (_a = options === null || options === void 0 ? void 0 : options.retryDecider) !== null && _a !== void 0 ? _a : defaultRetryDecider;\n this.delayDecider = (_b = options === null || options === void 0 ? void 0 : options.delayDecider) !== null && _b !== void 0 ? _b : defaultDelayDecider;\n this.retryQuota = (_c = options === null || options === void 0 ? void 0 : options.retryQuota) !== null && _c !== void 0 ? _c : getDefaultRetryQuota(INITIAL_RETRY_TOKENS);\n }\n StandardRetryStrategy.prototype.shouldRetry = function (error, attempts, maxAttempts) {\n return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);\n };\n StandardRetryStrategy.prototype.getMaxAttempts = function () {\n return __awaiter(this, void 0, void 0, function () {\n var maxAttempts, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, this.maxAttemptsProvider()];\n case 1:\n maxAttempts = _a.sent();\n return [3, 3];\n case 2:\n error_1 = _a.sent();\n maxAttempts = DEFAULT_MAX_ATTEMPTS;\n return [3, 3];\n case 3: return [2, maxAttempts];\n }\n });\n });\n };\n StandardRetryStrategy.prototype.retry = function (next, args, options) {\n return __awaiter(this, void 0, void 0, function () {\n var retryTokenAmount, attempts, totalDelay, maxAttempts, request, _loop_1, this_1, state_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n attempts = 0;\n totalDelay = 0;\n return [4, this.getMaxAttempts()];\n case 1:\n maxAttempts = _a.sent();\n request = args.request;\n if (HttpRequest.isInstance(request)) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n _loop_1 = function () {\n var _b, response, output, e_1, err, delay_1;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _c.trys.push([0, 4, , 7]);\n if (HttpRequest.isInstance(request)) {\n request.headers[REQUEST_HEADER] = \"attempt=\" + (attempts + 1) + \"; max=\" + maxAttempts;\n }\n if (!(options === null || options === void 0 ? void 0 : options.beforeRequest)) return [3, 2];\n return [4, options.beforeRequest()];\n case 1:\n _c.sent();\n _c.label = 2;\n case 2: return [4, next(args)];\n case 3:\n _b = _c.sent(), response = _b.response, output = _b.output;\n if (options === null || options === void 0 ? void 0 : options.afterRequest) {\n options.afterRequest(response);\n }\n this_1.retryQuota.releaseRetryTokens(retryTokenAmount);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalDelay;\n return [2, { value: { response: response, output: output } }];\n case 4:\n e_1 = _c.sent();\n err = asSdkError(e_1);\n attempts++;\n if (!this_1.shouldRetry(err, attempts, maxAttempts)) return [3, 6];\n retryTokenAmount = this_1.retryQuota.retrieveRetryTokens(err);\n delay_1 = this_1.delayDecider(isThrottlingError(err) ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE, attempts);\n totalDelay += delay_1;\n return [4, new Promise(function (resolve) { return setTimeout(resolve, delay_1); })];\n case 5:\n _c.sent();\n return [2, \"continue\"];\n case 6:\n if (!err.$metadata) {\n err.$metadata = {};\n }\n err.$metadata.attempts = attempts;\n err.$metadata.totalRetryDelay = totalDelay;\n throw err;\n case 7: return [2];\n }\n });\n };\n this_1 = this;\n _a.label = 2;\n case 2:\n if (!true) return [3, 4];\n return [5, _loop_1()];\n case 3:\n state_1 = _a.sent();\n if (typeof state_1 === \"object\")\n return [2, state_1.value];\n return [3, 2];\n case 4: return [2];\n }\n });\n });\n };\n return StandardRetryStrategy;\n}());\nexport { StandardRetryStrategy };\nvar asSdkError = function (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 { NO_RETRY_INCREMENT, RETRY_COST, TIMEOUT_RETRY_COST } from \"./constants\";\nexport var getDefaultRetryQuota = function (initialRetryTokens, options) {\n var _a, _b, _c;\n var MAX_CAPACITY = initialRetryTokens;\n var noRetryIncrement = (_a = options === null || options === void 0 ? void 0 : options.noRetryIncrement) !== null && _a !== void 0 ? _a : NO_RETRY_INCREMENT;\n var retryCost = (_b = options === null || options === void 0 ? void 0 : options.retryCost) !== null && _b !== void 0 ? _b : RETRY_COST;\n var timeoutRetryCost = (_c = options === null || options === void 0 ? void 0 : options.timeoutRetryCost) !== null && _c !== void 0 ? _c : TIMEOUT_RETRY_COST;\n var availableCapacity = initialRetryTokens;\n var getCapacityAmount = function (error) { return (error.name === \"TimeoutError\" ? timeoutRetryCost : retryCost); };\n var hasRetryTokens = function (error) { return getCapacityAmount(error) <= availableCapacity; };\n var retrieveRetryTokens = function (error) {\n if (!hasRetryTokens(error)) {\n throw new Error(\"No retry token available\");\n }\n var capacityAmount = getCapacityAmount(error);\n availableCapacity -= capacityAmount;\n return capacityAmount;\n };\n var releaseRetryTokens = function (capacityReleaseAmount) {\n availableCapacity += capacityReleaseAmount !== null && capacityReleaseAmount !== void 0 ? capacityReleaseAmount : noRetryIncrement;\n availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);\n };\n return Object.freeze({\n hasRetryTokens: hasRetryTokens,\n retrieveRetryTokens: retrieveRetryTokens,\n releaseRetryTokens: releaseRetryTokens,\n });\n};\n","import { __awaiter, __extends, __generator, __rest } from \"tslib\";\nimport { RETRY_MODES } from \"./config\";\nimport { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nvar AdaptiveRetryStrategy = (function (_super) {\n __extends(AdaptiveRetryStrategy, _super);\n function AdaptiveRetryStrategy(maxAttemptsProvider, options) {\n var _this = this;\n var _a = options !== null && options !== void 0 ? options : {}, rateLimiter = _a.rateLimiter, superOptions = __rest(_a, [\"rateLimiter\"]);\n _this = _super.call(this, maxAttemptsProvider, superOptions) || this;\n _this.rateLimiter = rateLimiter !== null && rateLimiter !== void 0 ? rateLimiter : new DefaultRateLimiter();\n _this.mode = RETRY_MODES.ADAPTIVE;\n return _this;\n }\n AdaptiveRetryStrategy.prototype.retry = function (next, args) {\n return __awaiter(this, void 0, void 0, function () {\n var _this = this;\n return __generator(this, function (_a) {\n return [2, _super.prototype.retry.call(this, next, args, {\n beforeRequest: function () { return __awaiter(_this, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, this.rateLimiter.getSendToken()];\n });\n }); },\n afterRequest: function (response) {\n _this.rateLimiter.updateClientSendingRate(response);\n },\n })];\n });\n });\n };\n return AdaptiveRetryStrategy;\n}(StandardRetryStrategy));\nexport { AdaptiveRetryStrategy };\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { AdaptiveRetryStrategy } from \"./AdaptiveRetryStrategy\";\nimport { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES } from \"./config\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport var ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport var CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport var NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) {\n var value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n var 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: function (profile) {\n var value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n var 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 var resolveRetryConfig = function (input) {\n var maxAttempts = normalizeMaxAttempts(input.maxAttempts);\n return __assign(__assign({}, input), { maxAttempts: maxAttempts, retryStrategy: function () { return __awaiter(void 0, void 0, void 0, function () {\n var retryMode;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (input.retryStrategy) {\n return [2, input.retryStrategy];\n }\n return [4, getRetryMode(input.retryMode)];\n case 1:\n retryMode = _a.sent();\n if (retryMode === RETRY_MODES.ADAPTIVE) {\n return [2, new AdaptiveRetryStrategy(maxAttempts)];\n }\n return [2, new StandardRetryStrategy(maxAttempts)];\n }\n });\n }); } });\n};\nvar getRetryMode = function (retryMode) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (typeof retryMode === \"string\") {\n return [2, retryMode];\n }\n return [4, retryMode()];\n case 1: return [2, _a.sent()];\n }\n });\n}); };\nvar normalizeMaxAttempts = function (maxAttempts) {\n if (maxAttempts === void 0) { maxAttempts = DEFAULT_MAX_ATTEMPTS; }\n if (typeof maxAttempts === \"number\") {\n var promisified_1 = Promise.resolve(maxAttempts);\n return function () { return promisified_1; };\n }\n return maxAttempts;\n};\nexport var ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport var CONFIG_RETRY_MODE = \"retry_mode\";\nexport var NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[ENV_RETRY_MODE]; },\n configFileSelector: function (profile) { return profile[CONFIG_RETRY_MODE]; },\n default: DEFAULT_RETRY_MODE,\n};\n","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nexport var retryMiddleware = function (options) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var retryStrategy;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, options.retryStrategy()];\n case 1:\n retryStrategy = _a.sent();\n if (retryStrategy === null || retryStrategy === void 0 ? void 0 : retryStrategy.mode)\n context.userAgent = __spreadArray(__spreadArray([], __read((context.userAgent || []))), [[\"cfg/retry-mode\", retryStrategy.mode]]);\n return [2, retryStrategy.retry(next, args)];\n }\n });\n }); };\n };\n};\nexport var retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport var getRetryPlugin = function (options) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n}); };\n","import { __assign } from \"tslib\";\nimport { resolveAwsAuthConfig } from \"@aws-sdk/middleware-signing\";\nexport var resolveStsAuthConfig = function (input, _a) {\n var stsClientCtor = _a.stsClientCtor;\n return resolveAwsAuthConfig(__assign(__assign({}, input), { stsClientCtor: stsClientCtor }));\n};\n","import { __assign } from \"tslib\";\nexport function resolveUserAgentConfig(input) {\n return __assign(__assign({}, input), { customUserAgent: typeof input.customUserAgent === \"string\" ? [[input.customUserAgent]] : input.customUserAgent });\n}\n","export var USER_AGENT = \"user-agent\";\nexport var X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport var SPACE = \" \";\nexport var UA_ESCAPE_REGEX = /[^\\!\\#\\$\\%\\&\\'\\*\\+\\-\\.\\^\\_\\`\\|\\~\\d\\w]/g;\n","import { __assign, __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { SPACE, UA_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT } from \"./constants\";\nexport var userAgentMiddleware = function (options) {\n return function (next, context) {\n return function (args) { return __awaiter(void 0, void 0, void 0, function () {\n var request, headers, userAgent, defaultUserAgent, customUserAgent, sdkUserAgentValue, normalUAValue;\n var _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n request = args.request;\n if (!HttpRequest.isInstance(request))\n return [2, next(args)];\n headers = request.headers;\n userAgent = ((_a = context === null || context === void 0 ? void 0 : context.userAgent) === null || _a === void 0 ? void 0 : _a.map(escapeUserAgent)) || [];\n return [4, options.defaultUserAgentProvider()];\n case 1:\n defaultUserAgent = (_c.sent()).map(escapeUserAgent);\n customUserAgent = ((_b = options === null || options === void 0 ? void 0 : options.customUserAgent) === null || _b === void 0 ? void 0 : _b.map(escapeUserAgent)) || [];\n sdkUserAgentValue = __spreadArray(__spreadArray(__spreadArray([], __read(defaultUserAgent)), __read(userAgent)), __read(customUserAgent)).join(SPACE);\n normalUAValue = __spreadArray(__spreadArray([], __read(defaultUserAgent.filter(function (section) { return section.startsWith(\"aws-sdk-\"); }))), __read(customUserAgent)).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 [2, next(__assign(__assign({}, args), { request: request }))];\n }\n });\n }); };\n };\n};\nvar escapeUserAgent = function (_a) {\n var _b = __read(_a, 2), name = _b[0], version = _b[1];\n var prefixSeparatorIndex = name.indexOf(\"/\");\n var prefix = name.substring(0, prefixSeparatorIndex);\n var uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter(function (item) { return item && item.length > 0; })\n .map(function (item) { return item === null || item === void 0 ? void 0 : item.replace(UA_ESCAPE_REGEX, \"_\"); })\n .join(\"/\");\n};\nexport var getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport var getUserAgentPlugin = function (config) { return ({\n applyToStack: function (clientStack) {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n}); };\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\nvar ASSUME_ROLE_DEFAULT_REGION = \"us-east-1\";\nvar decorateDefaultRegion = function (region) {\n if (typeof region !== \"function\") {\n return region === undefined ? ASSUME_ROLE_DEFAULT_REGION : region;\n }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, region()];\n case 1: return [2, _a.sent()];\n case 2:\n e_1 = _a.sent();\n return [2, ASSUME_ROLE_DEFAULT_REGION];\n case 3: return [2];\n }\n });\n }); };\n};\nexport var getDefaultRoleAssumer = function (stsOptions, stsClientCtor) {\n var stsClient;\n var closureSourceCreds;\n return function (sourceCreds, params) { return __awaiter(void 0, void 0, void 0, function () {\n var logger, region, requestHandler, Credentials;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n closureSourceCreds = sourceCreds;\n if (!stsClient) {\n logger = stsOptions.logger, region = stsOptions.region, requestHandler = stsOptions.requestHandler;\n stsClient = new stsClientCtor(__assign({ logger: logger, credentialDefaultProvider: function () { return function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2, closureSourceCreds];\n }); }); }; }, region: decorateDefaultRegion(region || stsOptions.region) }, (requestHandler ? { requestHandler: requestHandler } : {})));\n }\n return [4, stsClient.send(new AssumeRoleCommand(params))];\n case 1:\n Credentials = (_a.sent()).Credentials;\n if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n throw new Error(\"Invalid response from STS.assumeRole call with role \" + params.RoleArn);\n }\n return [2, {\n accessKeyId: Credentials.AccessKeyId,\n secretAccessKey: Credentials.SecretAccessKey,\n sessionToken: Credentials.SessionToken,\n expiration: Credentials.Expiration,\n }];\n }\n });\n }); };\n};\nexport var getDefaultRoleAssumerWithWebIdentity = function (stsOptions, stsClientCtor) {\n var stsClient;\n return function (params) { return __awaiter(void 0, void 0, void 0, function () {\n var logger, region, requestHandler, Credentials;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!stsClient) {\n logger = stsOptions.logger, region = stsOptions.region, requestHandler = stsOptions.requestHandler;\n stsClient = new stsClientCtor(__assign({ logger: logger, region: decorateDefaultRegion(region || stsOptions.region) }, (requestHandler ? { requestHandler: requestHandler } : {})));\n }\n return [4, stsClient.send(new AssumeRoleWithWebIdentityCommand(params))];\n case 1:\n Credentials = (_a.sent()).Credentials;\n if (!Credentials || !Credentials.AccessKeyId || !Credentials.SecretAccessKey) {\n throw new Error(\"Invalid response from STS.assumeRoleWithWebIdentity call with role \" + params.RoleArn);\n }\n return [2, {\n accessKeyId: Credentials.AccessKeyId,\n secretAccessKey: Credentials.SecretAccessKey,\n sessionToken: Credentials.SessionToken,\n expiration: Credentials.Expiration,\n }];\n }\n });\n }); };\n};\nexport var decorateDefaultCredentialProvider = function (provider) {\n return function (input) {\n return provider(__assign({ roleAssumer: getDefaultRoleAssumer(input, input.stsClientCtor), roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input, input.stsClientCtor) }, input));\n };\n};\n","import { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nexport var ENV_KEY = \"AWS_ACCESS_KEY_ID\";\nexport var ENV_SECRET = \"AWS_SECRET_ACCESS_KEY\";\nexport var ENV_SESSION = \"AWS_SESSION_TOKEN\";\nexport var ENV_EXPIRATION = \"AWS_CREDENTIAL_EXPIRATION\";\nexport function fromEnv() {\n return function () {\n var accessKeyId = process.env[ENV_KEY];\n var secretAccessKey = process.env[ENV_SECRET];\n var expiry = process.env[ENV_EXPIRATION];\n if (accessKeyId && secretAccessKey) {\n return Promise.resolve({\n accessKeyId: accessKeyId,\n secretAccessKey: secretAccessKey,\n sessionToken: process.env[ENV_SESSION],\n expiration: expiry ? new Date(expiry) : undefined,\n });\n }\n return Promise.reject(new CredentialsProviderError(\"Unable to find environment variable credentials.\"));\n };\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"buffer\");","import { __assign } from \"tslib\";\nimport { ProviderError } from \"@aws-sdk/property-provider\";\nimport { Buffer } from \"buffer\";\nimport { request } from \"http\";\nexport function httpRequest(options) {\n return new Promise(function (resolve, reject) {\n var _a;\n var req = request(__assign(__assign({ method: \"GET\" }, options), { hostname: (_a = options.hostname) === null || _a === void 0 ? void 0 : _a.replace(/^\\[(.+)\\]$/, \"$1\") }));\n req.on(\"error\", function (err) {\n reject(Object.assign(new ProviderError(\"Unable to connect to instance metadata service\"), err));\n req.destroy();\n });\n req.on(\"timeout\", function () {\n reject(new ProviderError(\"TimeoutError from instance metadata service\"));\n req.destroy();\n });\n req.on(\"response\", function (res) {\n var _a = res.statusCode, statusCode = _a === void 0 ? 400 : _a;\n if (statusCode < 200 || 300 <= statusCode) {\n reject(Object.assign(new ProviderError(\"Error response received from instance metadata service\"), { statusCode: statusCode }));\n req.destroy();\n }\n var chunks = [];\n res.on(\"data\", function (chunk) {\n chunks.push(chunk);\n });\n res.on(\"end\", function () {\n resolve(Buffer.concat(chunks));\n req.destroy();\n });\n });\n req.end();\n });\n}\n","export var isImdsCredentials = function (arg) {\n return 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\";\n};\nexport var fromImdsCredentials = function (creds) { return ({\n accessKeyId: creds.AccessKeyId,\n secretAccessKey: creds.SecretAccessKey,\n sessionToken: creds.Token,\n expiration: new Date(creds.Expiration),\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 var DEFAULT_TIMEOUT = 1000;\nexport var DEFAULT_MAX_RETRIES = 0;\nexport var providerConfigFromInit = function (_a) {\n var _b = _a.maxRetries, maxRetries = _b === void 0 ? DEFAULT_MAX_RETRIES : _b, _c = _a.timeout, timeout = _c === void 0 ? DEFAULT_TIMEOUT : _c;\n return ({ maxRetries: maxRetries, timeout: timeout });\n};\n","export var retry = function (toRetry, maxRetries) {\n var promise = toRetry();\n for (var i = 0; i < maxRetries; i++) {\n promise = promise.catch(toRetry);\n }\n return promise;\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/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 var ENV_CMDS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nexport var ENV_CMDS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nexport var ENV_CMDS_AUTH_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nexport var fromContainerMetadata = function (init) {\n if (init === void 0) { init = {}; }\n var _a = providerConfigFromInit(init), timeout = _a.timeout, maxRetries = _a.maxRetries;\n return function () {\n return retry(function () { return __awaiter(void 0, void 0, void 0, function () {\n var requestOptions, credsResponse, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, getCmdsUri()];\n case 1:\n requestOptions = _c.sent();\n _b = (_a = JSON).parse;\n return [4, requestFromEcsImds(timeout, requestOptions)];\n case 2:\n credsResponse = _b.apply(_a, [_c.sent()]);\n if (!isImdsCredentials(credsResponse)) {\n throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\");\n }\n return [2, fromImdsCredentials(credsResponse)];\n }\n });\n }); }, maxRetries);\n };\n};\nvar requestFromEcsImds = function (timeout, options) { return __awaiter(void 0, void 0, void 0, function () {\n var buffer;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (process.env[ENV_CMDS_AUTH_TOKEN]) {\n options.headers = __assign(__assign({}, options.headers), { Authorization: process.env[ENV_CMDS_AUTH_TOKEN] });\n }\n return [4, httpRequest(__assign(__assign({}, options), { timeout: timeout }))];\n case 1:\n buffer = _a.sent();\n return [2, buffer.toString()];\n }\n });\n}); };\nvar CMDS_IP = \"169.254.170.2\";\nvar GREENGRASS_HOSTS = {\n localhost: true,\n \"127.0.0.1\": true,\n};\nvar GREENGRASS_PROTOCOLS = {\n \"http:\": true,\n \"https:\": true,\n};\nvar getCmdsUri = function () { return __awaiter(void 0, void 0, void 0, function () {\n var parsed;\n return __generator(this, function (_a) {\n if (process.env[ENV_CMDS_RELATIVE_URI]) {\n return [2, {\n hostname: CMDS_IP,\n path: process.env[ENV_CMDS_RELATIVE_URI],\n }];\n }\n if (process.env[ENV_CMDS_FULL_URI]) {\n 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\", false);\n }\n if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {\n throw new CredentialsProviderError(parsed.protocol + \" is not a valid container metadata service protocol\", false);\n }\n return [2, __assign(__assign({}, parsed), { port: parsed.port ? parseInt(parsed.port, 10) : undefined })];\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\", false);\n });\n}); };\n","import { __read, __values } from \"tslib\";\nimport { readFile } from \"fs\";\nimport { homedir } from \"os\";\nimport { join, sep } from \"path\";\nexport var ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nexport var ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nvar swallowError = function () { return ({}); };\nexport var loadSharedConfigFiles = function (init) {\n if (init === void 0) { init = {}; }\n var _a = init.filepath, filepath = _a === void 0 ? process.env[ENV_CREDENTIALS_PATH] || join(getHomeDir(), \".aws\", \"credentials\") : _a, _b = init.configFilepath, configFilepath = _b === void 0 ? process.env[ENV_CONFIG_PATH] || join(getHomeDir(), \".aws\", \"config\") : _b;\n return Promise.all([\n slurpFile(configFilepath).then(parseIni).then(normalizeConfigFile).catch(swallowError),\n slurpFile(filepath).then(parseIni).catch(swallowError),\n ]).then(function (parsedFiles) {\n var _a = __read(parsedFiles, 2), configFile = _a[0], credentialsFile = _a[1];\n return {\n configFile: configFile,\n credentialsFile: credentialsFile,\n };\n });\n};\nvar profileKeyRegex = /^profile\\s([\"'])?([^\\1]+)\\1$/;\nvar normalizeConfigFile = function (data) {\n var e_1, _a;\n var map = {};\n try {\n for (var _b = __values(Object.keys(data)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var matches = void 0;\n if (key === \"default\") {\n map.default = data.default;\n }\n else if ((matches = profileKeyRegex.exec(key))) {\n var _d = __read(matches, 3), _1 = _d[0], _2 = _d[1], normalizedKey = _d[2];\n if (normalizedKey) {\n map[normalizedKey] = data[key];\n }\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return map;\n};\nvar profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nvar parseIni = function (iniData) {\n var e_2, _a;\n var map = {};\n var currentSection;\n try {\n for (var _b = __values(iniData.split(/\\r?\\n/)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var line = _c.value;\n line = line.split(/(^|\\s)[;#]/)[0];\n var section = line.match(/^\\s*\\[([^\\[\\]]+)]\\s*$/);\n if (section) {\n currentSection = section[1];\n if (profileNameBlockList.includes(currentSection)) {\n throw new Error(\"Found invalid profile name \\\"\" + currentSection + \"\\\"\");\n }\n }\n else if (currentSection) {\n var item = line.match(/^\\s*(.+?)\\s*=\\s*(.+?)\\s*$/);\n if (item) {\n map[currentSection] = map[currentSection] || {};\n map[currentSection][item[1]] = item[2];\n }\n }\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_2) throw e_2.error; }\n }\n return map;\n};\nvar slurpFile = function (path) {\n return new Promise(function (resolve, reject) {\n readFile(path, \"utf8\", function (err, data) {\n if (err) {\n reject(err);\n }\n else {\n resolve(data);\n }\n });\n });\n};\nexport var getHomeDir = function () {\n var _a = process.env, HOME = _a.HOME, USERPROFILE = _a.USERPROFILE, HOMEPATH = _a.HOMEPATH, _b = _a.HOMEDRIVE, HOMEDRIVE = _b === void 0 ? \"C:\" + sep : _b;\n if (HOME)\n return HOME;\n if (USERPROFILE)\n return USERPROFILE;\n if (HOMEPATH)\n return \"\" + HOMEDRIVE + HOMEPATH;\n return homedir();\n};\n","import { chain, memoize } from \"@aws-sdk/property-provider\";\nimport { fromEnv } from \"./fromEnv\";\nimport { fromSharedConfigFiles } from \"./fromSharedConfigFiles\";\nimport { fromStatic } from \"./fromStatic\";\nexport var loadConfig = function (_a, configuration) {\n var environmentVariableSelector = _a.environmentVariableSelector, configFileSelector = _a.configFileSelector, defaultValue = _a.default;\n if (configuration === void 0) { configuration = {}; }\n return memoize(chain(fromEnv(environmentVariableSelector), fromSharedConfigFiles(configFileSelector, configuration), fromStatic(defaultValue)));\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nexport var fromEnv = function (envVarSelector) {\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var config;\n return __generator(this, function (_a) {\n try {\n config = envVarSelector(process.env);\n if (config === undefined) {\n throw new Error();\n }\n return [2, config];\n }\n catch (e) {\n throw new CredentialsProviderError(e.message || \"Cannot load config from environment variables with getter: \" + envVarSelector);\n }\n return [2];\n });\n }); };\n};\n","import { __assign, __awaiter, __generator, __rest } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { loadSharedConfigFiles, } from \"@aws-sdk/shared-ini-file-loader\";\nvar DEFAULT_PROFILE = \"default\";\nexport var ENV_PROFILE = \"AWS_PROFILE\";\nexport var fromSharedConfigFiles = function (configSelector, _a) {\n if (_a === void 0) { _a = {}; }\n var _b = _a.preferredFile, preferredFile = _b === void 0 ? \"config\" : _b, init = __rest(_a, [\"preferredFile\"]);\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var _a, loadedConfig, _b, profile, _c, configFile, credentialsFile, profileFromCredentials, profileFromConfig, mergedProfile, configValue;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n _a = init.loadedConfig, loadedConfig = _a === void 0 ? loadSharedConfigFiles(init) : _a, _b = init.profile, profile = _b === void 0 ? process.env[ENV_PROFILE] || DEFAULT_PROFILE : _b;\n return [4, loadedConfig];\n case 1:\n _c = _d.sent(), configFile = _c.configFile, credentialsFile = _c.credentialsFile;\n profileFromCredentials = credentialsFile[profile] || {};\n profileFromConfig = configFile[profile] || {};\n mergedProfile = preferredFile === \"config\"\n ? __assign(__assign({}, profileFromCredentials), profileFromConfig) : __assign(__assign({}, profileFromConfig), profileFromCredentials);\n try {\n configValue = configSelector(mergedProfile);\n if (configValue === undefined) {\n throw new Error();\n }\n return [2, configValue];\n }\n catch (e) {\n throw new CredentialsProviderError(e.message ||\n \"Cannot load config for profile \" + profile + \" in SDK configuration files with getter: \" + configSelector);\n }\n return [2];\n }\n });\n }); };\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { fromStatic as convertToProvider } from \"@aws-sdk/property-provider\";\nvar isFunction = function (func) { return typeof func === \"function\"; };\nexport var fromStatic = function (defaultValue) {\n return isFunction(defaultValue) ? function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2, defaultValue()];\n }); }); } : convertToProvider(defaultValue);\n};\n","import { parseQueryString } from \"@aws-sdk/querystring-parser\";\nexport var parseUrl = function (url) {\n var _a = new URL(url), hostname = _a.hostname, pathname = _a.pathname, port = _a.port, protocol = _a.protocol, search = _a.search;\n var query;\n if (search) {\n query = parseQueryString(search);\n }\n return {\n hostname: hostname,\n port: port ? parseInt(port) : undefined,\n protocol: protocol,\n path: pathname,\n query: query,\n };\n};\n","import { __read, __values } from \"tslib\";\nexport function parseQueryString(querystring) {\n var e_1, _a;\n var query = {};\n querystring = querystring.replace(/^\\?/, \"\");\n if (querystring) {\n try {\n for (var _b = __values(querystring.split(\"&\")), _c = _b.next(); !_c.done; _c = _b.next()) {\n var pair = _c.value;\n var _d = __read(pair.split(\"=\"), 2), key = _d[0], _e = _d[1], value = _e === void 0 ? null : _e;\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 catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n }\n return query;\n}\n","export var ENV_ENDPOINT_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT\";\nexport var CONFIG_ENDPOINT_NAME = \"ec2_metadata_service_endpoint\";\nexport var ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[ENV_ENDPOINT_NAME]; },\n configFileSelector: function (profile) { return 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 var ENV_ENDPOINT_MODE_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE\";\nexport var CONFIG_ENDPOINT_MODE_NAME = \"ec2_metadata_service_endpoint_mode\";\nexport var ENDPOINT_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: function (env) { return env[ENV_ENDPOINT_MODE_NAME]; },\n configFileSelector: function (profile) { return profile[CONFIG_ENDPOINT_MODE_NAME]; },\n default: EndpointMode.IPv4,\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\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\";\nvar IMDS_PATH = \"/latest/meta-data/iam/security-credentials/\";\nvar IMDS_TOKEN_PATH = \"/latest/api/token\";\nexport var fromInstanceMetadata = function (init) {\n if (init === void 0) { init = {}; }\n var disableFetchToken = false;\n var _a = providerConfigFromInit(init), timeout = _a.timeout, maxRetries = _a.maxRetries;\n var getCredentials = function (maxRetries, options) { return __awaiter(void 0, void 0, void 0, function () {\n var profile;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, retry(function () { return __awaiter(void 0, void 0, void 0, function () {\n var profile, err_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, getProfile(options)];\n case 1:\n profile = _a.sent();\n return [3, 3];\n case 2:\n err_1 = _a.sent();\n if (err_1.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err_1;\n case 3: return [2, profile];\n }\n });\n }); }, maxRetries)];\n case 1:\n profile = (_a.sent()).trim();\n return [2, retry(function () { return __awaiter(void 0, void 0, void 0, function () {\n var creds, err_2;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 2, , 3]);\n return [4, getCredentialsFromProfile(profile, options)];\n case 1:\n creds = _a.sent();\n return [3, 3];\n case 2:\n err_2 = _a.sent();\n if (err_2.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err_2;\n case 3: return [2, creds];\n }\n });\n }); }, maxRetries)];\n }\n });\n }); };\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var endpoint, token, error_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, getInstanceMetadataEndpoint()];\n case 1:\n endpoint = _a.sent();\n if (!disableFetchToken) return [3, 2];\n return [2, getCredentials(maxRetries, __assign(__assign({}, endpoint), { timeout: timeout }))];\n case 2:\n token = void 0;\n _a.label = 3;\n case 3:\n _a.trys.push([3, 5, , 6]);\n return [4, getMetadataToken(__assign(__assign({}, endpoint), { timeout: timeout }))];\n case 4:\n token = (_a.sent()).toString();\n return [3, 6];\n case 5:\n error_1 = _a.sent();\n if ((error_1 === null || error_1 === void 0 ? void 0 : error_1.statusCode) === 400) {\n throw Object.assign(error_1, {\n message: \"EC2 Metadata token request returned error\",\n });\n }\n else if (error_1.message === \"TimeoutError\" || [403, 404, 405].includes(error_1.statusCode)) {\n disableFetchToken = true;\n }\n return [2, getCredentials(maxRetries, __assign(__assign({}, endpoint), { timeout: timeout }))];\n case 6: return [2, getCredentials(maxRetries, __assign(__assign({}, endpoint), { headers: {\n \"x-aws-ec2-metadata-token\": token,\n }, timeout: timeout }))];\n }\n });\n }); };\n};\nvar getMetadataToken = function (options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, httpRequest(__assign(__assign({}, options), { path: IMDS_TOKEN_PATH, method: \"PUT\", headers: {\n \"x-aws-ec2-metadata-token-ttl-seconds\": \"21600\",\n } }))];\n });\n}); };\nvar getProfile = function (options) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, httpRequest(__assign(__assign({}, options), { path: IMDS_PATH }))];\n case 1: return [2, (_a.sent()).toString()];\n }\n}); }); };\nvar getCredentialsFromProfile = function (profile, options) { return __awaiter(void 0, void 0, void 0, function () {\n var credsResponse, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _b = (_a = JSON).parse;\n return [4, httpRequest(__assign(__assign({}, options), { path: IMDS_PATH + profile }))];\n case 1:\n credsResponse = _b.apply(_a, [(_c.sent()).toString()]);\n if (!isImdsCredentials(credsResponse)) {\n throw new CredentialsProviderError(\"Invalid response received from instance metadata service.\");\n }\n return [2, fromImdsCredentials(credsResponse)];\n }\n });\n}); };\n","import { __awaiter, __generator } from \"tslib\";\nimport { loadConfig } from \"@aws-sdk/node-config-provider\";\nimport { parseUrl } from \"@aws-sdk/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 var getInstanceMetadataEndpoint = function () { return __awaiter(void 0, void 0, void 0, function () { var _a, _b; return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n _a = parseUrl;\n return [4, getFromEndpointConfig()];\n case 1:\n _b = (_c.sent());\n if (_b) return [3, 3];\n return [4, getFromEndpointModeConfig()];\n case 2:\n _b = (_c.sent());\n _c.label = 3;\n case 3: return [2, _a.apply(void 0, [_b])];\n }\n}); }); };\nvar getFromEndpointConfig = function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {\n return [2, loadConfig(ENDPOINT_CONFIG_OPTIONS)()];\n}); }); };\nvar getFromEndpointModeConfig = function () { return __awaiter(void 0, void 0, void 0, function () {\n var endpointMode;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, loadConfig(ENDPOINT_MODE_CONFIG_OPTIONS)()];\n case 1:\n endpointMode = _a.sent();\n switch (endpointMode) {\n case EndpointMode.IPv4:\n return [2, InstanceMetadataEndpoint.IPv4];\n case EndpointMode.IPv6:\n return [2, InstanceMetadataEndpoint.IPv6];\n default:\n throw new Error(\"Unsupported endpoint mode: \" + endpointMode + \".\" + (\" Select from \" + Object.values(EndpointMode)));\n }\n return [2];\n }\n });\n}); };\n","import { isArrayBuffer } from \"@aws-sdk/is-array-buffer\";\nimport { Buffer } from \"buffer\";\nexport var fromArrayBuffer = function (input, offset, length) {\n if (offset === void 0) { offset = 0; }\n if (length === void 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 var fromString = function (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 { fromArrayBuffer, fromString } from \"@aws-sdk/util-buffer-from\";\nimport { Buffer } from \"buffer\";\nimport { createHash, createHmac } from \"crypto\";\nvar Hash = (function () {\n function Hash(algorithmIdentifier, secret) {\n this.hash = secret ? createHmac(algorithmIdentifier, castSourceData(secret)) : createHash(algorithmIdentifier);\n }\n Hash.prototype.update = function (toHash, encoding) {\n this.hash.update(castSourceData(toHash, encoding));\n };\n Hash.prototype.digest = function () {\n return Promise.resolve(this.hash.digest());\n };\n return Hash;\n}());\nexport { Hash };\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 { __values } from \"tslib\";\nimport { escapeUri } from \"@aws-sdk/util-uri-escape\";\nexport function buildQueryString(query) {\n var e_1, _a;\n var parts = [];\n try {\n for (var _b = __values(Object.keys(query).sort()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var key = _c.value;\n var value = query[key];\n key = escapeUri(key);\n if (Array.isArray(value)) {\n for (var i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(key + \"=\" + escapeUri(value[i]));\n }\n }\n else {\n var qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += \"=\" + escapeUri(value);\n }\n parts.push(qsEntry);\n }\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return parts.join(\"&\");\n}\n","export var NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n","import { __values } from \"tslib\";\nvar getTransformedHeaders = function (headers) {\n var e_1, _a;\n var transformedHeaders = {};\n try {\n for (var _b = __values(Object.keys(headers)), _c = _b.next(); !_c.done; _c = _b.next()) {\n var name = _c.value;\n var headerValues = headers[name];\n transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return transformedHeaders;\n};\nexport { getTransformedHeaders };\n","import { Readable } from \"stream\";\nexport function writeRequestBody(httpRequest, request) {\n var expect = request.headers[\"Expect\"] || request.headers[\"expect\"];\n if (expect === \"100-continue\") {\n httpRequest.on(\"continue\", function () {\n writeBody(httpRequest, request.body);\n });\n }\n else {\n writeBody(httpRequest, request.body);\n }\n}\nfunction writeBody(httpRequest, body) {\n if (body instanceof Readable) {\n body.pipe(httpRequest);\n }\n else if (body) {\n httpRequest.end(Buffer.from(body));\n }\n else {\n httpRequest.end();\n }\n}\n","import { HttpResponse } from \"@aws-sdk/protocol-http\";\nimport { buildQueryString } from \"@aws-sdk/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 { setSocketTimeout } from \"./set-socket-timeout\";\nimport { writeRequestBody } from \"./write-request-body\";\nvar NodeHttpHandler = (function () {\n function NodeHttpHandler(_a) {\n var _b = _a === void 0 ? {} : _a, connectionTimeout = _b.connectionTimeout, socketTimeout = _b.socketTimeout, httpAgent = _b.httpAgent, httpsAgent = _b.httpsAgent;\n this.metadata = { handlerProtocol: \"http/1.1\" };\n this.connectionTimeout = connectionTimeout;\n this.socketTimeout = socketTimeout;\n var keepAlive = true;\n var maxSockets = 50;\n this.httpAgent = httpAgent || new hAgent({ keepAlive: keepAlive, maxSockets: maxSockets });\n this.httpsAgent = httpsAgent || new hsAgent({ keepAlive: keepAlive, maxSockets: maxSockets });\n }\n NodeHttpHandler.prototype.destroy = function () {\n this.httpAgent.destroy();\n this.httpsAgent.destroy();\n };\n NodeHttpHandler.prototype.handle = function (request, _a) {\n var _this = this;\n var _b = _a === void 0 ? {} : _a, abortSignal = _b.abortSignal;\n return new Promise(function (resolve, reject) {\n if (abortSignal === null || abortSignal === void 0 ? void 0 : abortSignal.aborted) {\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n return;\n }\n var isSSL = request.protocol === \"https:\";\n var queryString = buildQueryString(request.query || {});\n var nodeHttpsOptions = {\n headers: request.headers,\n host: request.hostname,\n method: request.method,\n path: queryString ? request.path + \"?\" + queryString : request.path,\n port: request.port,\n agent: isSSL ? _this.httpsAgent : _this.httpAgent,\n };\n var requestFunc = isSSL ? hsRequest : hRequest;\n var req = requestFunc(nodeHttpsOptions, function (res) {\n var httpResponse = new HttpResponse({\n statusCode: res.statusCode || -1,\n headers: getTransformedHeaders(res.headers),\n body: res,\n });\n resolve({ response: httpResponse });\n });\n req.on(\"error\", function (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 setConnectionTimeout(req, reject, _this.connectionTimeout);\n setSocketTimeout(req, reject, _this.socketTimeout);\n if (abortSignal) {\n abortSignal.onabort = function () {\n req.abort();\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n }\n writeRequestBody(req, request);\n });\n };\n return NodeHttpHandler;\n}());\nexport { NodeHttpHandler };\n","export var setConnectionTimeout = function (request, reject, timeoutInMs) {\n if (timeoutInMs === void 0) { timeoutInMs = 0; }\n if (!timeoutInMs) {\n return;\n }\n request.on(\"socket\", function (socket) {\n if (socket.connecting) {\n var timeoutId_1 = setTimeout(function () {\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);\n socket.on(\"connect\", function () {\n clearTimeout(timeoutId_1);\n });\n }\n });\n};\n","export var setSocketTimeout = function (request, reject, timeoutInMs) {\n if (timeoutInMs === void 0) { timeoutInMs = 0; }\n request.setTimeout(timeoutInMs, function () {\n request.destroy();\n reject(Object.assign(new Error(\"Connection timed out after \" + timeoutInMs + \" ms\"), { name: \"TimeoutError\" }));\n });\n};\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"http2\");","import { __assign, __values } from \"tslib\";\nimport { HttpResponse } from \"@aws-sdk/protocol-http\";\nimport { buildQueryString } from \"@aws-sdk/querystring-builder\";\nimport { connect, constants } from \"http2\";\nimport { getTransformedHeaders } from \"./get-transformed-headers\";\nimport { writeRequestBody } from \"./write-request-body\";\nvar NodeHttp2Handler = (function () {\n function NodeHttp2Handler(_a) {\n var _b = _a === void 0 ? {} : _a, requestTimeout = _b.requestTimeout, sessionTimeout = _b.sessionTimeout, disableConcurrentStreams = _b.disableConcurrentStreams;\n this.metadata = { handlerProtocol: \"h2\" };\n this.requestTimeout = requestTimeout;\n this.sessionTimeout = sessionTimeout;\n this.disableConcurrentStreams = disableConcurrentStreams;\n this.sessionCache = new Map();\n }\n NodeHttp2Handler.prototype.destroy = function () {\n var e_1, _a;\n var _this = this;\n try {\n for (var _b = __values(this.sessionCache.values()), _c = _b.next(); !_c.done; _c = _b.next()) {\n var sessions = _c.value;\n sessions.forEach(function (session) { return _this.destroySession(session); });\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_c && !_c.done && (_a = _b.return)) _a.call(_b);\n }\n finally { if (e_1) throw e_1.error; }\n }\n this.sessionCache.clear();\n };\n NodeHttp2Handler.prototype.handle = function (request, _a) {\n var _this = this;\n var _b = _a === void 0 ? {} : _a, abortSignal = _b.abortSignal;\n return new Promise(function (resolve, rejectOriginal) {\n var _a;\n var fulfilled = false;\n if (abortSignal === null || abortSignal === void 0 ? void 0 : abortSignal.aborted) {\n fulfilled = true;\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n rejectOriginal(abortError);\n return;\n }\n var hostname = request.hostname, method = request.method, port = request.port, protocol = request.protocol, path = request.path, query = request.query;\n var authority = protocol + \"//\" + hostname + (port ? \":\" + port : \"\");\n var session = _this.getSession(authority, _this.disableConcurrentStreams || false);\n var reject = function (err) {\n if (_this.disableConcurrentStreams) {\n _this.destroySession(session);\n }\n fulfilled = true;\n rejectOriginal(err);\n };\n var queryString = buildQueryString(query || {});\n var req = session.request(__assign(__assign({}, request.headers), (_a = {}, _a[constants.HTTP2_HEADER_PATH] = queryString ? path + \"?\" + queryString : path, _a[constants.HTTP2_HEADER_METHOD] = method, _a)));\n req.on(\"response\", function (headers) {\n var 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 (_this.disableConcurrentStreams) {\n session.close();\n _this.deleteSessionFromCache(authority, session);\n }\n });\n var requestTimeout = _this.requestTimeout;\n if (requestTimeout) {\n req.setTimeout(requestTimeout, function () {\n req.close();\n var timeoutError = new Error(\"Stream timed out because of no activity for \" + requestTimeout + \" ms\");\n timeoutError.name = \"TimeoutError\";\n reject(timeoutError);\n });\n }\n if (abortSignal) {\n abortSignal.onabort = function () {\n req.close();\n var abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n reject(abortError);\n };\n }\n req.on(\"frameError\", function (type, code, id) {\n reject(new Error(\"Frame type id \" + type + \" in stream id \" + id + \" has failed with code \" + code + \".\"));\n });\n req.on(\"error\", reject);\n req.on(\"aborted\", function () {\n reject(new Error(\"HTTP/2 stream is abnormally aborted in mid-communication with result code \" + req.rstCode + \".\"));\n });\n req.on(\"close\", function () {\n if (_this.disableConcurrentStreams) {\n session.destroy();\n }\n if (!fulfilled) {\n reject(new Error(\"Unexpected error: http2 request did not get a response\"));\n }\n });\n writeRequestBody(req, request);\n });\n };\n NodeHttp2Handler.prototype.getSession = function (authority, disableConcurrentStreams) {\n var _this = this;\n var sessionCache = this.sessionCache;\n var existingSessions = sessionCache.get(authority) || [];\n if (existingSessions.length > 0 && !disableConcurrentStreams)\n return existingSessions[0];\n var newSession = connect(authority);\n var destroySessionCb = function () {\n _this.destroySession(newSession);\n _this.deleteSessionFromCache(authority, newSession);\n };\n newSession.on(\"goaway\", destroySessionCb);\n newSession.on(\"error\", destroySessionCb);\n newSession.on(\"frameError\", destroySessionCb);\n var sessionTimeout = this.sessionTimeout;\n if (sessionTimeout) {\n newSession.setTimeout(sessionTimeout, destroySessionCb);\n }\n existingSessions.push(newSession);\n sessionCache.set(authority, existingSessions);\n return newSession;\n };\n NodeHttp2Handler.prototype.destroySession = function (session) {\n if (!session.destroyed) {\n session.destroy();\n }\n };\n NodeHttp2Handler.prototype.deleteSessionFromCache = function (authority, session) {\n var existingSessions = this.sessionCache.get(authority) || [];\n if (!existingSessions.includes(session)) {\n return;\n }\n this.sessionCache.set(authority, existingSessions.filter(function (s) { return s !== session; }));\n };\n return NodeHttp2Handler;\n}());\nexport { NodeHttp2Handler };\n","import { __extends } from \"tslib\";\nimport { Writable } from \"stream\";\nvar Collector = (function (_super) {\n __extends(Collector, _super);\n function Collector() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.bufferedBytes = [];\n return _this;\n }\n Collector.prototype._write = function (chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n };\n return Collector;\n}(Writable));\nexport { Collector };\n","import { Collector } from \"./collector\";\nexport var streamCollector = function (stream) {\n return new Promise(function (resolve, reject) {\n var collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", function (err) {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n var bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n};\n","import { fromArrayBuffer, fromString } from \"@aws-sdk/util-buffer-from\";\nvar BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nexport function 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 var buffer = fromString(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n}\nexport function toBase64(input) {\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n}\n","import { lstatSync } from \"fs\";\nexport function calculateBodyLength(body) {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.from(body).length;\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.path === \"string\") {\n return lstatSync(body.path).size;\n }\n}\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"process\");","import { __assign } from \"tslib\";\nimport { SENSITIVE_STRING } from \"@aws-sdk/smithy-client\";\nexport var AccountInfo;\n(function (AccountInfo) {\n AccountInfo.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(AccountInfo || (AccountInfo = {}));\nexport var GetRoleCredentialsRequest;\n(function (GetRoleCredentialsRequest) {\n GetRoleCredentialsRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(GetRoleCredentialsRequest || (GetRoleCredentialsRequest = {}));\nexport var RoleCredentials;\n(function (RoleCredentials) {\n RoleCredentials.filterSensitiveLog = function (obj) { return (__assign(__assign(__assign({}, obj), (obj.secretAccessKey && { secretAccessKey: SENSITIVE_STRING })), (obj.sessionToken && { sessionToken: SENSITIVE_STRING }))); };\n})(RoleCredentials || (RoleCredentials = {}));\nexport var GetRoleCredentialsResponse;\n(function (GetRoleCredentialsResponse) {\n GetRoleCredentialsResponse.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.roleCredentials && { roleCredentials: RoleCredentials.filterSensitiveLog(obj.roleCredentials) }))); };\n})(GetRoleCredentialsResponse || (GetRoleCredentialsResponse = {}));\nexport var InvalidRequestException;\n(function (InvalidRequestException) {\n InvalidRequestException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(InvalidRequestException || (InvalidRequestException = {}));\nexport var ResourceNotFoundException;\n(function (ResourceNotFoundException) {\n ResourceNotFoundException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ResourceNotFoundException || (ResourceNotFoundException = {}));\nexport var TooManyRequestsException;\n(function (TooManyRequestsException) {\n TooManyRequestsException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(TooManyRequestsException || (TooManyRequestsException = {}));\nexport var UnauthorizedException;\n(function (UnauthorizedException) {\n UnauthorizedException.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(UnauthorizedException || (UnauthorizedException = {}));\nexport var ListAccountRolesRequest;\n(function (ListAccountRolesRequest) {\n ListAccountRolesRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(ListAccountRolesRequest || (ListAccountRolesRequest = {}));\nexport var RoleInfo;\n(function (RoleInfo) {\n RoleInfo.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(RoleInfo || (RoleInfo = {}));\nexport var ListAccountRolesResponse;\n(function (ListAccountRolesResponse) {\n ListAccountRolesResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ListAccountRolesResponse || (ListAccountRolesResponse = {}));\nexport var ListAccountsRequest;\n(function (ListAccountsRequest) {\n ListAccountsRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(ListAccountsRequest || (ListAccountsRequest = {}));\nexport var ListAccountsResponse;\n(function (ListAccountsResponse) {\n ListAccountsResponse.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };\n})(ListAccountsResponse || (ListAccountsResponse = {}));\nexport var LogoutRequest;\n(function (LogoutRequest) {\n LogoutRequest.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.accessToken && { accessToken: SENSITIVE_STRING }))); };\n})(LogoutRequest || (LogoutRequest = {}));\n","import { __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { loadConfig } from \"@aws-sdk/node-config-provider\";\nimport { platform, release } from \"os\";\nimport { env, versions } from \"process\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport var UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport var UA_APP_ID_INI_NAME = \"sdk-ua-app-id\";\nexport var defaultUserAgent = function (_a) {\n var serviceId = _a.serviceId, clientVersion = _a.clientVersion;\n var sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"os/\" + platform(), release()],\n [\"lang/js\"],\n [\"md/nodejs\", \"\" + versions.node],\n ];\n var 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 var appIdPromise = loadConfig({\n environmentVariableSelector: function (env) { return env[UA_APP_ID_ENV_NAME]; },\n configFileSelector: function (profile) { return profile[UA_APP_ID_INI_NAME]; },\n default: undefined,\n })();\n var resolvedUserAgent = undefined;\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var appId;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!!resolvedUserAgent) return [3, 2];\n return [4, appIdPromise];\n case 1:\n appId = _a.sent();\n resolvedUserAgent = appId ? __spreadArray(__spreadArray([], __read(sections)), [[\"app/\" + appId]]) : __spreadArray([], __read(sections));\n _a.label = 2;\n case 2: return [2, resolvedUserAgent];\n }\n });\n }); };\n};\n","import { fromArrayBuffer, fromString } from \"@aws-sdk/util-buffer-from\";\nexport var fromUtf8 = function (input) {\n var buf = fromString(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\nexport var toUtf8 = function (input) {\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { getRegionInfo } from \"@aws-sdk/config-resolver\";\nvar regionHash = {\n \"ap-northeast-1\": {\n variants: [\n {\n hostname: \"portal.sso.ap-northeast-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-northeast-1\",\n },\n \"ap-northeast-2\": {\n variants: [\n {\n hostname: \"portal.sso.ap-northeast-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-northeast-2\",\n },\n \"ap-south-1\": {\n variants: [\n {\n hostname: \"portal.sso.ap-south-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-south-1\",\n },\n \"ap-southeast-1\": {\n variants: [\n {\n hostname: \"portal.sso.ap-southeast-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-southeast-1\",\n },\n \"ap-southeast-2\": {\n variants: [\n {\n hostname: \"portal.sso.ap-southeast-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ap-southeast-2\",\n },\n \"ca-central-1\": {\n variants: [\n {\n hostname: \"portal.sso.ca-central-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"ca-central-1\",\n },\n \"eu-central-1\": {\n variants: [\n {\n hostname: \"portal.sso.eu-central-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-central-1\",\n },\n \"eu-north-1\": {\n variants: [\n {\n hostname: \"portal.sso.eu-north-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-north-1\",\n },\n \"eu-west-1\": {\n variants: [\n {\n hostname: \"portal.sso.eu-west-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-west-1\",\n },\n \"eu-west-2\": {\n variants: [\n {\n hostname: \"portal.sso.eu-west-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-west-2\",\n },\n \"eu-west-3\": {\n variants: [\n {\n hostname: \"portal.sso.eu-west-3.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"eu-west-3\",\n },\n \"sa-east-1\": {\n variants: [\n {\n hostname: \"portal.sso.sa-east-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"sa-east-1\",\n },\n \"us-east-1\": {\n variants: [\n {\n hostname: \"portal.sso.us-east-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-east-1\",\n },\n \"us-east-2\": {\n variants: [\n {\n hostname: \"portal.sso.us-east-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-east-2\",\n },\n \"us-gov-west-1\": {\n variants: [\n {\n hostname: \"portal.sso.us-gov-west-1.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-gov-west-1\",\n },\n \"us-west-2\": {\n variants: [\n {\n hostname: \"portal.sso.us-west-2.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-west-2\",\n },\n};\nvar partitionHash = {\n aws: {\n regions: [\n \"af-south-1\",\n \"ap-east-1\",\n \"ap-northeast-1\",\n \"ap-northeast-2\",\n \"ap-northeast-3\",\n \"ap-south-1\",\n \"ap-southeast-1\",\n \"ap-southeast-2\",\n \"ap-southeast-3\",\n \"ca-central-1\",\n \"eu-central-1\",\n \"eu-north-1\",\n \"eu-south-1\",\n \"eu-west-1\",\n \"eu-west-2\",\n \"eu-west-3\",\n \"me-south-1\",\n \"sa-east-1\",\n \"us-east-1\",\n \"us-east-2\",\n \"us-west-1\",\n \"us-west-2\",\n ],\n regionRegex: \"^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"portal.sso-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"portal.sso.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-cn\": {\n regions: [\"cn-north-1\", \"cn-northwest-1\"],\n regionRegex: \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.amazonaws.com.cn\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.amazonaws.com.cn\",\n tags: [\"fips\"],\n },\n {\n hostname: \"portal.sso-fips.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"portal.sso.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-iso\": {\n regions: [\"us-iso-east-1\", \"us-iso-west-1\"],\n regionRegex: \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.c2s.ic.gov\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.c2s.ic.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-iso-b\": {\n regions: [\"us-isob-east-1\"],\n regionRegex: \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.sc2s.sgov.gov\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.sc2s.sgov.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-us-gov\": {\n regions: [\"us-gov-east-1\", \"us-gov-west-1\"],\n regionRegex: \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"portal.sso.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"portal.sso-fips.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"portal.sso-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"portal.sso.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n};\nexport var defaultRegionInfoProvider = function (region, options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, getRegionInfo(region, __assign(__assign({}, options), { signingService: \"awsssoportal\", regionHash: regionHash, partitionHash: partitionHash }))];\n });\n}); };\n","import { __extends } from \"tslib\";\nimport { resolveEndpointsConfig, resolveRegionConfig, } from \"@aws-sdk/config-resolver\";\nimport { getContentLengthPlugin } from \"@aws-sdk/middleware-content-length\";\nimport { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@aws-sdk/middleware-retry\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { Client as __Client, } from \"@aws-sdk/smithy-client\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nvar SSOClient = (function (_super) {\n __extends(SSOClient, _super);\n function SSOClient(configuration) {\n var _this = this;\n var _config_0 = __getRuntimeConfig(configuration);\n var _config_1 = resolveRegionConfig(_config_0);\n var _config_2 = resolveEndpointsConfig(_config_1);\n var _config_3 = resolveRetryConfig(_config_2);\n var _config_4 = resolveHostHeaderConfig(_config_3);\n var _config_5 = resolveUserAgentConfig(_config_4);\n _this = _super.call(this, _config_5) || this;\n _this.config = _config_5;\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(getUserAgentPlugin(_this.config));\n return _this;\n }\n SSOClient.prototype.destroy = function () {\n _super.prototype.destroy.call(this);\n };\n return SSOClient;\n}(__Client));\nexport { SSOClient };\n","import { __assign } from \"tslib\";\nimport packageInfo from \"../package.json\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@aws-sdk/config-resolver\";\nimport { Hash } from \"@aws-sdk/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@aws-sdk/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@aws-sdk/node-config-provider\";\nimport { NodeHttpHandler, streamCollector } from \"@aws-sdk/node-http-handler\";\nimport { fromBase64, toBase64 } from \"@aws-sdk/util-base64-node\";\nimport { calculateBodyLength } from \"@aws-sdk/util-body-length-node\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { fromUtf8, toUtf8 } from \"@aws-sdk/util-utf8-node\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { emitWarningIfUnsupportedVersion } from \"@aws-sdk/smithy-client\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;\n emitWarningIfUnsupportedVersion(process.version);\n var clientSharedValues = getSharedRuntimeConfig(config);\n return __assign(__assign(__assign({}, clientSharedValues), config), { runtime: \"node\", base64Decoder: (_a = config === null || config === void 0 ? void 0 : config.base64Decoder) !== null && _a !== void 0 ? _a : fromBase64, base64Encoder: (_b = config === null || config === void 0 ? void 0 : config.base64Encoder) !== null && _b !== void 0 ? _b : toBase64, bodyLengthChecker: (_c = config === null || config === void 0 ? void 0 : config.bodyLengthChecker) !== null && _c !== void 0 ? _c : calculateBodyLength, defaultUserAgentProvider: (_d = config === null || config === void 0 ? void 0 : config.defaultUserAgentProvider) !== null && _d !== void 0 ? _d : defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }), maxAttempts: (_e = config === null || config === void 0 ? void 0 : config.maxAttempts) !== null && _e !== void 0 ? _e : loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS), region: (_f = config === null || config === void 0 ? void 0 : config.region) !== null && _f !== void 0 ? _f : loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS), requestHandler: (_g = config === null || config === void 0 ? void 0 : config.requestHandler) !== null && _g !== void 0 ? _g : new NodeHttpHandler(), retryMode: (_h = config === null || config === void 0 ? void 0 : config.retryMode) !== null && _h !== void 0 ? _h : loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: (_j = config === null || config === void 0 ? void 0 : config.sha256) !== null && _j !== void 0 ? _j : Hash.bind(null, \"sha256\"), streamCollector: (_k = config === null || config === void 0 ? void 0 : config.streamCollector) !== null && _k !== void 0 ? _k : streamCollector, useDualstackEndpoint: (_l = config === null || config === void 0 ? void 0 : config.useDualstackEndpoint) !== null && _l !== void 0 ? _l : loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), useFipsEndpoint: (_m = config === null || config === void 0 ? void 0 : config.useFipsEndpoint) !== null && _m !== void 0 ? _m : loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: (_o = config === null || config === void 0 ? void 0 : config.utf8Decoder) !== null && _o !== void 0 ? _o : fromUtf8, utf8Encoder: (_p = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _p !== void 0 ? _p : toUtf8 });\n};\n","import { parseUrl } from \"@aws-sdk/url-parser\";\nimport { defaultRegionInfoProvider } from \"./endpoints\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e;\n return ({\n apiVersion: \"2019-06-10\",\n disableHostPrefix: (_a = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _a !== void 0 ? _a : false,\n logger: (_b = config === null || config === void 0 ? void 0 : config.logger) !== null && _b !== void 0 ? _b : {},\n regionInfoProvider: (_c = config === null || config === void 0 ? void 0 : config.regionInfoProvider) !== null && _c !== void 0 ? _c : defaultRegionInfoProvider,\n serviceId: (_d = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _d !== void 0 ? _d : \"SSO\",\n urlParser: (_e = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _e !== void 0 ? _e : parseUrl,\n });\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { HttpRequest as __HttpRequest } from \"@aws-sdk/protocol-http\";\nimport { expectLong as __expectLong, expectNonNull as __expectNonNull, expectObject as __expectObject, expectString as __expectString, } from \"@aws-sdk/smithy-client\";\nexport var serializeAws_restJson1GetRoleCredentialsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/federation/credentials\";\n query = __assign(__assign({}, (input.roleName !== undefined && { role_name: input.roleName })), (input.accountId !== undefined && { account_id: input.accountId }));\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"GET\",\n headers: headers,\n path: resolvedPath,\n query: query,\n body: body,\n })];\n }\n });\n}); };\nexport var serializeAws_restJson1ListAccountRolesCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/assignment/roles\";\n query = __assign(__assign(__assign({}, (input.nextToken !== undefined && { next_token: input.nextToken })), (input.maxResults !== undefined && { max_result: input.maxResults.toString() })), (input.accountId !== undefined && { account_id: input.accountId }));\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"GET\",\n headers: headers,\n path: resolvedPath,\n query: query,\n body: body,\n })];\n }\n });\n}); };\nexport var serializeAws_restJson1ListAccountsCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, query, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/assignment/accounts\";\n query = __assign(__assign({}, (input.nextToken !== undefined && { next_token: input.nextToken })), (input.maxResults !== undefined && { max_result: input.maxResults.toString() }));\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"GET\",\n headers: headers,\n path: resolvedPath,\n query: query,\n body: body,\n })];\n }\n });\n}); };\nexport var serializeAws_restJson1LogoutCommand = function (input, context) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, hostname, _b, protocol, port, basePath, headers, resolvedPath, body;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0: return [4, context.endpoint()];\n case 1:\n _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? \"https\" : _b, port = _a.port, basePath = _a.path;\n headers = __assign({}, (isSerializableHeaderValue(input.accessToken) && { \"x-amz-sso_bearer_token\": input.accessToken }));\n resolvedPath = \"\" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith(\"/\")) ? basePath.slice(0, -1) : basePath || \"\") + \"/logout\";\n return [2, new __HttpRequest({\n protocol: protocol,\n hostname: hostname,\n port: port,\n method: \"POST\",\n headers: headers,\n path: resolvedPath,\n body: body,\n })];\n }\n });\n}); };\nexport var deserializeAws_restJson1GetRoleCredentialsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1GetRoleCredentialsCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n roleCredentials: undefined,\n };\n _a = __expectNonNull;\n _b = __expectObject;\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n if (data.roleCredentials !== undefined && data.roleCredentials !== null) {\n contents.roleCredentials = deserializeAws_restJson1RoleCredentials(data.roleCredentials, context);\n }\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1GetRoleCredentialsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"ResourceNotFoundException\": return [3, 4];\n case \"com.amazonaws.sso#ResourceNotFoundException\": return [3, 4];\n case \"TooManyRequestsException\": return [3, 6];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 6];\n case \"UnauthorizedException\": return [3, 8];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_restJson1ListAccountRolesCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1ListAccountRolesCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n nextToken: undefined,\n roleList: undefined,\n };\n _a = __expectNonNull;\n _b = __expectObject;\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n if (data.nextToken !== undefined && data.nextToken !== null) {\n contents.nextToken = __expectString(data.nextToken);\n }\n if (data.roleList !== undefined && data.roleList !== null) {\n contents.roleList = deserializeAws_restJson1RoleListType(data.roleList, context);\n }\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1ListAccountRolesCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"ResourceNotFoundException\": return [3, 4];\n case \"com.amazonaws.sso#ResourceNotFoundException\": return [3, 4];\n case \"TooManyRequestsException\": return [3, 6];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 6];\n case \"UnauthorizedException\": return [3, 8];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_restJson1ListAccountsCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data, _a, _b;\n return __generator(this, function (_c) {\n switch (_c.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1ListAccountsCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n accountList: undefined,\n nextToken: undefined,\n };\n _a = __expectNonNull;\n _b = __expectObject;\n return [4, parseBody(output.body, context)];\n case 1:\n data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), \"body\"]);\n if (data.accountList !== undefined && data.accountList !== null) {\n contents.accountList = deserializeAws_restJson1AccountListType(data.accountList, context);\n }\n if (data.nextToken !== undefined && data.nextToken !== null) {\n contents.nextToken = __expectString(data.nextToken);\n }\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1ListAccountsCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, _f, parsedBody, message;\n var _g;\n return __generator(this, function (_h) {\n switch (_h.label) {\n case 0:\n _a = [__assign({}, output)];\n _g = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_g.body = _h.sent(), _g)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"ResourceNotFoundException\": return [3, 4];\n case \"com.amazonaws.sso#ResourceNotFoundException\": return [3, 4];\n case \"TooManyRequestsException\": return [3, 6];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 6];\n case \"UnauthorizedException\": return [3, 8];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 8];\n }\n return [3, 10];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1ResourceNotFoundExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 8:\n _f = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 9:\n response = __assign.apply(void 0, [__assign.apply(void 0, _f.concat([(_h.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 11];\n case 10:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _h.label = 11;\n case 11:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nexport var deserializeAws_restJson1LogoutCommand = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (output.statusCode !== 200 && output.statusCode >= 300) {\n return [2, deserializeAws_restJson1LogoutCommandError(output, context)];\n }\n contents = {\n $metadata: deserializeMetadata(output),\n };\n return [4, collectBody(output.body, context)];\n case 1:\n _a.sent();\n return [2, Promise.resolve(contents)];\n }\n });\n}); };\nvar deserializeAws_restJson1LogoutCommandError = function (output, context) { return __awaiter(void 0, void 0, void 0, function () {\n var parsedOutput, _a, response, errorCode, _b, _c, _d, _e, parsedBody, message;\n var _f;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n _a = [__assign({}, output)];\n _f = {};\n return [4, parseBody(output.body, context)];\n case 1:\n parsedOutput = __assign.apply(void 0, _a.concat([(_f.body = _g.sent(), _f)]));\n errorCode = \"UnknownError\";\n errorCode = loadRestJsonErrorCode(output, parsedOutput.body);\n _b = errorCode;\n switch (_b) {\n case \"InvalidRequestException\": return [3, 2];\n case \"com.amazonaws.sso#InvalidRequestException\": return [3, 2];\n case \"TooManyRequestsException\": return [3, 4];\n case \"com.amazonaws.sso#TooManyRequestsException\": return [3, 4];\n case \"UnauthorizedException\": return [3, 6];\n case \"com.amazonaws.sso#UnauthorizedException\": return [3, 6];\n }\n return [3, 8];\n case 2:\n _c = [{}];\n return [4, deserializeAws_restJson1InvalidRequestExceptionResponse(parsedOutput, context)];\n case 3:\n response = __assign.apply(void 0, [__assign.apply(void 0, _c.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 4:\n _d = [{}];\n return [4, deserializeAws_restJson1TooManyRequestsExceptionResponse(parsedOutput, context)];\n case 5:\n response = __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 6:\n _e = [{}];\n return [4, deserializeAws_restJson1UnauthorizedExceptionResponse(parsedOutput, context)];\n case 7:\n response = __assign.apply(void 0, [__assign.apply(void 0, _e.concat([(_g.sent())])), { name: errorCode, $metadata: deserializeMetadata(output) }]);\n return [3, 9];\n case 8:\n parsedBody = parsedOutput.body;\n errorCode = parsedBody.code || parsedBody.Code || errorCode;\n response = __assign(__assign({}, parsedBody), { name: \"\" + errorCode, message: parsedBody.message || parsedBody.Message || errorCode, $fault: \"client\", $metadata: deserializeMetadata(output) });\n _g.label = 9;\n case 9:\n message = response.message || response.Message || errorCode;\n response.message = message;\n delete response.Message;\n return [2, Promise.reject(Object.assign(new Error(message), response))];\n }\n });\n}); };\nvar deserializeAws_restJson1InvalidRequestExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"InvalidRequestException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1ResourceNotFoundExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"ResourceNotFoundException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1TooManyRequestsExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"TooManyRequestsException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1UnauthorizedExceptionResponse = function (parsedOutput, context) { return __awaiter(void 0, void 0, void 0, function () {\n var contents, data;\n return __generator(this, function (_a) {\n contents = {\n name: \"UnauthorizedException\",\n $fault: \"client\",\n $metadata: deserializeMetadata(parsedOutput),\n message: undefined,\n };\n data = parsedOutput.body;\n if (data.message !== undefined && data.message !== null) {\n contents.message = __expectString(data.message);\n }\n return [2, contents];\n });\n}); };\nvar deserializeAws_restJson1AccountInfo = function (output, context) {\n return {\n accountId: __expectString(output.accountId),\n accountName: __expectString(output.accountName),\n emailAddress: __expectString(output.emailAddress),\n };\n};\nvar deserializeAws_restJson1AccountListType = function (output, context) {\n return (output || [])\n .filter(function (e) { return e != null; })\n .map(function (entry) {\n if (entry === null) {\n return null;\n }\n return deserializeAws_restJson1AccountInfo(entry, context);\n });\n};\nvar deserializeAws_restJson1RoleCredentials = function (output, context) {\n return {\n accessKeyId: __expectString(output.accessKeyId),\n expiration: __expectLong(output.expiration),\n secretAccessKey: __expectString(output.secretAccessKey),\n sessionToken: __expectString(output.sessionToken),\n };\n};\nvar deserializeAws_restJson1RoleInfo = function (output, context) {\n return {\n accountId: __expectString(output.accountId),\n roleName: __expectString(output.roleName),\n };\n};\nvar deserializeAws_restJson1RoleListType = function (output, context) {\n return (output || [])\n .filter(function (e) { return e != null; })\n .map(function (entry) {\n if (entry === null) {\n return null;\n }\n return deserializeAws_restJson1RoleInfo(entry, context);\n });\n};\nvar deserializeMetadata = function (output) {\n var _a;\n return ({\n httpStatusCode: output.statusCode,\n requestId: (_a = output.headers[\"x-amzn-requestid\"]) !== null && _a !== void 0 ? _a : output.headers[\"x-amzn-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n });\n};\nvar collectBody = function (streamBody, context) {\n if (streamBody === void 0) { streamBody = new Uint8Array(); }\n if (streamBody instanceof Uint8Array) {\n return Promise.resolve(streamBody);\n }\n return context.streamCollector(streamBody) || Promise.resolve(new Uint8Array());\n};\nvar collectBodyString = function (streamBody, context) {\n return collectBody(streamBody, context).then(function (body) { return context.utf8Encoder(body); });\n};\nvar isSerializableHeaderValue = function (value) {\n return value !== undefined &&\n value !== null &&\n value !== \"\" &&\n (!Object.getOwnPropertyNames(value).includes(\"length\") || value.length != 0) &&\n (!Object.getOwnPropertyNames(value).includes(\"size\") || value.size != 0);\n};\nvar parseBody = function (streamBody, context) {\n return collectBodyString(streamBody, context).then(function (encoded) {\n if (encoded.length) {\n return JSON.parse(encoded);\n }\n return {};\n });\n};\nvar loadRestJsonErrorCode = function (output, data) {\n var findKey = function (object, key) { return Object.keys(object).find(function (k) { return k.toLowerCase() === key.toLowerCase(); }); };\n var sanitizeErrorCode = function (rawValue) {\n var cleanValue = rawValue;\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 var 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 return \"\";\n};\n","import { __extends } from \"tslib\";\nimport { getSerdePlugin } from \"@aws-sdk/middleware-serde\";\nimport { Command as $Command } from \"@aws-sdk/smithy-client\";\nimport { GetRoleCredentialsRequest, GetRoleCredentialsResponse } from \"../models/models_0\";\nimport { deserializeAws_restJson1GetRoleCredentialsCommand, serializeAws_restJson1GetRoleCredentialsCommand, } from \"../protocols/Aws_restJson1\";\nvar GetRoleCredentialsCommand = (function (_super) {\n __extends(GetRoleCredentialsCommand, _super);\n function GetRoleCredentialsCommand(input) {\n var _this = _super.call(this) || this;\n _this.input = input;\n return _this;\n }\n GetRoleCredentialsCommand.prototype.resolveMiddleware = function (clientStack, configuration, options) {\n this.middlewareStack.use(getSerdePlugin(configuration, this.serialize, this.deserialize));\n var stack = clientStack.concat(this.middlewareStack);\n var logger = configuration.logger;\n var clientName = \"SSOClient\";\n var commandName = \"GetRoleCredentialsCommand\";\n var handlerExecutionContext = {\n logger: logger,\n clientName: clientName,\n commandName: commandName,\n inputFilterSensitiveLog: GetRoleCredentialsRequest.filterSensitiveLog,\n outputFilterSensitiveLog: GetRoleCredentialsResponse.filterSensitiveLog,\n };\n var requestHandler = configuration.requestHandler;\n return stack.resolve(function (request) {\n return requestHandler.handle(request.request, options || {});\n }, handlerExecutionContext);\n };\n GetRoleCredentialsCommand.prototype.serialize = function (input, context) {\n return serializeAws_restJson1GetRoleCredentialsCommand(input, context);\n };\n GetRoleCredentialsCommand.prototype.deserialize = function (output, context) {\n return deserializeAws_restJson1GetRoleCredentialsCommand(output, context);\n };\n return GetRoleCredentialsCommand;\n}($Command));\nexport { GetRoleCredentialsCommand };\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { loadSharedConfigFiles, } from \"@aws-sdk/shared-ini-file-loader\";\nexport var ENV_PROFILE = \"AWS_PROFILE\";\nexport var DEFAULT_PROFILE = \"default\";\nexport var parseKnownFiles = function (init) { return __awaiter(void 0, void 0, void 0, function () {\n var _a, loadedConfig, parsedFiles;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n _a = init.loadedConfig, loadedConfig = _a === void 0 ? loadSharedConfigFiles(init) : _a;\n return [4, loadedConfig];\n case 1:\n parsedFiles = _b.sent();\n return [2, __assign(__assign({}, parsedFiles.configFile), parsedFiles.credentialsFile)];\n }\n });\n}); };\nexport var getMasterProfileName = function (init) {\n return init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE;\n};\n","import { __awaiter, __generator } from \"tslib\";\nimport { GetRoleCredentialsCommand, SSOClient } from \"@aws-sdk/client-sso\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { getHomeDir } from \"@aws-sdk/shared-ini-file-loader\";\nimport { getMasterProfileName, parseKnownFiles } from \"@aws-sdk/util-credentials\";\nimport { createHash } from \"crypto\";\nimport { readFileSync } from \"fs\";\nimport { join } from \"path\";\nexport var EXPIRE_WINDOW_MS = 15 * 60 * 1000;\nvar SHOULD_FAIL_CREDENTIAL_CHAIN = false;\nexport var fromSSO = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var ssoStartUrl, ssoAccountId, ssoRegion, ssoRoleName, ssoClient, profiles, profileName, profile, _a, sso_start_url, sso_account_id, sso_region, sso_role_name;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n ssoStartUrl = init.ssoStartUrl, ssoAccountId = init.ssoAccountId, ssoRegion = init.ssoRegion, ssoRoleName = init.ssoRoleName, ssoClient = init.ssoClient;\n if (!(!ssoStartUrl && !ssoAccountId && !ssoRegion && !ssoRoleName)) return [3, 2];\n return [4, parseKnownFiles(init)];\n case 1:\n profiles = _b.sent();\n profileName = getMasterProfileName(init);\n profile = profiles[profileName];\n if (!isSsoProfile(profile)) {\n throw new CredentialsProviderError(\"Profile \" + profileName + \" is not configured with SSO credentials.\");\n }\n _a = validateSsoProfile(profile), sso_start_url = _a.sso_start_url, sso_account_id = _a.sso_account_id, sso_region = _a.sso_region, sso_role_name = _a.sso_role_name;\n return [2, resolveSSOCredentials({\n ssoStartUrl: sso_start_url,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n ssoClient: ssoClient,\n })];\n case 2:\n if (!ssoStartUrl || !ssoAccountId || !ssoRegion || !ssoRoleName) {\n throw new CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include \"ssoStartUrl\",' +\n ' \"ssoAccountId\", \"ssoRegion\", \"ssoRoleName\"');\n }\n else {\n return [2, resolveSSOCredentials({ ssoStartUrl: ssoStartUrl, ssoAccountId: ssoAccountId, ssoRegion: ssoRegion, ssoRoleName: ssoRoleName, ssoClient: ssoClient })];\n }\n _b.label = 3;\n case 3: return [2];\n }\n });\n }); };\n};\nvar resolveSSOCredentials = function (_a) {\n var ssoStartUrl = _a.ssoStartUrl, ssoAccountId = _a.ssoAccountId, ssoRegion = _a.ssoRegion, ssoRoleName = _a.ssoRoleName, ssoClient = _a.ssoClient;\n return __awaiter(void 0, void 0, void 0, function () {\n var hasher, cacheName, tokenFile, token, accessToken, sso, ssoResp, e_1, _b, _c, accessKeyId, secretAccessKey, sessionToken, expiration;\n return __generator(this, function (_d) {\n switch (_d.label) {\n case 0:\n hasher = createHash(\"sha1\");\n cacheName = hasher.update(ssoStartUrl).digest(\"hex\");\n tokenFile = join(getHomeDir(), \".aws\", \"sso\", \"cache\", cacheName + \".json\");\n try {\n token = JSON.parse(readFileSync(tokenFile, { encoding: \"utf-8\" }));\n if (new Date(token.expiresAt).getTime() - Date.now() <= EXPIRE_WINDOW_MS) {\n throw new Error(\"SSO token is expired.\");\n }\n }\n catch (e) {\n throw new CredentialsProviderError(\"The SSO session associated with this profile has expired or is otherwise invalid. To refresh this SSO session \" +\n \"run aws sso login with the corresponding profile.\", SHOULD_FAIL_CREDENTIAL_CHAIN);\n }\n accessToken = token.accessToken;\n sso = ssoClient || new SSOClient({ region: ssoRegion });\n _d.label = 1;\n case 1:\n _d.trys.push([1, 3, , 4]);\n return [4, sso.send(new GetRoleCredentialsCommand({\n accountId: ssoAccountId,\n roleName: ssoRoleName,\n accessToken: accessToken,\n }))];\n case 2:\n ssoResp = _d.sent();\n return [3, 4];\n case 3:\n e_1 = _d.sent();\n throw CredentialsProviderError.from(e_1, SHOULD_FAIL_CREDENTIAL_CHAIN);\n case 4:\n _b = ssoResp.roleCredentials, _c = _b === void 0 ? {} : _b, accessKeyId = _c.accessKeyId, secretAccessKey = _c.secretAccessKey, sessionToken = _c.sessionToken, expiration = _c.expiration;\n if (!accessKeyId || !secretAccessKey || !sessionToken || !expiration) {\n throw new CredentialsProviderError(\"SSO returns an invalid temporary credential.\", SHOULD_FAIL_CREDENTIAL_CHAIN);\n }\n return [2, { accessKeyId: accessKeyId, secretAccessKey: secretAccessKey, sessionToken: sessionToken, expiration: new Date(expiration) }];\n }\n });\n });\n};\nexport var validateSsoProfile = function (profile) {\n var sso_start_url = profile.sso_start_url, sso_account_id = profile.sso_account_id, sso_region = profile.sso_region, sso_role_name = profile.sso_role_name;\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\\\", \\\"sso_region\\\", \" +\n (\"\\\"sso_role_name\\\", \\\"sso_start_url\\\". Got \" + Object.keys(profile).join(\", \") + \"\\nReference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html\"), SHOULD_FAIL_CREDENTIAL_CHAIN);\n }\n return profile;\n};\nexport var isSsoProfile = function (arg) {\n return arg &&\n (typeof arg.sso_start_url === \"string\" ||\n typeof arg.sso_account_id === \"string\" ||\n typeof arg.sso_region === \"string\" ||\n typeof arg.sso_role_name === \"string\");\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { readFileSync } from \"fs\";\nimport { fromWebToken } from \"./fromWebToken\";\nvar ENV_TOKEN_FILE = \"AWS_WEB_IDENTITY_TOKEN_FILE\";\nvar ENV_ROLE_ARN = \"AWS_ROLE_ARN\";\nvar ENV_ROLE_SESSION_NAME = \"AWS_ROLE_SESSION_NAME\";\nexport var fromTokenFile = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, resolveTokenFile(init)];\n });\n }); };\n};\nvar resolveTokenFile = function (init) {\n var _a, _b, _c;\n var webIdentityTokenFile = (_a = init === null || init === void 0 ? void 0 : init.webIdentityTokenFile) !== null && _a !== void 0 ? _a : process.env[ENV_TOKEN_FILE];\n var roleArn = (_b = init === null || init === void 0 ? void 0 : init.roleArn) !== null && _b !== void 0 ? _b : process.env[ENV_ROLE_ARN];\n var roleSessionName = (_c = init === null || init === void 0 ? void 0 : init.roleSessionName) !== null && _c !== void 0 ? _c : process.env[ENV_ROLE_SESSION_NAME];\n if (!webIdentityTokenFile || !roleArn) {\n throw new CredentialsProviderError(\"Web identity configuration not specified\");\n }\n return fromWebToken(__assign(__assign({}, init), { webIdentityToken: readFileSync(webIdentityTokenFile, { encoding: \"ascii\" }), roleArn: roleArn, roleSessionName: roleSessionName }))();\n};\n","import { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nexport var fromWebToken = function (init) {\n return function () {\n var roleArn = init.roleArn, roleSessionName = init.roleSessionName, webIdentityToken = init.webIdentityToken, providerId = init.providerId, policyArns = init.policyArns, policy = init.policy, durationSeconds = init.durationSeconds, roleAssumerWithWebIdentity = init.roleAssumerWithWebIdentity;\n if (!roleAssumerWithWebIdentity) {\n throw new CredentialsProviderError(\"Role Arn '\" + roleArn + \"' needs to be assumed with web identity,\" +\n \" but no role assumption callback was provided.\", false);\n }\n return roleAssumerWithWebIdentity({\n RoleArn: roleArn,\n RoleSessionName: roleSessionName !== null && roleSessionName !== void 0 ? 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};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { fromEnv } from \"@aws-sdk/credential-provider-env\";\nimport { fromContainerMetadata, fromInstanceMetadata } from \"@aws-sdk/credential-provider-imds\";\nimport { fromSSO, isSsoProfile, validateSsoProfile } from \"@aws-sdk/credential-provider-sso\";\nimport { fromTokenFile } from \"@aws-sdk/credential-provider-web-identity\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { getMasterProfileName, parseKnownFiles } from \"@aws-sdk/util-credentials\";\nvar isStaticCredsProfile = function (arg) {\n return 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};\nvar isWebIdentityProfile = function (arg) {\n return 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;\n};\nvar isAssumeRoleProfile = function (arg) {\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};\nvar isAssumeRoleWithSourceProfile = function (arg) {\n return isAssumeRoleProfile(arg) && typeof arg.source_profile === \"string\" && typeof arg.credential_source === \"undefined\";\n};\nvar isAssumeRoleWithProviderProfile = function (arg) {\n return isAssumeRoleProfile(arg) && typeof arg.credential_source === \"string\" && typeof arg.source_profile === \"undefined\";\n};\nexport var fromIni = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var profiles;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, parseKnownFiles(init)];\n case 1:\n profiles = _a.sent();\n return [2, resolveProfileData(getMasterProfileName(init), profiles, init)];\n }\n });\n }); };\n};\nvar resolveProfileData = function (profileName, profiles, options, visitedProfiles) {\n if (visitedProfiles === void 0) { visitedProfiles = {}; }\n return __awaiter(void 0, void 0, void 0, function () {\n var data, ExternalId, mfa_serial, RoleArn, _a, RoleSessionName, source_profile, credential_source, sourceCreds, params, _b, _c, _d, _e, sso_start_url, sso_account_id, sso_region, sso_role_name;\n var _f;\n return __generator(this, function (_g) {\n switch (_g.label) {\n case 0:\n data = profiles[profileName];\n if (Object.keys(visitedProfiles).length > 0 && isStaticCredsProfile(data)) {\n return [2, resolveStaticCredentials(data)];\n }\n if (!(isAssumeRoleWithSourceProfile(data) || isAssumeRoleWithProviderProfile(data))) return [3, 4];\n ExternalId = data.external_id, mfa_serial = data.mfa_serial, RoleArn = data.role_arn, _a = data.role_session_name, RoleSessionName = _a === void 0 ? \"aws-sdk-js-\" + Date.now() : _a, source_profile = data.source_profile, credential_source = data.credential_source;\n if (!options.roleAssumer) {\n throw new CredentialsProviderError(\"Profile \" + profileName + \" requires a role to be assumed, but no\" + \" role assumption callback was provided.\", false);\n }\n if (source_profile && source_profile in visitedProfiles) {\n throw new CredentialsProviderError(\"Detected a cycle attempting to resolve credentials for profile\" +\n (\" \" + getMasterProfileName(options) + \". Profiles visited: \") +\n Object.keys(visitedProfiles).join(\", \"), false);\n }\n sourceCreds = source_profile\n ? resolveProfileData(source_profile, profiles, options, __assign(__assign({}, visitedProfiles), (_f = {}, _f[source_profile] = true, _f)))\n : resolveCredentialSource(credential_source, profileName)();\n params = { RoleArn: RoleArn, RoleSessionName: RoleSessionName, ExternalId: ExternalId };\n if (!mfa_serial) return [3, 2];\n if (!options.mfaCodeProvider) {\n throw new CredentialsProviderError(\"Profile \" + profileName + \" requires multi-factor authentication,\" + \" but no MFA code callback was provided.\", false);\n }\n params.SerialNumber = mfa_serial;\n _b = params;\n return [4, options.mfaCodeProvider(mfa_serial)];\n case 1:\n _b.TokenCode = _g.sent();\n _g.label = 2;\n case 2:\n _d = (_c = options).roleAssumer;\n return [4, sourceCreds];\n case 3: return [2, _d.apply(_c, [_g.sent(), params])];\n case 4:\n if (isStaticCredsProfile(data)) {\n return [2, resolveStaticCredentials(data)];\n }\n if (isWebIdentityProfile(data)) {\n return [2, resolveWebIdentityCredentials(data, options)];\n }\n if (isSsoProfile(data)) {\n _e = validateSsoProfile(data), sso_start_url = _e.sso_start_url, sso_account_id = _e.sso_account_id, sso_region = _e.sso_region, sso_role_name = _e.sso_role_name;\n return [2, fromSSO({\n ssoStartUrl: sso_start_url,\n ssoAccountId: sso_account_id,\n ssoRegion: sso_region,\n ssoRoleName: sso_role_name,\n })()];\n }\n throw new CredentialsProviderError(\"Profile \" + profileName + \" could not be found or parsed in shared\" + \" credentials file.\");\n }\n });\n });\n};\nvar resolveCredentialSource = function (credentialSource, profileName) {\n var sourceProvidersMap = {\n EcsContainer: fromContainerMetadata,\n Ec2InstanceMetadata: fromInstanceMetadata,\n Environment: fromEnv,\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.\");\n }\n};\nvar resolveStaticCredentials = function (profile) {\n return Promise.resolve({\n accessKeyId: profile.aws_access_key_id,\n secretAccessKey: profile.aws_secret_access_key,\n sessionToken: profile.aws_session_token,\n });\n};\nvar resolveWebIdentityCredentials = function (profile, options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, fromTokenFile({\n webIdentityTokenFile: profile.web_identity_token_file,\n roleArn: profile.role_arn,\n roleSessionName: profile.role_session_name,\n roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,\n })()];\n });\n}); };\n","const __WEBPACK_NAMESPACE_OBJECT__ = require(\"child_process\");","import { __awaiter, __generator } from \"tslib\";\nimport { CredentialsProviderError } from \"@aws-sdk/property-provider\";\nimport { getMasterProfileName, parseKnownFiles } from \"@aws-sdk/util-credentials\";\nimport { exec } from \"child_process\";\nexport var ENV_PROFILE = \"AWS_PROFILE\";\nexport var fromProcess = function (init) {\n if (init === void 0) { init = {}; }\n return function () { return __awaiter(void 0, void 0, void 0, function () {\n var profiles;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4, parseKnownFiles(init)];\n case 1:\n profiles = _a.sent();\n return [2, resolveProcessCredentials(getMasterProfileName(init), profiles)];\n }\n });\n }); };\n};\nvar resolveProcessCredentials = function (profileName, profiles) { return __awaiter(void 0, void 0, void 0, function () {\n var profile, credentialProcess;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n profile = profiles[profileName];\n if (!profiles[profileName]) return [3, 4];\n credentialProcess = profile[\"credential_process\"];\n if (!(credentialProcess !== undefined)) return [3, 2];\n return [4, execPromise(credentialProcess)\n .then(function (processResult) {\n var data;\n try {\n data = JSON.parse(processResult);\n }\n catch (_a) {\n throw Error(\"Profile \" + profileName + \" credential_process returned invalid JSON.\");\n }\n var version = data.Version, accessKeyId = data.AccessKeyId, secretAccessKey = data.SecretAccessKey, sessionToken = data.SessionToken, expiration = data.Expiration;\n if (version !== 1) {\n throw Error(\"Profile \" + profileName + \" credential_process did not return Version 1.\");\n }\n if (accessKeyId === undefined || secretAccessKey === undefined) {\n throw Error(\"Profile \" + profileName + \" credential_process returned invalid credentials.\");\n }\n var expirationUnix;\n if (expiration) {\n var currentTime = new Date();\n var expireTime = new Date(expiration);\n if (expireTime < currentTime) {\n throw Error(\"Profile \" + profileName + \" credential_process returned expired credentials.\");\n }\n expirationUnix = Math.floor(new Date(expiration).valueOf() / 1000);\n }\n return {\n accessKeyId: accessKeyId,\n secretAccessKey: secretAccessKey,\n sessionToken: sessionToken,\n expirationUnix: expirationUnix,\n };\n })\n .catch(function (error) {\n throw new CredentialsProviderError(error.message);\n })];\n case 1: return [2, _a.sent()];\n case 2: throw new CredentialsProviderError(\"Profile \" + profileName + \" did not contain credential_process.\");\n case 3: return [3, 5];\n case 4: throw new CredentialsProviderError(\"Profile \" + profileName + \" could not be found in shared credentials file.\");\n case 5: return [2];\n }\n });\n}); };\nvar execPromise = function (command) {\n return new Promise(function (resolve, reject) {\n exec(command, function (error, stdout) {\n if (error) {\n reject(error);\n return;\n }\n resolve(stdout.trim());\n });\n });\n};\n","import { __assign, __awaiter, __generator, __read, __spreadArray } from \"tslib\";\nimport { fromEnv } from \"@aws-sdk/credential-provider-env\";\nimport { ENV_CMDS_FULL_URI, ENV_CMDS_RELATIVE_URI, fromContainerMetadata, fromInstanceMetadata, } from \"@aws-sdk/credential-provider-imds\";\nimport { fromIni } from \"@aws-sdk/credential-provider-ini\";\nimport { fromProcess } from \"@aws-sdk/credential-provider-process\";\nimport { fromSSO } from \"@aws-sdk/credential-provider-sso\";\nimport { fromTokenFile } from \"@aws-sdk/credential-provider-web-identity\";\nimport { chain, CredentialsProviderError, memoize } from \"@aws-sdk/property-provider\";\nimport { loadSharedConfigFiles } from \"@aws-sdk/shared-ini-file-loader\";\nimport { ENV_PROFILE } from \"@aws-sdk/util-credentials\";\nexport var ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport var defaultProvider = function (init) {\n if (init === void 0) { init = {}; }\n var options = __assign({ profile: process.env[ENV_PROFILE] }, init);\n if (!options.loadedConfig)\n options.loadedConfig = loadSharedConfigFiles(init);\n var providers = [\n fromSSO(options),\n fromIni(options),\n fromProcess(options),\n fromTokenFile(options),\n remoteProvider(options),\n function () { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n throw new CredentialsProviderError(\"Could not load credentials from any providers\", false);\n });\n }); },\n ];\n if (!options.profile)\n providers.unshift(fromEnv());\n var providerChain = chain.apply(void 0, __spreadArray([], __read(providers)));\n return memoize(providerChain, function (credentials) { return credentials.expiration !== undefined && credentials.expiration.getTime() - Date.now() < 300000; }, function (credentials) { return credentials.expiration !== undefined; });\n};\nvar remoteProvider = function (init) {\n if (process.env[ENV_CMDS_RELATIVE_URI] || process.env[ENV_CMDS_FULL_URI]) {\n return fromContainerMetadata(init);\n }\n if (process.env[ENV_IMDS_DISABLED]) {\n return function () { return Promise.reject(new CredentialsProviderError(\"EC2 Instance Metadata Service access disabled\")); };\n }\n return fromInstanceMetadata(init);\n};\n","import { __assign, __awaiter, __generator } from \"tslib\";\nimport { getRegionInfo } from \"@aws-sdk/config-resolver\";\nvar regionHash = {\n \"aws-global\": {\n variants: [\n {\n hostname: \"sts.amazonaws.com\",\n tags: [],\n },\n ],\n signingRegion: \"us-east-1\",\n },\n \"us-east-1\": {\n variants: [\n {\n hostname: \"sts.us-east-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-east-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-east-2\": {\n variants: [\n {\n hostname: \"sts.us-east-2.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-east-2.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-gov-east-1\": {\n variants: [\n {\n hostname: \"sts.us-gov-east-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts.us-gov-east-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-gov-west-1\": {\n variants: [\n {\n hostname: \"sts.us-gov-west-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts.us-gov-west-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-west-1\": {\n variants: [\n {\n hostname: \"sts.us-west-1.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-west-1.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n \"us-west-2\": {\n variants: [\n {\n hostname: \"sts.us-west-2.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.us-west-2.amazonaws.com\",\n tags: [\"fips\"],\n },\n ],\n },\n};\nvar partitionHash = {\n aws: {\n regions: [\n \"af-south-1\",\n \"ap-east-1\",\n \"ap-northeast-1\",\n \"ap-northeast-2\",\n \"ap-northeast-3\",\n \"ap-south-1\",\n \"ap-southeast-1\",\n \"ap-southeast-2\",\n \"ap-southeast-3\",\n \"aws-global\",\n \"ca-central-1\",\n \"eu-central-1\",\n \"eu-north-1\",\n \"eu-south-1\",\n \"eu-west-1\",\n \"eu-west-2\",\n \"eu-west-3\",\n \"me-south-1\",\n \"sa-east-1\",\n \"us-east-1\",\n \"us-east-1-fips\",\n \"us-east-2\",\n \"us-east-2-fips\",\n \"us-west-1\",\n \"us-west-1-fips\",\n \"us-west-2\",\n \"us-west-2-fips\",\n ],\n regionRegex: \"^(us|eu|ap|sa|ca|me|af)\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"sts-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"sts.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-cn\": {\n regions: [\"cn-north-1\", \"cn-northwest-1\"],\n regionRegex: \"^cn\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.amazonaws.com.cn\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.amazonaws.com.cn\",\n tags: [\"fips\"],\n },\n {\n hostname: \"sts-fips.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"sts.{region}.api.amazonwebservices.com.cn\",\n tags: [\"dualstack\"],\n },\n ],\n },\n \"aws-iso\": {\n regions: [\"us-iso-east-1\", \"us-iso-west-1\"],\n regionRegex: \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.c2s.ic.gov\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.c2s.ic.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-iso-b\": {\n regions: [\"us-isob-east-1\"],\n regionRegex: \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.sc2s.sgov.gov\",\n tags: [],\n },\n {\n hostname: \"sts-fips.{region}.sc2s.sgov.gov\",\n tags: [\"fips\"],\n },\n ],\n },\n \"aws-us-gov\": {\n regions: [\"us-gov-east-1\", \"us-gov-east-1-fips\", \"us-gov-west-1\", \"us-gov-west-1-fips\"],\n regionRegex: \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\",\n variants: [\n {\n hostname: \"sts.{region}.amazonaws.com\",\n tags: [],\n },\n {\n hostname: \"sts.{region}.amazonaws.com\",\n tags: [\"fips\"],\n },\n {\n hostname: \"sts-fips.{region}.api.aws\",\n tags: [\"dualstack\", \"fips\"],\n },\n {\n hostname: \"sts.{region}.api.aws\",\n tags: [\"dualstack\"],\n },\n ],\n },\n};\nexport var defaultRegionInfoProvider = function (region, options) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n return [2, getRegionInfo(region, __assign(__assign({}, options), { signingService: \"sts\", regionHash: regionHash, partitionHash: partitionHash }))];\n });\n}); };\n","import { __extends } from \"tslib\";\nimport { resolveEndpointsConfig, resolveRegionConfig, } from \"@aws-sdk/config-resolver\";\nimport { getContentLengthPlugin } from \"@aws-sdk/middleware-content-length\";\nimport { getHostHeaderPlugin, resolveHostHeaderConfig, } from \"@aws-sdk/middleware-host-header\";\nimport { getLoggerPlugin } from \"@aws-sdk/middleware-logger\";\nimport { getRetryPlugin, resolveRetryConfig } from \"@aws-sdk/middleware-retry\";\nimport { resolveStsAuthConfig } from \"@aws-sdk/middleware-sdk-sts\";\nimport { getUserAgentPlugin, resolveUserAgentConfig, } from \"@aws-sdk/middleware-user-agent\";\nimport { Client as __Client, } from \"@aws-sdk/smithy-client\";\nimport { getRuntimeConfig as __getRuntimeConfig } from \"./runtimeConfig\";\nvar STSClient = (function (_super) {\n __extends(STSClient, _super);\n function STSClient(configuration) {\n var _this = this;\n var _config_0 = __getRuntimeConfig(configuration);\n var _config_1 = resolveRegionConfig(_config_0);\n var _config_2 = resolveEndpointsConfig(_config_1);\n var _config_3 = resolveRetryConfig(_config_2);\n var _config_4 = resolveHostHeaderConfig(_config_3);\n var _config_5 = resolveStsAuthConfig(_config_4, { stsClientCtor: STSClient });\n var _config_6 = resolveUserAgentConfig(_config_5);\n _this = _super.call(this, _config_6) || this;\n _this.config = _config_6;\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(getUserAgentPlugin(_this.config));\n return _this;\n }\n STSClient.prototype.destroy = function () {\n _super.prototype.destroy.call(this);\n };\n return STSClient;\n}(__Client));\nexport { STSClient };\n","import { __assign } from \"tslib\";\nimport packageInfo from \"../package.json\";\nimport { decorateDefaultCredentialProvider } from \"./defaultStsRoleAssumers\";\nimport { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from \"@aws-sdk/config-resolver\";\nimport { defaultProvider as credentialDefaultProvider } from \"@aws-sdk/credential-provider-node\";\nimport { Hash } from \"@aws-sdk/hash-node\";\nimport { NODE_MAX_ATTEMPT_CONFIG_OPTIONS, NODE_RETRY_MODE_CONFIG_OPTIONS } from \"@aws-sdk/middleware-retry\";\nimport { loadConfig as loadNodeConfig } from \"@aws-sdk/node-config-provider\";\nimport { NodeHttpHandler, streamCollector } from \"@aws-sdk/node-http-handler\";\nimport { fromBase64, toBase64 } from \"@aws-sdk/util-base64-node\";\nimport { calculateBodyLength } from \"@aws-sdk/util-body-length-node\";\nimport { defaultUserAgent } from \"@aws-sdk/util-user-agent-node\";\nimport { fromUtf8, toUtf8 } from \"@aws-sdk/util-utf8-node\";\nimport { getRuntimeConfig as getSharedRuntimeConfig } from \"./runtimeConfig.shared\";\nimport { emitWarningIfUnsupportedVersion } from \"@aws-sdk/smithy-client\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;\n emitWarningIfUnsupportedVersion(process.version);\n var clientSharedValues = getSharedRuntimeConfig(config);\n return __assign(__assign(__assign({}, clientSharedValues), config), { runtime: \"node\", base64Decoder: (_a = config === null || config === void 0 ? void 0 : config.base64Decoder) !== null && _a !== void 0 ? _a : fromBase64, base64Encoder: (_b = config === null || config === void 0 ? void 0 : config.base64Encoder) !== null && _b !== void 0 ? _b : toBase64, bodyLengthChecker: (_c = config === null || config === void 0 ? void 0 : config.bodyLengthChecker) !== null && _c !== void 0 ? _c : calculateBodyLength, credentialDefaultProvider: (_d = config === null || config === void 0 ? void 0 : config.credentialDefaultProvider) !== null && _d !== void 0 ? _d : decorateDefaultCredentialProvider(credentialDefaultProvider), defaultUserAgentProvider: (_e = config === null || config === void 0 ? void 0 : config.defaultUserAgentProvider) !== null && _e !== void 0 ? _e : defaultUserAgent({ serviceId: clientSharedValues.serviceId, clientVersion: packageInfo.version }), maxAttempts: (_f = config === null || config === void 0 ? void 0 : config.maxAttempts) !== null && _f !== void 0 ? _f : loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS), region: (_g = config === null || config === void 0 ? void 0 : config.region) !== null && _g !== void 0 ? _g : loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS), requestHandler: (_h = config === null || config === void 0 ? void 0 : config.requestHandler) !== null && _h !== void 0 ? _h : new NodeHttpHandler(), retryMode: (_j = config === null || config === void 0 ? void 0 : config.retryMode) !== null && _j !== void 0 ? _j : loadNodeConfig(NODE_RETRY_MODE_CONFIG_OPTIONS), sha256: (_k = config === null || config === void 0 ? void 0 : config.sha256) !== null && _k !== void 0 ? _k : Hash.bind(null, \"sha256\"), streamCollector: (_l = config === null || config === void 0 ? void 0 : config.streamCollector) !== null && _l !== void 0 ? _l : streamCollector, useDualstackEndpoint: (_m = config === null || config === void 0 ? void 0 : config.useDualstackEndpoint) !== null && _m !== void 0 ? _m : loadNodeConfig(NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS), useFipsEndpoint: (_o = config === null || config === void 0 ? void 0 : config.useFipsEndpoint) !== null && _o !== void 0 ? _o : loadNodeConfig(NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS), utf8Decoder: (_p = config === null || config === void 0 ? void 0 : config.utf8Decoder) !== null && _p !== void 0 ? _p : fromUtf8, utf8Encoder: (_q = config === null || config === void 0 ? void 0 : config.utf8Encoder) !== null && _q !== void 0 ? _q : toUtf8 });\n};\n","import { parseUrl } from \"@aws-sdk/url-parser\";\nimport { defaultRegionInfoProvider } from \"./endpoints\";\nexport var getRuntimeConfig = function (config) {\n var _a, _b, _c, _d, _e;\n return ({\n apiVersion: \"2011-06-15\",\n disableHostPrefix: (_a = config === null || config === void 0 ? void 0 : config.disableHostPrefix) !== null && _a !== void 0 ? _a : false,\n logger: (_b = config === null || config === void 0 ? void 0 : config.logger) !== null && _b !== void 0 ? _b : {},\n regionInfoProvider: (_c = config === null || config === void 0 ? void 0 : config.regionInfoProvider) !== null && _c !== void 0 ? _c : defaultRegionInfoProvider,\n serviceId: (_d = config === null || config === void 0 ? void 0 : config.serviceId) !== null && _d !== void 0 ? _d : \"STS\",\n urlParser: (_e = config === null || config === void 0 ? void 0 : config.urlParser) !== null && _e !== void 0 ? _e : parseUrl,\n });\n};\n","import { __extends } from \"tslib\";\nimport { AssumeRoleCommand } from \"./commands/AssumeRoleCommand\";\nimport { AssumeRoleWithSAMLCommand, } from \"./commands/AssumeRoleWithSAMLCommand\";\nimport { AssumeRoleWithWebIdentityCommand, } from \"./commands/AssumeRoleWithWebIdentityCommand\";\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\";\nvar STS = (function (_super) {\n __extends(STS, _super);\n function STS() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n STS.prototype.assumeRole = function (args, optionsOrCb, cb) {\n var command = new AssumeRoleCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.assumeRoleWithSAML = function (args, optionsOrCb, cb) {\n var command = new AssumeRoleWithSAMLCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.assumeRoleWithWebIdentity = function (args, optionsOrCb, cb) {\n var command = new AssumeRoleWithWebIdentityCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.decodeAuthorizationMessage = function (args, optionsOrCb, cb) {\n var command = new DecodeAuthorizationMessageCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getAccessKeyInfo = function (args, optionsOrCb, cb) {\n var command = new GetAccessKeyInfoCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getCallerIdentity = function (args, optionsOrCb, cb) {\n var command = new GetCallerIdentityCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getFederationToken = function (args, optionsOrCb, cb) {\n var command = new GetFederationTokenCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n STS.prototype.getSessionToken = function (args, optionsOrCb, cb) {\n var command = new GetSessionTokenCommand(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(\"Expect http options but get \" + typeof optionsOrCb);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n return STS;\n}(STSClient));\nexport { STS };\n","import { __assign } from \"tslib\";\nimport { getDefaultRoleAssumer as StsGetDefaultRoleAssumer, getDefaultRoleAssumerWithWebIdentity as StsGetDefaultRoleAssumerWithWebIdentity, } from \"./defaultStsRoleAssumers\";\nimport { STSClient } from \"./STSClient\";\nexport var getDefaultRoleAssumer = function (stsOptions) {\n if (stsOptions === void 0) { stsOptions = {}; }\n return StsGetDefaultRoleAssumer(stsOptions, STSClient);\n};\nexport var getDefaultRoleAssumerWithWebIdentity = function (stsOptions) {\n if (stsOptions === void 0) { stsOptions = {}; }\n return StsGetDefaultRoleAssumerWithWebIdentity(stsOptions, STSClient);\n};\nexport var decorateDefaultCredentialProvider = function (provider) {\n return function (input) {\n return provider(__assign({ roleAssumer: getDefaultRoleAssumer(input), roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity(input) }, input));\n };\n};\n","export var isCrtAvailable = function () {\n try {\n if (typeof require === \"function\" && typeof module !== \"undefined\" && module.require && require(\"aws-crt\")) {\n return [\"md/crt-avail\"];\n }\n return null;\n }\n catch (e) {\n return null;\n }\n};\n","module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildFullPath = require('../core/buildFullPath');\nvar buildURL = require('./../helpers/buildURL');\nvar http = require('http');\nvar https = require('https');\nvar httpFollow = require('follow-redirects').http;\nvar httpsFollow = require('follow-redirects').https;\nvar url = require('url');\nvar zlib = require('zlib');\nvar VERSION = require('./../env/data').version;\nvar createError = require('../core/createError');\nvar enhanceError = require('../core/enhanceError');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\nvar isHttps = /https:?/;\n\n/**\n *\n * @param {http.ClientRequestArgs} options\n * @param {AxiosProxyConfig} proxy\n * @param {string} location\n */\nfunction setProxy(options, proxy, location) {\n options.hostname = proxy.host;\n options.host = proxy.host;\n options.port = proxy.port;\n options.path = location;\n\n // Basic proxy authorization\n if (proxy.auth) {\n var base64 = Buffer.from(proxy.auth.username + ':' + proxy.auth.password, 'utf8').toString('base64');\n options.headers['Proxy-Authorization'] = 'Basic ' + base64;\n }\n\n // If a proxy is used, any redirects must also pass through the proxy\n options.beforeRedirect = function beforeRedirect(redirection) {\n redirection.headers.host = redirection.host;\n setProxy(redirection, proxy, redirection.href);\n };\n}\n\n/*eslint consistent-return:0*/\nmodule.exports = function httpAdapter(config) {\n return new Promise(function dispatchHttpRequest(resolvePromise, rejectPromise) {\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n var resolve = function resolve(value) {\n done();\n resolvePromise(value);\n };\n var reject = function reject(value) {\n done();\n rejectPromise(value);\n };\n var data = config.data;\n var headers = config.headers;\n var headerNames = {};\n\n Object.keys(headers).forEach(function storeLowerName(name) {\n headerNames[name.toLowerCase()] = name;\n });\n\n // Set User-Agent (required by some servers)\n // See https://github.com/axios/axios/issues/69\n if ('user-agent' in headerNames) {\n // User-Agent is specified; handle case where no UA header is desired\n if (!headers[headerNames['user-agent']]) {\n delete headers[headerNames['user-agent']];\n }\n // Otherwise, use specified value\n } else {\n // Only set header if it hasn't been set in config\n headers['User-Agent'] = 'axios/' + VERSION;\n }\n\n if (data && !utils.isStream(data)) {\n if (Buffer.isBuffer(data)) {\n // Nothing to do...\n } else if (utils.isArrayBuffer(data)) {\n data = Buffer.from(new Uint8Array(data));\n } else if (utils.isString(data)) {\n data = Buffer.from(data, 'utf-8');\n } else {\n return reject(createError(\n 'Data after transformation must be a string, an ArrayBuffer, a Buffer, or a Stream',\n config\n ));\n }\n\n // Add Content-Length header if data exists\n if (!headerNames['content-length']) {\n headers['Content-Length'] = data.length;\n }\n }\n\n // HTTP basic authentication\n var auth = undefined;\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n auth = username + ':' + password;\n }\n\n // Parse url\n var fullPath = buildFullPath(config.baseURL, config.url);\n var parsed = url.parse(fullPath);\n var protocol = parsed.protocol || 'http:';\n\n if (!auth && parsed.auth) {\n var urlAuth = parsed.auth.split(':');\n var urlUsername = urlAuth[0] || '';\n var urlPassword = urlAuth[1] || '';\n auth = urlUsername + ':' + urlPassword;\n }\n\n if (auth && headerNames.authorization) {\n delete headers[headerNames.authorization];\n }\n\n var isHttpsRequest = isHttps.test(protocol);\n var agent = isHttpsRequest ? config.httpsAgent : config.httpAgent;\n\n var options = {\n path: buildURL(parsed.path, config.params, config.paramsSerializer).replace(/^\\?/, ''),\n method: config.method.toUpperCase(),\n headers: headers,\n agent: agent,\n agents: { http: config.httpAgent, https: config.httpsAgent },\n auth: auth\n };\n\n if (config.socketPath) {\n options.socketPath = config.socketPath;\n } else {\n options.hostname = parsed.hostname;\n options.port = parsed.port;\n }\n\n var proxy = config.proxy;\n if (!proxy && proxy !== false) {\n var proxyEnv = protocol.slice(0, -1) + '_proxy';\n var proxyUrl = process.env[proxyEnv] || process.env[proxyEnv.toUpperCase()];\n if (proxyUrl) {\n var parsedProxyUrl = url.parse(proxyUrl);\n var noProxyEnv = process.env.no_proxy || process.env.NO_PROXY;\n var shouldProxy = true;\n\n if (noProxyEnv) {\n var noProxy = noProxyEnv.split(',').map(function trim(s) {\n return s.trim();\n });\n\n shouldProxy = !noProxy.some(function proxyMatch(proxyElement) {\n if (!proxyElement) {\n return false;\n }\n if (proxyElement === '*') {\n return true;\n }\n if (proxyElement[0] === '.' &&\n parsed.hostname.substr(parsed.hostname.length - proxyElement.length) === proxyElement) {\n return true;\n }\n\n return parsed.hostname === proxyElement;\n });\n }\n\n if (shouldProxy) {\n proxy = {\n host: parsedProxyUrl.hostname,\n port: parsedProxyUrl.port,\n protocol: parsedProxyUrl.protocol\n };\n\n if (parsedProxyUrl.auth) {\n var proxyUrlAuth = parsedProxyUrl.auth.split(':');\n proxy.auth = {\n username: proxyUrlAuth[0],\n password: proxyUrlAuth[1]\n };\n }\n }\n }\n }\n\n if (proxy) {\n options.headers.host = parsed.hostname + (parsed.port ? ':' + parsed.port : '');\n setProxy(options, proxy, protocol + '//' + parsed.hostname + (parsed.port ? ':' + parsed.port : '') + options.path);\n }\n\n var transport;\n var isHttpsProxy = isHttpsRequest && (proxy ? isHttps.test(proxy.protocol) : true);\n if (config.transport) {\n transport = config.transport;\n } else if (config.maxRedirects === 0) {\n transport = isHttpsProxy ? https : http;\n } else {\n if (config.maxRedirects) {\n options.maxRedirects = config.maxRedirects;\n }\n transport = isHttpsProxy ? httpsFollow : httpFollow;\n }\n\n if (config.maxBodyLength > -1) {\n options.maxBodyLength = config.maxBodyLength;\n }\n\n if (config.insecureHTTPParser) {\n options.insecureHTTPParser = config.insecureHTTPParser;\n }\n\n // Create the request\n var req = transport.request(options, function handleResponse(res) {\n if (req.aborted) return;\n\n // uncompress the response body transparently if required\n var stream = res;\n\n // return the last request in case of redirects\n var lastRequest = res.req || req;\n\n\n // if no content, is HEAD request or decompress disabled we should not decompress\n if (res.statusCode !== 204 && lastRequest.method !== 'HEAD' && config.decompress !== false) {\n switch (res.headers['content-encoding']) {\n /*eslint default-case:0*/\n case 'gzip':\n case 'compress':\n case 'deflate':\n // add the unzipper to the body stream processing pipeline\n stream = stream.pipe(zlib.createUnzip());\n\n // remove the content-encoding in order to not confuse downstream operations\n delete res.headers['content-encoding'];\n break;\n }\n }\n\n var response = {\n status: res.statusCode,\n statusText: res.statusMessage,\n headers: res.headers,\n config: config,\n request: lastRequest\n };\n\n if (config.responseType === 'stream') {\n response.data = stream;\n settle(resolve, reject, response);\n } else {\n var responseBuffer = [];\n var totalResponseBytes = 0;\n stream.on('data', function handleStreamData(chunk) {\n responseBuffer.push(chunk);\n totalResponseBytes += chunk.length;\n\n // make sure the content length is not over the maxContentLength if specified\n if (config.maxContentLength > -1 && totalResponseBytes > config.maxContentLength) {\n stream.destroy();\n reject(createError('maxContentLength size of ' + config.maxContentLength + ' exceeded',\n config, null, lastRequest));\n }\n });\n\n stream.on('error', function handleStreamError(err) {\n if (req.aborted) return;\n reject(enhanceError(err, config, null, lastRequest));\n });\n\n stream.on('end', function handleStreamEnd() {\n var responseData = Buffer.concat(responseBuffer);\n if (config.responseType !== 'arraybuffer') {\n responseData = responseData.toString(config.responseEncoding);\n if (!config.responseEncoding || config.responseEncoding === 'utf8') {\n responseData = utils.stripBOM(responseData);\n }\n }\n\n response.data = responseData;\n settle(resolve, reject, response);\n });\n }\n });\n\n // Handle errors\n req.on('error', function handleRequestError(err) {\n if (req.aborted && err.code !== 'ERR_FR_TOO_MANY_REDIRECTS') return;\n reject(enhanceError(err, config, null, req));\n });\n\n // Handle request timeout\n if (config.timeout) {\n // This is forcing a int timeout to avoid problems if the `req` interface doesn't handle other types.\n var timeout = parseInt(config.timeout, 10);\n\n if (isNaN(timeout)) {\n reject(createError(\n 'error trying to parse `config.timeout` to int',\n config,\n 'ERR_PARSE_TIMEOUT',\n req\n ));\n\n return;\n }\n\n // Sometime, the response will be very slow, and does not respond, the connect event will be block by event loop system.\n // And timer callback will be fired, and abort() will be invoked before connection, then get \"socket hang up\" and code ECONNRESET.\n // At this time, if we have a large number of request, nodejs will hang up some socket on background. and the number will up and up.\n // And then these socket which be hang up will devoring CPU little by little.\n // ClientRequest.setTimeout will be fired on the specify milliseconds, and can make sure that abort() will be fired after connect.\n req.setTimeout(timeout, function handleRequestTimeout() {\n req.abort();\n var transitional = config.transitional || defaults.transitional;\n reject(createError(\n 'timeout of ' + timeout + 'ms exceeded',\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n req\n ));\n });\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (req.aborted) return;\n\n req.abort();\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n\n // Send the request\n if (utils.isStream(data)) {\n data.on('error', function handleStreamError(err) {\n reject(enhanceError(err, config, null, req));\n }).pipe(req);\n } else {\n req.end(data);\n }\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar cookies = require('./../helpers/cookies');\nvar buildURL = require('./../helpers/buildURL');\nvar buildFullPath = require('../core/buildFullPath');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n var responseType = config.responseType;\n var onCanceled;\n function done() {\n if (config.cancelToken) {\n config.cancelToken.unsubscribe(onCanceled);\n }\n\n if (config.signal) {\n config.signal.removeEventListener('abort', onCanceled);\n }\n }\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n var fullPath = buildFullPath(config.baseURL, config.url);\n request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n function onloadend() {\n if (!request) {\n return;\n }\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !responseType || responseType === 'text' || responseType === 'json' ?\n request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(function _resolve(value) {\n resolve(value);\n done();\n }, function _reject(err) {\n reject(err);\n done();\n }, response);\n\n // Clean up request\n request = null;\n }\n\n if ('onloadend' in request) {\n // Use onloadend if available\n request.onloadend = onloadend;\n } else {\n // Listen for ready state to emulate onloadend\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n // readystate handler is calling before onerror or ontimeout handlers,\n // so we should call onloadend on the next 'tick'\n setTimeout(onloadend);\n };\n }\n\n // Handle browser request cancellation (as opposed to a manual cancellation)\n request.onabort = function handleAbort() {\n if (!request) {\n return;\n }\n\n reject(createError('Request aborted', config, 'ECONNABORTED', request));\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';\n var transitional = config.transitional || defaults.transitional;\n if (config.timeoutErrorMessage) {\n timeoutErrorMessage = config.timeoutErrorMessage;\n }\n reject(createError(\n timeoutErrorMessage,\n config,\n transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (!utils.isUndefined(config.withCredentials)) {\n request.withCredentials = !!config.withCredentials;\n }\n\n // Add responseType to request if needed\n if (responseType && responseType !== 'json') {\n request.responseType = config.responseType;\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken || config.signal) {\n // Handle cancellation\n // eslint-disable-next-line func-names\n onCanceled = function(cancel) {\n if (!request) {\n return;\n }\n reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);\n request.abort();\n request = null;\n };\n\n config.cancelToken && config.cancelToken.subscribe(onCanceled);\n if (config.signal) {\n config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);\n }\n }\n\n if (!requestData) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar mergeConfig = require('./core/mergeConfig');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n // Factory for creating new instances\n instance.create = function create(instanceConfig) {\n return createInstance(mergeConfig(defaultConfig, instanceConfig));\n };\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\naxios.VERSION = require('./env/data').version;\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\n// Expose isAxiosError\naxios.isAxiosError = require('./helpers/isAxiosError');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n\n // eslint-disable-next-line func-names\n this.promise.then(function(cancel) {\n if (!token._listeners) return;\n\n var i;\n var l = token._listeners.length;\n\n for (i = 0; i < l; i++) {\n token._listeners[i](cancel);\n }\n token._listeners = null;\n });\n\n // eslint-disable-next-line func-names\n this.promise.then = function(onfulfilled) {\n var _resolve;\n // eslint-disable-next-line func-names\n var promise = new Promise(function(resolve) {\n token.subscribe(resolve);\n _resolve = resolve;\n }).then(onfulfilled);\n\n promise.cancel = function reject() {\n token.unsubscribe(_resolve);\n };\n\n return promise;\n };\n\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Subscribe to the cancel signal\n */\n\nCancelToken.prototype.subscribe = function subscribe(listener) {\n if (this.reason) {\n listener(this.reason);\n return;\n }\n\n if (this._listeners) {\n this._listeners.push(listener);\n } else {\n this._listeners = [listener];\n }\n};\n\n/**\n * Unsubscribe from the cancel signal\n */\n\nCancelToken.prototype.unsubscribe = function unsubscribe(listener) {\n if (!this._listeners) {\n return;\n }\n var index = this._listeners.indexOf(listener);\n if (index !== -1) {\n this._listeners.splice(index, 1);\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar buildURL = require('../helpers/buildURL');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\nvar mergeConfig = require('./mergeConfig');\nvar validator = require('../helpers/validator');\n\nvar validators = validator.validators;\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = arguments[1] || {};\n config.url = arguments[0];\n } else {\n config = config || {};\n }\n\n config = mergeConfig(this.defaults, config);\n\n // Set config.method\n if (config.method) {\n config.method = config.method.toLowerCase();\n } else if (this.defaults.method) {\n config.method = this.defaults.method.toLowerCase();\n } else {\n config.method = 'get';\n }\n\n var transitional = config.transitional;\n\n if (transitional !== undefined) {\n validator.assertOptions(transitional, {\n silentJSONParsing: validators.transitional(validators.boolean),\n forcedJSONParsing: validators.transitional(validators.boolean),\n clarifyTimeoutError: validators.transitional(validators.boolean)\n }, false);\n }\n\n // filter out skipped interceptors\n var requestInterceptorChain = [];\n var synchronousRequestInterceptors = true;\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {\n return;\n }\n\n synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;\n\n requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n var responseInterceptorChain = [];\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n var promise;\n\n if (!synchronousRequestInterceptors) {\n var chain = [dispatchRequest, undefined];\n\n Array.prototype.unshift.apply(chain, requestInterceptorChain);\n chain = chain.concat(responseInterceptorChain);\n\n promise = Promise.resolve(config);\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n }\n\n\n var newConfig = config;\n while (requestInterceptorChain.length) {\n var onFulfilled = requestInterceptorChain.shift();\n var onRejected = requestInterceptorChain.shift();\n try {\n newConfig = onFulfilled(newConfig);\n } catch (error) {\n onRejected(error);\n break;\n }\n }\n\n try {\n promise = dispatchRequest(newConfig);\n } catch (error) {\n return Promise.reject(error);\n }\n\n while (responseInterceptorChain.length) {\n promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());\n }\n\n return promise;\n};\n\nAxios.prototype.getUri = function getUri(config) {\n config = mergeConfig(this.defaults, config);\n return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\\?/, '');\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: (config || {}).data\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(mergeConfig(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected, options) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected,\n synchronous: options ? options.synchronous : false,\n runWhen: options ? options.runWhen : null\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar isAbsoluteURL = require('../helpers/isAbsoluteURL');\nvar combineURLs = require('../helpers/combineURLs');\n\n/**\n * Creates a new URL by combining the baseURL with the requestedURL,\n * only when the requestedURL is not already an absolute URL.\n * If the requestURL is absolute, this function returns the requestedURL untouched.\n *\n * @param {string} baseURL The base URL\n * @param {string} requestedURL Absolute or relative URL to combine\n * @returns {string} The combined full path\n */\nmodule.exports = function buildFullPath(baseURL, requestedURL) {\n if (baseURL && !isAbsoluteURL(requestedURL)) {\n return combineURLs(baseURL, requestedURL);\n }\n return requestedURL;\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar Cancel = require('../cancel/Cancel');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n\n if (config.signal && config.signal.aborted) {\n throw new Cancel('canceled');\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData.call(\n config,\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData.call(\n config,\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData.call(\n config,\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n\n error.request = request;\n error.response = response;\n error.isAxiosError = true;\n\n error.toJSON = function toJSON() {\n return {\n // Standard\n message: this.message,\n name: this.name,\n // Microsoft\n description: this.description,\n number: this.number,\n // Mozilla\n fileName: this.fileName,\n lineNumber: this.lineNumber,\n columnNumber: this.columnNumber,\n stack: this.stack,\n // Axios\n config: this.config,\n code: this.code,\n status: this.response && this.response.status ? this.response.status : null\n };\n };\n return error;\n};\n","'use strict';\n\nvar utils = require('../utils');\n\n/**\n * Config-specific merge-function which creates a new config-object\n * by merging two configuration objects together.\n *\n * @param {Object} config1\n * @param {Object} config2\n * @returns {Object} New object resulting from merging config2 to config1\n */\nmodule.exports = function mergeConfig(config1, config2) {\n // eslint-disable-next-line no-param-reassign\n config2 = config2 || {};\n var config = {};\n\n function getMergedValue(target, source) {\n if (utils.isPlainObject(target) && utils.isPlainObject(source)) {\n return utils.merge(target, source);\n } else if (utils.isPlainObject(source)) {\n return utils.merge({}, source);\n } else if (utils.isArray(source)) {\n return source.slice();\n }\n return source;\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDeepProperties(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function valueFromConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function defaultToConfig2(prop) {\n if (!utils.isUndefined(config2[prop])) {\n return getMergedValue(undefined, config2[prop]);\n } else if (!utils.isUndefined(config1[prop])) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n // eslint-disable-next-line consistent-return\n function mergeDirectKeys(prop) {\n if (prop in config2) {\n return getMergedValue(config1[prop], config2[prop]);\n } else if (prop in config1) {\n return getMergedValue(undefined, config1[prop]);\n }\n }\n\n var mergeMap = {\n 'url': valueFromConfig2,\n 'method': valueFromConfig2,\n 'data': valueFromConfig2,\n 'baseURL': defaultToConfig2,\n 'transformRequest': defaultToConfig2,\n 'transformResponse': defaultToConfig2,\n 'paramsSerializer': defaultToConfig2,\n 'timeout': defaultToConfig2,\n 'timeoutMessage': defaultToConfig2,\n 'withCredentials': defaultToConfig2,\n 'adapter': defaultToConfig2,\n 'responseType': defaultToConfig2,\n 'xsrfCookieName': defaultToConfig2,\n 'xsrfHeaderName': defaultToConfig2,\n 'onUploadProgress': defaultToConfig2,\n 'onDownloadProgress': defaultToConfig2,\n 'decompress': defaultToConfig2,\n 'maxContentLength': defaultToConfig2,\n 'maxBodyLength': defaultToConfig2,\n 'transport': defaultToConfig2,\n 'httpAgent': defaultToConfig2,\n 'httpsAgent': defaultToConfig2,\n 'cancelToken': defaultToConfig2,\n 'socketPath': defaultToConfig2,\n 'responseEncoding': defaultToConfig2,\n 'validateStatus': mergeDirectKeys\n };\n\n utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {\n var merge = mergeMap[prop] || mergeDeepProperties;\n var configValue = merge(prop);\n (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);\n });\n\n return config;\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\nvar utils = require('./../utils');\nvar defaults = require('./../defaults');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n var context = this || defaults;\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn.call(context, data, headers);\n });\n\n return data;\n};\n","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\nvar enhanceError = require('./core/enhanceError');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nfunction stringifySafely(rawValue, parser, encoder) {\n if (utils.isString(rawValue)) {\n try {\n (parser || JSON.parse)(rawValue);\n return utils.trim(rawValue);\n } catch (e) {\n if (e.name !== 'SyntaxError') {\n throw e;\n }\n }\n }\n\n return (encoder || JSON.stringify)(rawValue);\n}\n\nvar defaults = {\n\n transitional: {\n silentJSONParsing: true,\n forcedJSONParsing: true,\n clarifyTimeoutError: false\n },\n\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Accept');\n normalizeHeaderName(headers, 'Content-Type');\n\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {\n setContentTypeIfUnset(headers, 'application/json');\n return stringifySafely(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n var transitional = this.transitional || defaults.transitional;\n var silentJSONParsing = transitional && transitional.silentJSONParsing;\n var forcedJSONParsing = transitional && transitional.forcedJSONParsing;\n var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';\n\n if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {\n try {\n return JSON.parse(data);\n } catch (e) {\n if (strictJSONParsing) {\n if (e.name === 'SyntaxError') {\n throw enhanceError(e, this, 'E_JSON_PARSE');\n }\n throw e;\n }\n }\n }\n\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n maxBodyLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n },\n\n headers: {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","module.exports = {\n \"version\": \"0.24.0\"\n};","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n var hashmarkIndex = url.indexOf('#');\n if (hashmarkIndex !== -1) {\n url = url.slice(0, hashmarkIndex);\n }\n\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Determines whether the payload is an error thrown by Axios\n *\n * @param {*} payload The value to test\n * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false\n */\nmodule.exports = function isAxiosError(payload) {\n return (typeof payload === 'object') && (payload.isAxiosError === true);\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","'use strict';\n\nvar VERSION = require('../env/data').version;\n\nvar validators = {};\n\n// eslint-disable-next-line func-names\n['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {\n validators[type] = function validator(thing) {\n return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;\n };\n});\n\nvar deprecatedWarnings = {};\n\n/**\n * Transitional option validator\n * @param {function|boolean?} validator - set to false if the transitional option has been removed\n * @param {string?} version - deprecated version / removed since version\n * @param {string?} message - some message with additional info\n * @returns {function}\n */\nvalidators.transitional = function transitional(validator, version, message) {\n function formatMessage(opt, desc) {\n return '[Axios v' + VERSION + '] Transitional option \\'' + opt + '\\'' + desc + (message ? '. ' + message : '');\n }\n\n // eslint-disable-next-line func-names\n return function(value, opt, opts) {\n if (validator === false) {\n throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));\n }\n\n if (version && !deprecatedWarnings[opt]) {\n deprecatedWarnings[opt] = true;\n // eslint-disable-next-line no-console\n console.warn(\n formatMessage(\n opt,\n ' has been deprecated since v' + version + ' and will be removed in the near future'\n )\n );\n }\n\n return validator ? validator(value, opt, opts) : true;\n };\n};\n\n/**\n * Assert object's properties type\n * @param {object} options\n * @param {object} schema\n * @param {boolean?} allowUnknown\n */\n\nfunction assertOptions(options, schema, allowUnknown) {\n if (typeof options !== 'object') {\n throw new TypeError('options must be an object');\n }\n var keys = Object.keys(options);\n var i = keys.length;\n while (i-- > 0) {\n var opt = keys[i];\n var validator = schema[opt];\n if (validator) {\n var value = options[opt];\n var result = value === undefined || validator(value, opt, options);\n if (result !== true) {\n throw new TypeError('option ' + opt + ' must be ' + result);\n }\n continue;\n }\n if (allowUnknown !== true) {\n throw Error('Unknown option ' + opt);\n }\n }\n}\n\nmodule.exports = {\n assertOptions: assertOptions,\n validators: validators\n};\n","'use strict';\n\nvar bind = require('./helpers/bind');\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is a Buffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Buffer, otherwise false\n */\nfunction isBuffer(val) {\n return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)\n && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a plain Object\n *\n * @param {Object} val The value to test\n * @return {boolean} True if value is a plain Object, otherwise false\n */\nfunction isPlainObject(val) {\n if (toString.call(val) !== '[object Object]') {\n return false;\n }\n\n var prototype = Object.getPrototypeOf(val);\n return prototype === null || prototype === Object.prototype;\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.trim ? str.trim() : str.replace(/^\\s+|\\s+$/g, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n * nativescript\n * navigator.product -> 'NativeScript' or 'NS'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||\n navigator.product === 'NativeScript' ||\n navigator.product === 'NS')) {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (isPlainObject(result[key]) && isPlainObject(val)) {\n result[key] = merge(result[key], val);\n } else if (isPlainObject(val)) {\n result[key] = merge({}, val);\n } else if (isArray(val)) {\n result[key] = val.slice();\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\n/**\n * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)\n *\n * @param {string} content with BOM\n * @return {string} content value without BOM\n */\nfunction stripBOM(content) {\n if (content.charCodeAt(0) === 0xFEFF) {\n content = content.slice(1);\n }\n return content;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isPlainObject: isPlainObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim,\n stripBOM: stripBOM\n};\n","/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n","\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.substr(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n","/**\n * Detect Electron renderer / nwjs process, which is node, but we should\n * treat as a browser.\n */\n\nif (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {\n\tmodule.exports = require('./browser.js');\n} else {\n\tmodule.exports = require('./node.js');\n}\n","/**\n * Module dependencies.\n */\n\nconst tty = require('tty');\nconst util = require('util');\n\n/**\n * This is the Node.js implementation of `debug()`.\n */\n\nexports.init = init;\nexports.log = log;\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.destroy = util.deprecate(\n\t() => {},\n\t'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'\n);\n\n/**\n * Colors.\n */\n\nexports.colors = [6, 2, 3, 4, 5, 1];\n\ntry {\n\t// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)\n\t// eslint-disable-next-line import/no-extraneous-dependencies\n\tconst supportsColor = require('supports-color');\n\n\tif (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {\n\t\texports.colors = [\n\t\t\t20,\n\t\t\t21,\n\t\t\t26,\n\t\t\t27,\n\t\t\t32,\n\t\t\t33,\n\t\t\t38,\n\t\t\t39,\n\t\t\t40,\n\t\t\t41,\n\t\t\t42,\n\t\t\t43,\n\t\t\t44,\n\t\t\t45,\n\t\t\t56,\n\t\t\t57,\n\t\t\t62,\n\t\t\t63,\n\t\t\t68,\n\t\t\t69,\n\t\t\t74,\n\t\t\t75,\n\t\t\t76,\n\t\t\t77,\n\t\t\t78,\n\t\t\t79,\n\t\t\t80,\n\t\t\t81,\n\t\t\t92,\n\t\t\t93,\n\t\t\t98,\n\t\t\t99,\n\t\t\t112,\n\t\t\t113,\n\t\t\t128,\n\t\t\t129,\n\t\t\t134,\n\t\t\t135,\n\t\t\t148,\n\t\t\t149,\n\t\t\t160,\n\t\t\t161,\n\t\t\t162,\n\t\t\t163,\n\t\t\t164,\n\t\t\t165,\n\t\t\t166,\n\t\t\t167,\n\t\t\t168,\n\t\t\t169,\n\t\t\t170,\n\t\t\t171,\n\t\t\t172,\n\t\t\t173,\n\t\t\t178,\n\t\t\t179,\n\t\t\t184,\n\t\t\t185,\n\t\t\t196,\n\t\t\t197,\n\t\t\t198,\n\t\t\t199,\n\t\t\t200,\n\t\t\t201,\n\t\t\t202,\n\t\t\t203,\n\t\t\t204,\n\t\t\t205,\n\t\t\t206,\n\t\t\t207,\n\t\t\t208,\n\t\t\t209,\n\t\t\t214,\n\t\t\t215,\n\t\t\t220,\n\t\t\t221\n\t\t];\n\t}\n} catch (error) {\n\t// Swallow - we only care if `supports-color` is available; it doesn't have to be.\n}\n\n/**\n * Build up the default `inspectOpts` object from the environment variables.\n *\n * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js\n */\n\nexports.inspectOpts = Object.keys(process.env).filter(key => {\n\treturn /^debug_/i.test(key);\n}).reduce((obj, key) => {\n\t// Camel-case\n\tconst prop = key\n\t\t.substring(6)\n\t\t.toLowerCase()\n\t\t.replace(/_([a-z])/g, (_, k) => {\n\t\t\treturn k.toUpperCase();\n\t\t});\n\n\t// Coerce string value into JS value\n\tlet val = process.env[key];\n\tif (/^(yes|on|true|enabled)$/i.test(val)) {\n\t\tval = true;\n\t} else if (/^(no|off|false|disabled)$/i.test(val)) {\n\t\tval = false;\n\t} else if (val === 'null') {\n\t\tval = null;\n\t} else {\n\t\tval = Number(val);\n\t}\n\n\tobj[prop] = val;\n\treturn obj;\n}, {});\n\n/**\n * Is stdout a TTY? Colored output is enabled when `true`.\n */\n\nfunction useColors() {\n\treturn 'colors' in exports.inspectOpts ?\n\t\tBoolean(exports.inspectOpts.colors) :\n\t\ttty.isatty(process.stderr.fd);\n}\n\n/**\n * Adds ANSI color escape codes if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\tconst {namespace: name, useColors} = this;\n\n\tif (useColors) {\n\t\tconst c = this.color;\n\t\tconst colorCode = '\\u001B[3' + (c < 8 ? c : '8;5;' + c);\n\t\tconst prefix = ` ${colorCode};1m${name} \\u001B[0m`;\n\n\t\targs[0] = prefix + args[0].split('\\n').join('\\n' + prefix);\n\t\targs.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\\u001B[0m');\n\t} else {\n\t\targs[0] = getDate() + name + ' ' + args[0];\n\t}\n}\n\nfunction getDate() {\n\tif (exports.inspectOpts.hideDate) {\n\t\treturn '';\n\t}\n\treturn new Date().toISOString() + ' ';\n}\n\n/**\n * Invokes `util.format()` with the specified arguments and writes to stderr.\n */\n\nfunction log(...args) {\n\treturn process.stderr.write(util.format(...args) + '\\n');\n}\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\tif (namespaces) {\n\t\tprocess.env.DEBUG = namespaces;\n\t} else {\n\t\t// If you set a process.env field to null or undefined, it gets cast to the\n\t\t// string 'null' or 'undefined'. Just delete instead.\n\t\tdelete process.env.DEBUG;\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\n\nfunction load() {\n\treturn process.env.DEBUG;\n}\n\n/**\n * Init logic for `debug` instances.\n *\n * Create a new `inspectOpts` object in case `useColors` is set\n * differently for a particular `debug` instance.\n */\n\nfunction init(debug) {\n\tdebug.inspectOpts = {};\n\n\tconst keys = Object.keys(exports.inspectOpts);\n\tfor (let i = 0; i < keys.length; i++) {\n\t\tdebug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %o to `util.inspect()`, all on a single line.\n */\n\nformatters.o = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts)\n\t\t.split('\\n')\n\t\t.map(str => str.trim())\n\t\t.join(' ');\n};\n\n/**\n * Map %O to `util.inspect()`, allowing multiple lines if needed.\n */\n\nformatters.O = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts);\n};\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.decodeHTML = exports.decodeHTMLStrict = exports.decodeXML = void 0;\nvar entities_json_1 = __importDefault(require(\"./maps/entities.json\"));\nvar legacy_json_1 = __importDefault(require(\"./maps/legacy.json\"));\nvar xml_json_1 = __importDefault(require(\"./maps/xml.json\"));\nvar decode_codepoint_1 = __importDefault(require(\"./decode_codepoint\"));\nvar strictEntityRe = /&(?:[a-zA-Z0-9]+|#[xX][\\da-fA-F]+|#\\d+);/g;\nexports.decodeXML = getStrictDecoder(xml_json_1.default);\nexports.decodeHTMLStrict = getStrictDecoder(entities_json_1.default);\nfunction getStrictDecoder(map) {\n var replace = getReplacer(map);\n return function (str) { return String(str).replace(strictEntityRe, replace); };\n}\nvar sorter = function (a, b) { return (a < b ? 1 : -1); };\nexports.decodeHTML = (function () {\n var legacy = Object.keys(legacy_json_1.default).sort(sorter);\n var keys = Object.keys(entities_json_1.default).sort(sorter);\n for (var i = 0, j = 0; i < keys.length; i++) {\n if (legacy[j] === keys[i]) {\n keys[i] += \";?\";\n j++;\n }\n else {\n keys[i] += \";\";\n }\n }\n var re = new RegExp(\"&(?:\" + keys.join(\"|\") + \"|#[xX][\\\\da-fA-F]+;?|#\\\\d+;?)\", \"g\");\n var replace = getReplacer(entities_json_1.default);\n function replacer(str) {\n if (str.substr(-1) !== \";\")\n str += \";\";\n return replace(str);\n }\n // TODO consider creating a merged map\n return function (str) { return String(str).replace(re, replacer); };\n})();\nfunction getReplacer(map) {\n return function replace(str) {\n if (str.charAt(1) === \"#\") {\n var secondChar = str.charAt(2);\n if (secondChar === \"X\" || secondChar === \"x\") {\n return decode_codepoint_1.default(parseInt(str.substr(3), 16));\n }\n return decode_codepoint_1.default(parseInt(str.substr(2), 10));\n }\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n return map[str.slice(1, -1)] || str;\n };\n}\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar decode_json_1 = __importDefault(require(\"./maps/decode.json\"));\n// Adapted from https://github.com/mathiasbynens/he/blob/master/src/he.js#L94-L119\nvar fromCodePoint = \n// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\nString.fromCodePoint ||\n function (codePoint) {\n var output = \"\";\n if (codePoint > 0xffff) {\n codePoint -= 0x10000;\n output += String.fromCharCode(((codePoint >>> 10) & 0x3ff) | 0xd800);\n codePoint = 0xdc00 | (codePoint & 0x3ff);\n }\n output += String.fromCharCode(codePoint);\n return output;\n };\nfunction decodeCodePoint(codePoint) {\n if ((codePoint >= 0xd800 && codePoint <= 0xdfff) || codePoint > 0x10ffff) {\n return \"\\uFFFD\";\n }\n if (codePoint in decode_json_1.default) {\n codePoint = decode_json_1.default[codePoint];\n }\n return fromCodePoint(codePoint);\n}\nexports.default = decodeCodePoint;\n","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.escapeUTF8 = exports.escape = exports.encodeNonAsciiHTML = exports.encodeHTML = exports.encodeXML = void 0;\nvar xml_json_1 = __importDefault(require(\"./maps/xml.json\"));\nvar inverseXML = getInverseObj(xml_json_1.default);\nvar xmlReplacer = getInverseReplacer(inverseXML);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using XML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexports.encodeXML = getASCIIEncoder(inverseXML);\nvar entities_json_1 = __importDefault(require(\"./maps/entities.json\"));\nvar inverseHTML = getInverseObj(entities_json_1.default);\nvar htmlReplacer = getInverseReplacer(inverseHTML);\n/**\n * Encodes all entities and non-ASCII characters in the input.\n *\n * This includes characters that are valid ASCII characters in HTML documents.\n * For example `#` will be encoded as `#`. To get a more compact output,\n * consider using the `encodeNonAsciiHTML` function.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexports.encodeHTML = getInverse(inverseHTML, htmlReplacer);\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in HTML\n * documents using HTML entities.\n *\n * If a character has no equivalent entity, a\n * numeric hexadecimal reference (eg. `ü`) will be used.\n */\nexports.encodeNonAsciiHTML = getASCIIEncoder(inverseHTML);\nfunction getInverseObj(obj) {\n return Object.keys(obj)\n .sort()\n .reduce(function (inverse, name) {\n inverse[obj[name]] = \"&\" + name + \";\";\n return inverse;\n }, {});\n}\nfunction getInverseReplacer(inverse) {\n var single = [];\n var multiple = [];\n for (var _i = 0, _a = Object.keys(inverse); _i < _a.length; _i++) {\n var k = _a[_i];\n if (k.length === 1) {\n // Add value to single array\n single.push(\"\\\\\" + k);\n }\n else {\n // Add value to multiple array\n multiple.push(k);\n }\n }\n // Add ranges to single characters.\n single.sort();\n for (var start = 0; start < single.length - 1; start++) {\n // Find the end of a run of characters\n var end = start;\n while (end < single.length - 1 &&\n single[end].charCodeAt(1) + 1 === single[end + 1].charCodeAt(1)) {\n end += 1;\n }\n var count = 1 + end - start;\n // We want to replace at least three characters\n if (count < 3)\n continue;\n single.splice(start, count, single[start] + \"-\" + single[end]);\n }\n multiple.unshift(\"[\" + single.join(\"\") + \"]\");\n return new RegExp(multiple.join(\"|\"), \"g\");\n}\n// /[^\\0-\\x7F]/gu\nvar reNonASCII = /(?:[\\x80-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])/g;\nvar getCodePoint = \n// eslint-disable-next-line @typescript-eslint/no-unnecessary-condition\nString.prototype.codePointAt != null\n ? // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n function (str) { return str.codePointAt(0); }\n : // http://mathiasbynens.be/notes/javascript-encoding#surrogate-formulae\n function (c) {\n return (c.charCodeAt(0) - 0xd800) * 0x400 +\n c.charCodeAt(1) -\n 0xdc00 +\n 0x10000;\n };\nfunction singleCharReplacer(c) {\n return \"\" + (c.length > 1 ? getCodePoint(c) : c.charCodeAt(0))\n .toString(16)\n .toUpperCase() + \";\";\n}\nfunction getInverse(inverse, re) {\n return function (data) {\n return data\n .replace(re, function (name) { return inverse[name]; })\n .replace(reNonASCII, singleCharReplacer);\n };\n}\nvar reEscapeChars = new RegExp(xmlReplacer.source + \"|\" + reNonASCII.source, \"g\");\n/**\n * Encodes all non-ASCII characters, as well as characters not valid in XML\n * documents using numeric hexadecimal reference (eg. `ü`).\n *\n * Have a look at `escapeUTF8` if you want a more concise output at the expense\n * of reduced transportability.\n *\n * @param data String to escape.\n */\nfunction escape(data) {\n return data.replace(reEscapeChars, singleCharReplacer);\n}\nexports.escape = escape;\n/**\n * Encodes all characters not valid in XML documents using numeric hexadecimal\n * reference (eg. `ü`).\n *\n * Note that the output will be character-set dependent.\n *\n * @param data String to escape.\n */\nfunction escapeUTF8(data) {\n return data.replace(xmlReplacer, singleCharReplacer);\n}\nexports.escapeUTF8 = escapeUTF8;\nfunction getASCIIEncoder(obj) {\n return function (data) {\n return data.replace(reEscapeChars, function (c) { return obj[c] || singleCharReplacer(c); });\n };\n}\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.decodeXMLStrict = exports.decodeHTML5Strict = exports.decodeHTML4Strict = exports.decodeHTML5 = exports.decodeHTML4 = exports.decodeHTMLStrict = exports.decodeHTML = exports.decodeXML = exports.encodeHTML5 = exports.encodeHTML4 = exports.escapeUTF8 = exports.escape = exports.encodeNonAsciiHTML = exports.encodeHTML = exports.encodeXML = exports.encode = exports.decodeStrict = exports.decode = void 0;\nvar decode_1 = require(\"./decode\");\nvar encode_1 = require(\"./encode\");\n/**\n * Decodes a string with entities.\n *\n * @param data String to decode.\n * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `decodeXML` or `decodeHTML` directly.\n */\nfunction decode(data, level) {\n return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTML)(data);\n}\nexports.decode = decode;\n/**\n * Decodes a string with entities. Does not allow missing trailing semicolons for entities.\n *\n * @param data String to decode.\n * @param level Optional level to decode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `decodeHTMLStrict` or `decodeXML` directly.\n */\nfunction decodeStrict(data, level) {\n return (!level || level <= 0 ? decode_1.decodeXML : decode_1.decodeHTMLStrict)(data);\n}\nexports.decodeStrict = decodeStrict;\n/**\n * Encodes a string with entities.\n *\n * @param data String to encode.\n * @param level Optional level to encode at. 0 = XML, 1 = HTML. Default is 0.\n * @deprecated Use `encodeHTML`, `encodeXML` or `encodeNonAsciiHTML` directly.\n */\nfunction encode(data, level) {\n return (!level || level <= 0 ? encode_1.encodeXML : encode_1.encodeHTML)(data);\n}\nexports.encode = encode;\nvar encode_2 = require(\"./encode\");\nObject.defineProperty(exports, \"encodeXML\", { enumerable: true, get: function () { return encode_2.encodeXML; } });\nObject.defineProperty(exports, \"encodeHTML\", { enumerable: true, get: function () { return encode_2.encodeHTML; } });\nObject.defineProperty(exports, \"encodeNonAsciiHTML\", { enumerable: true, get: function () { return encode_2.encodeNonAsciiHTML; } });\nObject.defineProperty(exports, \"escape\", { enumerable: true, get: function () { return encode_2.escape; } });\nObject.defineProperty(exports, \"escapeUTF8\", { enumerable: true, get: function () { return encode_2.escapeUTF8; } });\n// Legacy aliases (deprecated)\nObject.defineProperty(exports, \"encodeHTML4\", { enumerable: true, get: function () { return encode_2.encodeHTML; } });\nObject.defineProperty(exports, \"encodeHTML5\", { enumerable: true, get: function () { return encode_2.encodeHTML; } });\nvar decode_2 = require(\"./decode\");\nObject.defineProperty(exports, \"decodeXML\", { enumerable: true, get: function () { return decode_2.decodeXML; } });\nObject.defineProperty(exports, \"decodeHTML\", { enumerable: true, get: function () { return decode_2.decodeHTML; } });\nObject.defineProperty(exports, \"decodeHTMLStrict\", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });\n// Legacy aliases (deprecated)\nObject.defineProperty(exports, \"decodeHTML4\", { enumerable: true, get: function () { return decode_2.decodeHTML; } });\nObject.defineProperty(exports, \"decodeHTML5\", { enumerable: true, get: function () { return decode_2.decodeHTML; } });\nObject.defineProperty(exports, \"decodeHTML4Strict\", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });\nObject.defineProperty(exports, \"decodeHTML5Strict\", { enumerable: true, get: function () { return decode_2.decodeHTMLStrict; } });\nObject.defineProperty(exports, \"decodeXMLStrict\", { enumerable: true, get: function () { return decode_2.decodeXML; } });\n","'use strict';\n//parse Empty Node as self closing node\nconst buildOptions = require('./util').buildOptions;\n\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n format: false,\n indentBy: ' ',\n supressEmptyNode: false,\n tagValueProcessor: function(a) {\n return a;\n },\n attrValueProcessor: function(a) {\n return a;\n },\n};\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'cdataTagName',\n 'cdataPositionChar',\n 'format',\n 'indentBy',\n 'supressEmptyNode',\n 'tagValueProcessor',\n 'attrValueProcessor',\n];\n\nfunction Parser(options) {\n this.options = buildOptions(options, defaultOptions, props);\n if (this.options.ignoreAttributes || this.options.attrNodeName) {\n this.isAttribute = function(/*a*/) {\n return false;\n };\n } else {\n this.attrPrefixLen = this.options.attributeNamePrefix.length;\n this.isAttribute = isAttribute;\n }\n if (this.options.cdataTagName) {\n this.isCDATA = isCDATA;\n } else {\n this.isCDATA = function(/*a*/) {\n return false;\n };\n }\n this.replaceCDATAstr = replaceCDATAstr;\n this.replaceCDATAarr = replaceCDATAarr;\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 if (this.options.supressEmptyNode) {\n this.buildTextNode = buildEmptyTextNode;\n this.buildObjNode = buildEmptyObjNode;\n } else {\n this.buildTextNode = buildTextValNode;\n this.buildObjNode = buildObjectNode;\n }\n\n this.buildTextValNode = buildTextValNode;\n this.buildObjectNode = buildObjectNode;\n}\n\nParser.prototype.parse = function(jObj) {\n return this.j2x(jObj, 0).val;\n};\n\nParser.prototype.j2x = function(jObj, level) {\n let attrStr = '';\n let val = '';\n const keys = Object.keys(jObj);\n const len = keys.length;\n for (let i = 0; i < len; i++) {\n const key = keys[i];\n if (typeof jObj[key] === 'undefined') {\n // supress undefined node\n } else if (jObj[key] === null) {\n val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (jObj[key] instanceof Date) {\n val += this.buildTextNode(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 += ' ' + attr + '=\"' + this.options.attrValueProcessor('' + jObj[key]) + '\"';\n } else if (this.isCDATA(key)) {\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAstr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAstr('', jObj[key]);\n }\n } else {\n //tag value\n if (key === this.options.textNodeName) {\n if (jObj[this.options.cdataTagName]) {\n //value will added while processing cdata\n } else {\n val += this.options.tagValueProcessor('' + jObj[key]);\n }\n } else {\n val += this.buildTextNode(jObj[key], key, '', level);\n }\n }\n } else if (Array.isArray(jObj[key])) {\n //repeated nodes\n if (this.isCDATA(key)) {\n val += this.indentate(level);\n if (jObj[this.options.textNodeName]) {\n val += this.replaceCDATAarr(jObj[this.options.textNodeName], jObj[key]);\n } else {\n val += this.replaceCDATAarr('', jObj[key]);\n }\n } else {\n //nested nodes\n const arrLen = jObj[key].length;\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 val += this.indentate(level) + '<' + key + '/' + this.tagEndChar;\n } else if (typeof item === 'object') {\n const result = this.j2x(item, level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n } else {\n val += this.buildTextNode(item, key, '', level);\n }\n }\n }\n } else {\n //nested node\n if (this.options.attrNodeName && key === this.options.attrNodeName) {\n const Ks = Object.keys(jObj[key]);\n const L = Ks.length;\n for (let j = 0; j < L; j++) {\n attrStr += ' ' + Ks[j] + '=\"' + this.options.attrValueProcessor('' + jObj[key][Ks[j]]) + '\"';\n }\n } else {\n const result = this.j2x(jObj[key], level + 1);\n val += this.buildObjNode(result.val, key, result.attrStr, level);\n }\n }\n }\n return {attrStr: attrStr, val: val};\n};\n\nfunction replaceCDATAstr(str, cdata) {\n str = this.options.tagValueProcessor('' + str);\n if (this.options.cdataPositionChar === '' || str === '') {\n return str + '');\n }\n return str + this.newLine;\n }\n}\n\nfunction buildObjectNode(val, key, attrStr, level) {\n if (attrStr && !val.includes('<')) {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n '>' +\n val +\n //+ this.newLine\n // + this.indentate(level)\n '' +\n key +\n this.tagEndChar\n );\n } else {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n this.tagEndChar +\n val +\n //+ this.newLine\n this.indentate(level) +\n '' +\n key +\n this.tagEndChar\n );\n }\n}\n\nfunction buildEmptyObjNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildObjectNode(val, key, attrStr, level);\n } else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n //+ this.newLine\n }\n}\n\nfunction buildTextValNode(val, key, attrStr, level) {\n return (\n this.indentate(level) +\n '<' +\n key +\n attrStr +\n '>' +\n this.options.tagValueProcessor(val) +\n '' +\n key +\n this.tagEndChar\n );\n}\n\nfunction buildEmptyTextNode(val, key, attrStr, level) {\n if (val !== '') {\n return this.buildTextValNode(val, key, attrStr, level);\n } else {\n return this.indentate(level) + '<' + key + attrStr + '/' + this.tagEndChar;\n }\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)) {\n return name.substr(this.attrPrefixLen);\n } else {\n return false;\n }\n}\n\nfunction isCDATA(name) {\n return name === this.options.cdataTagName;\n}\n\n//formatting\n//indentation\n//\\n after each closing or self closing tag\n\nmodule.exports = Parser;\n","'use strict';\nconst char = function(a) {\n return String.fromCharCode(a);\n};\n\nconst chars = {\n nilChar: char(176),\n missingChar: char(201),\n nilPremitive: char(175),\n missingPremitive: char(200),\n\n emptyChar: char(178),\n emptyValue: char(177), //empty Premitive\n\n boundryChar: char(179),\n\n objStart: char(198),\n arrStart: char(204),\n arrayEnd: char(185),\n};\n\nconst charsArr = [\n chars.nilChar,\n chars.nilPremitive,\n chars.missingChar,\n chars.missingPremitive,\n chars.boundryChar,\n chars.emptyChar,\n chars.emptyValue,\n chars.arrayEnd,\n chars.objStart,\n chars.arrStart,\n];\n\nconst _e = function(node, e_schema, options) {\n if (typeof e_schema === 'string') {\n //premitive\n if (node && node[0] && node[0].val !== undefined) {\n return getValue(node[0].val, e_schema);\n } else {\n return getValue(node, e_schema);\n }\n } else {\n const hasValidData = hasData(node);\n if (hasValidData === true) {\n let str = '';\n if (Array.isArray(e_schema)) {\n //attributes can't be repeated. hence check in children tags only\n str += chars.arrStart;\n const itemSchema = e_schema[0];\n //var itemSchemaType = itemSchema;\n const arr_len = node.length;\n\n if (typeof itemSchema === 'string') {\n for (let arr_i = 0; arr_i < arr_len; arr_i++) {\n const r = getValue(node[arr_i].val, itemSchema);\n str = processValue(str, r);\n }\n } else {\n for (let arr_i = 0; arr_i < arr_len; arr_i++) {\n const r = _e(node[arr_i], itemSchema, options);\n str = processValue(str, r);\n }\n }\n str += chars.arrayEnd; //indicates that next item is not array item\n } else {\n //object\n str += chars.objStart;\n const keys = Object.keys(e_schema);\n if (Array.isArray(node)) {\n node = node[0];\n }\n for (let i in keys) {\n const key = keys[i];\n //a property defined in schema can be present either in attrsMap or children tags\n //options.textNodeName will not present in both maps, take it's value from val\n //options.attrNodeName will be present in attrsMap\n let r;\n if (!options.ignoreAttributes && node.attrsMap && node.attrsMap[key]) {\n r = _e(node.attrsMap[key], e_schema[key], options);\n } else if (key === options.textNodeName) {\n r = _e(node.val, e_schema[key], options);\n } else {\n r = _e(node.child[key], e_schema[key], options);\n }\n str = processValue(str, r);\n }\n }\n return str;\n } else {\n return hasValidData;\n }\n }\n};\n\nconst getValue = function(a /*, type*/) {\n switch (a) {\n case undefined:\n return chars.missingPremitive;\n case null:\n return chars.nilPremitive;\n case '':\n return chars.emptyValue;\n default:\n return a;\n }\n};\n\nconst processValue = function(str, r) {\n if (!isAppChar(r[0]) && !isAppChar(str[str.length - 1])) {\n str += chars.boundryChar;\n }\n return str + r;\n};\n\nconst isAppChar = function(ch) {\n return charsArr.indexOf(ch) !== -1;\n};\n\nfunction hasData(jObj) {\n if (jObj === undefined) {\n return chars.missingChar;\n } else if (jObj === null) {\n return chars.nilChar;\n } else if (\n jObj.child &&\n Object.keys(jObj.child).length === 0 &&\n (!jObj.attrsMap || Object.keys(jObj.attrsMap).length === 0)\n ) {\n return chars.emptyChar;\n } else {\n return true;\n }\n}\n\nconst x2j = require('./xmlstr2xmlnode');\nconst buildOptions = require('./util').buildOptions;\n\nconst convert2nimn = function(node, e_schema, options) {\n options = buildOptions(options, x2j.defaultOptions, x2j.props);\n return _e(node, e_schema, options);\n};\n\nexports.convert2nimn = convert2nimn;\n","'use strict';\n\nconst util = require('./util');\n\nconst convertToJson = function(node, options, parentTagName) {\n const jObj = {};\n\n // when no child node or attr is present\n if ((!node.child || util.isEmptyObject(node.child)) && (!node.attrsMap || util.isEmptyObject(node.attrsMap))) {\n return util.isExist(node.val) ? node.val : '';\n }\n\n // otherwise create a textnode if node has some text\n if (util.isExist(node.val) && !(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) {\n const asArray = util.isTagNameInArrayMode(node.tagname, options.arrayMode, parentTagName)\n jObj[options.textNodeName] = asArray ? [node.val] : node.val;\n }\n\n util.merge(jObj, node.attrsMap, options.arrayMode);\n\n const keys = Object.keys(node.child);\n for (let index = 0; index < keys.length; index++) {\n const tagName = keys[index];\n if (node.child[tagName] && node.child[tagName].length > 1) {\n jObj[tagName] = [];\n for (let tag in node.child[tagName]) {\n if (node.child[tagName].hasOwnProperty(tag)) {\n jObj[tagName].push(convertToJson(node.child[tagName][tag], options, tagName));\n }\n }\n } else {\n const result = convertToJson(node.child[tagName][0], options, tagName);\n const asArray = (options.arrayMode === true && typeof result === 'object') || util.isTagNameInArrayMode(tagName, options.arrayMode, parentTagName);\n jObj[tagName] = asArray ? [result] : result;\n }\n }\n\n //add value\n return jObj;\n};\n\nexports.convertToJson = convertToJson;\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst x2j = require('./xmlstr2xmlnode');\n\n//TODO: do it later\nconst convertToJsonString = function(node, options) {\n options = buildOptions(options, x2j.defaultOptions, x2j.props);\n\n options.indentBy = options.indentBy || '';\n return _cToJsonStr(node, options, 0);\n};\n\nconst _cToJsonStr = function(node, options, level) {\n let jObj = '{';\n\n //traver through all the children\n const keys = Object.keys(node.child);\n\n for (let index = 0; index < keys.length; index++) {\n var tagname = keys[index];\n if (node.child[tagname] && node.child[tagname].length > 1) {\n jObj += '\"' + tagname + '\" : [ ';\n for (var tag in node.child[tagname]) {\n jObj += _cToJsonStr(node.child[tagname][tag], options) + ' , ';\n }\n jObj = jObj.substr(0, jObj.length - 1) + ' ] '; //remove extra comma in last\n } else {\n jObj += '\"' + tagname + '\" : ' + _cToJsonStr(node.child[tagname][0], options) + ' ,';\n }\n }\n util.merge(jObj, node.attrsMap);\n //add attrsMap as new children\n if (util.isEmptyObject(jObj)) {\n return util.isExist(node.val) ? node.val : '';\n } else {\n if (util.isExist(node.val)) {\n if (!(typeof node.val === 'string' && (node.val === '' || node.val === options.cdataPositionChar))) {\n jObj += '\"' + options.textNodeName + '\" : ' + stringval(node.val);\n }\n }\n }\n //add value\n if (jObj[jObj.length - 1] === ',') {\n jObj = jObj.substr(0, jObj.length - 2);\n }\n return jObj + '}';\n};\n\nfunction stringval(v) {\n if (v === true || v === false || !isNaN(v)) {\n return v;\n } else {\n return '\"' + v + '\"';\n }\n}\n\nfunction indentate(options, level) {\n return options.indentBy.repeat(level);\n}\n\nexports.convertToJsonString = convertToJsonString;\n","'use strict';\n\nconst nodeToJson = require('./node2json');\nconst xmlToNodeobj = require('./xmlstr2xmlnode');\nconst x2xmlnode = require('./xmlstr2xmlnode');\nconst buildOptions = require('./util').buildOptions;\nconst validator = require('./validator');\n\nexports.parse = function(xmlData, options, validationOption) {\n if( validationOption){\n if(validationOption === true) validationOption = {}\n \n const result = validator.validate(xmlData, validationOption);\n if (result !== true) {\n throw Error( result.err.msg)\n }\n }\n options = buildOptions(options, x2xmlnode.defaultOptions, x2xmlnode.props);\n const traversableObj = xmlToNodeobj.getTraversalObj(xmlData, options)\n //print(traversableObj, \" \");\n return nodeToJson.convertToJson(traversableObj, options);\n};\nexports.convertTonimn = require('./nimndata').convert2nimn;\nexports.getTraversalObj = xmlToNodeobj.getTraversalObj;\nexports.convertToJson = nodeToJson.convertToJson;\nexports.convertToJsonString = require('./node2json_str').convertToJsonString;\nexports.validate = validator.validate;\nexports.j2xParser = require('./json2xml');\nexports.parseToNimn = function(xmlData, schema, options) {\n return exports.convertTonimn(exports.getTraversalObj(xmlData, options), schema, options);\n};\n\n\nfunction print(xmlNode, indentation){\n if(xmlNode){\n console.log(indentation + \"{\")\n console.log(indentation + \" \\\"tagName\\\": \\\"\" + xmlNode.tagname + \"\\\", \");\n if(xmlNode.parent){\n console.log(indentation + \" \\\"parent\\\": \\\"\" + xmlNode.parent.tagname + \"\\\", \");\n }\n console.log(indentation + \" \\\"val\\\": \\\"\" + xmlNode.val + \"\\\", \");\n console.log(indentation + \" \\\"attrs\\\": \" + JSON.stringify(xmlNode.attrsMap,null,4) + \", \");\n\n if(xmlNode.child){\n console.log(indentation + \"\\\"child\\\": {\")\n const indentation2 = indentation + indentation;\n Object.keys(xmlNode.child).forEach( function(key) {\n const node = xmlNode.child[key];\n\n if(Array.isArray(node)){\n console.log(indentation + \"\\\"\"+key+\"\\\" :[\")\n node.forEach( function(item,index) {\n //console.log(indentation + \" \\\"\"+index+\"\\\" : [\")\n print(item, indentation2);\n })\n console.log(indentation + \"],\") \n }else{\n console.log(indentation + \" \\\"\"+key+\"\\\" : {\")\n print(node, indentation2);\n console.log(indentation + \"},\") \n }\n });\n console.log(indentation + \"},\")\n }\n console.log(indentation + \"},\")\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 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.buildOptions = function(options, defaultOptions, props) {\n var newOptions = {};\n if (!options) {\n return defaultOptions; //if there are not options\n }\n\n for (let i = 0; i < props.length; i++) {\n if (options[props[i]] !== undefined) {\n newOptions[props[i]] = options[props[i]];\n } else {\n newOptions[props[i]] = defaultOptions[props[i]];\n }\n }\n return newOptions;\n};\n\n/**\n * Check if a tag name should be treated as array\n *\n * @param tagName the node tagname\n * @param arrayMode the array mode option\n * @param parentTagName the parent tag name\n * @returns {boolean} true if node should be parsed as array\n */\nexports.isTagNameInArrayMode = function (tagName, arrayMode, parentTagName) {\n if (arrayMode === false) {\n return false;\n } else if (arrayMode instanceof RegExp) {\n return arrayMode.test(tagName);\n } else if (typeof arrayMode === 'function') {\n return !!arrayMode(tagName, parentTagName);\n }\n\n return arrayMode === \"strict\";\n}\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};\n\nconst props = ['allowBooleanAttributes'];\n\n//const tagsPattern = new RegExp(\"<\\\\/?([\\\\w:\\\\-_\\.]+)\\\\s*\\/?>\",\"g\");\nexports.validate = function (xmlData, options) {\n options = util.buildOptions(options, defaultOptions, props);\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(/()/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\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 = \"There is an unnecessary space between tag name and backward slash ' ..'.\";\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 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, i - attrStr.length + 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, i));\n } else {\n const otg = tags.pop();\n if (tagName !== otg) {\n return getErrorObject('InvalidTag', \"Closing tag '\"+otg+\"' is expected inplace of '\"+tagName+\"'.\", getLineNumberForPosition(xmlData, i));\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 {\n tags.push(tagName);\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 }\n } //end of reading tag text value\n if (xmlData[i] === '<') {\n i--;\n }\n }\n } else {\n if (xmlData[i] === ' ' || xmlData[i] === '\\t' || xmlData[i] === '\\n' || xmlData[i] === '\\r') {\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 > 0) {\n return getErrorObject('InvalidXml', \"Invalid '\"+JSON.stringify(tags, null, 4).replace(/\\r?\\n/g, '')+\"' found.\", 1);\n }\n\n return true;\n};\n\n/**\n * Read Processing insstructions and skip\n * @param {*} xmlData\n * @param {*} i\n */\nfunction readPI(xmlData, i) {\n var start = i;\n for (; i < xmlData.length; i++) {\n if (xmlData[i] == '?' || xmlData[i] == ' ') {\n //tagname\n var 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\nvar doubleQuote = '\"';\nvar 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 continue;\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(attrStr, matches[i][0]))\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(attrStr, matches[i][0]));\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(attrStr, matches[i][0]));\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(attrStr, matches[i][0]));\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,\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 var lines = xmlData.substring(0, index).split(/\\r?\\n/);\n return lines.length;\n}\n\n//this function returns the position of the last character of match within attrStr\nfunction getPositionFromMatch(attrStr, match) {\n return attrStr.indexOf(match) + match.length;\n}\n","'use strict';\n\nmodule.exports = function(tagname, parent, val) {\n this.tagname = tagname;\n this.parent = parent;\n this.child = {}; //child tags\n this.attrsMap = {}; //attributes map\n this.val = val; //text only\n this.addChild = function(child) {\n if (Array.isArray(this.child[child.tagname])) {\n //already presents\n this.child[child.tagname].push(child);\n } else {\n this.child[child.tagname] = [child];\n }\n };\n};\n","'use strict';\n\nconst util = require('./util');\nconst buildOptions = require('./util').buildOptions;\nconst xmlNode = require('./xmlNode');\nconst 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\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\nconst defaultOptions = {\n attributeNamePrefix: '@_',\n attrNodeName: false,\n textNodeName: '#text',\n ignoreAttributes: true,\n ignoreNameSpace: false,\n allowBooleanAttributes: false, //a tag can have attributes without any value\n //ignoreRootElement : false,\n parseNodeValue: true,\n parseAttributeValue: false,\n arrayMode: false,\n trimValues: true, //Trim string values of tag and attributes\n cdataTagName: false,\n cdataPositionChar: '\\\\c',\n tagValueProcessor: function(a, tagName) {\n return a;\n },\n attrValueProcessor: function(a, attrName) {\n return a;\n },\n stopNodes: []\n //decodeStrict: false,\n};\n\nexports.defaultOptions = defaultOptions;\n\nconst props = [\n 'attributeNamePrefix',\n 'attrNodeName',\n 'textNodeName',\n 'ignoreAttributes',\n 'ignoreNameSpace',\n 'allowBooleanAttributes',\n 'parseNodeValue',\n 'parseAttributeValue',\n 'arrayMode',\n 'trimValues',\n 'cdataTagName',\n 'cdataPositionChar',\n 'tagValueProcessor',\n 'attrValueProcessor',\n 'parseTrueNumberOnly',\n 'stopNodes'\n];\nexports.props = props;\n\n/**\n * Trim -> valueProcessor -> parse value\n * @param {string} tagName\n * @param {string} val\n * @param {object} options\n */\nfunction processTagValue(tagName, val, options) {\n if (val) {\n if (options.trimValues) {\n val = val.trim();\n }\n val = options.tagValueProcessor(val, tagName);\n val = parseValue(val, options.parseNodeValue, options.parseTrueNumberOnly);\n }\n\n return val;\n}\n\nfunction resolveNameSpace(tagname, options) {\n if (options.ignoreNameSpace) {\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\nfunction parseValue(val, shouldParse, parseTrueNumberOnly) {\n if (shouldParse && typeof val === 'string') {\n let parsed;\n if (val.trim() === '' || isNaN(val)) {\n parsed = val === 'true' ? true : val === 'false' ? false : val;\n } else {\n if (val.indexOf('0x') !== -1) {\n //support hexa decimal\n parsed = Number.parseInt(val, 16);\n } else if (val.indexOf('.') !== -1) {\n parsed = Number.parseFloat(val);\n val = val.replace(/\\.?0+$/, \"\");\n } else {\n parsed = Number.parseInt(val, 10);\n }\n if (parseTrueNumberOnly) {\n parsed = String(parsed) === val ? parsed : val;\n }\n }\n return parsed;\n } else {\n if (util.isExist(val)) {\n return val;\n } else {\n return '';\n }\n }\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*([\\'\"])(.*?)\\\\3)?', 'g');\n\nfunction buildAttributesMap(attrStr, options) {\n if (!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 = resolveNameSpace(matches[i][1], options);\n if (attrName.length) {\n if (matches[i][4] !== undefined) {\n if (options.trimValues) {\n matches[i][4] = matches[i][4].trim();\n }\n matches[i][4] = options.attrValueProcessor(matches[i][4], attrName);\n attrs[options.attributeNamePrefix + attrName] = parseValue(\n matches[i][4],\n options.parseAttributeValue,\n options.parseTrueNumberOnly\n );\n } else if (options.allowBooleanAttributes) {\n attrs[options.attributeNamePrefix + attrName] = true;\n }\n }\n }\n if (!Object.keys(attrs).length) {\n return;\n }\n if (options.attrNodeName) {\n const attrCollection = {};\n attrCollection[options.attrNodeName] = attrs;\n return attrCollection;\n }\n return attrs;\n }\n}\n\nconst getTraversalObj = function(xmlData, options) {\n xmlData = xmlData.replace(/\\r\\n?/g, \"\\n\");\n options = buildOptions(options, defaultOptions, props);\n const xmlObj = new xmlNode('!xml');\n let currentNode = xmlObj;\n let textData = \"\";\n\n//function match(xmlData){\n for(let i=0; i< xmlData.length; i++){\n const ch = xmlData[i];\n if(ch === '<'){\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(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n }\n }\n\n /* if (currentNode.parent) {\n currentNode.parent.val = util.getValue(currentNode.parent.val) + '' + processTagValue2(tagName, textData , options);\n } */\n if(currentNode){\n if(currentNode.val){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(tagName, textData , options);\n }else{\n currentNode.val = processTagValue(tagName, textData , options);\n }\n }\n\n if (options.stopNodes.length && options.stopNodes.includes(currentNode.tagname)) {\n currentNode.child = []\n if (currentNode.attrsMap == undefined) { currentNode.attrsMap = {}}\n currentNode.val = xmlData.substr(currentNode.startIndex + 1, i - currentNode.startIndex - 1)\n }\n currentNode = currentNode.parent;\n textData = \"\";\n i = closeIndex;\n } else if( xmlData[i+1] === '?') {\n i = findClosingIndex(xmlData, \"?>\", i, \"Pi Tag is not closed.\")\n } else if(xmlData.substr(i + 1, 3) === '!--') {\n i = findClosingIndex(xmlData, \"-->\", i, \"Comment is not closed.\")\n } else if( xmlData.substr(i + 1, 2) === '!D') {\n const closeIndex = findClosingIndex(xmlData, \">\", i, \"DOCTYPE is not closed.\")\n const tagExp = xmlData.substring(i, closeIndex);\n if(tagExp.indexOf(\"[\") >= 0){\n i = xmlData.indexOf(\"]>\", i) + 1;\n }else{\n i = closeIndex;\n }\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 //considerations\n //1. CDATA will always have parent node\n //2. A tag with CDATA is not a leaf node so it's value would be string type.\n if(textData){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue(currentNode.tagname, textData , options);\n textData = \"\";\n }\n\n if (options.cdataTagName) {\n //add cdata node\n const childNode = new xmlNode(options.cdataTagName, currentNode, tagExp);\n currentNode.addChild(childNode);\n //for backtracking\n currentNode.val = util.getValue(currentNode.val) + options.cdataPositionChar;\n //add rest value to parent node\n if (tagExp) {\n childNode.val = tagExp;\n }\n } else {\n currentNode.val = (currentNode.val || '') + (tagExp || '');\n }\n\n i = closeIndex + 2;\n }else {//Opening tag\n const result = closingIndexForOpeningTag(xmlData, i+1)\n let tagExp = result.data;\n const closeIndex = result.index;\n const separatorIndex = tagExp.indexOf(\" \");\n let tagName = tagExp;\n let shouldBuildAttributesMap = true;\n if(separatorIndex !== -1){\n tagName = tagExp.substr(0, separatorIndex).replace(/\\s\\s*$/, '');\n tagExp = tagExp.substr(separatorIndex + 1);\n }\n\n if(options.ignoreNameSpace){\n const colonIndex = tagName.indexOf(\":\");\n if(colonIndex !== -1){\n tagName = tagName.substr(colonIndex+1);\n shouldBuildAttributesMap = tagName !== result.data.substr(colonIndex + 1);\n }\n }\n\n //save text to parent node\n if (currentNode && textData) {\n if(currentNode.tagname !== '!xml'){\n currentNode.val = util.getValue(currentNode.val) + '' + processTagValue( currentNode.tagname, textData, options);\n }\n }\n\n if(tagExp.length > 0 && tagExp.lastIndexOf(\"/\") === tagExp.length - 1){//selfClosing tag\n\n if(tagName[tagName.length - 1] === \"/\"){ //remove trailing '/'\n tagName = tagName.substr(0, tagName.length - 1);\n tagExp = tagName;\n }else{\n tagExp = tagExp.substr(0, tagExp.length - 1);\n }\n\n const childNode = new xmlNode(tagName, currentNode, '');\n if(tagName !== tagExp){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n }else{//opening tag\n\n const childNode = new xmlNode( tagName, currentNode );\n if (options.stopNodes.length && options.stopNodes.includes(childNode.tagname)) {\n childNode.startIndex=closeIndex;\n }\n if(tagName !== tagExp && shouldBuildAttributesMap){\n childNode.attrsMap = buildAttributesMap(tagExp, options);\n }\n currentNode.addChild(childNode);\n currentNode = childNode;\n }\n textData = \"\";\n i = closeIndex;\n }\n }else{\n textData += xmlData[i];\n }\n }\n return xmlObj;\n}\n\nfunction closingIndexForOpeningTag(data, i){\n let attrBoundary;\n let tagExp = \"\";\n for (let index = i; index < data.length; index++) {\n let ch = data[index];\n if (attrBoundary) {\n if (ch === attrBoundary) attrBoundary = \"\";//reset\n } else if (ch === '\"' || ch === \"'\") {\n attrBoundary = ch;\n } else if (ch === '>') {\n return {\n data: tagExp,\n index: index\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\nexports.getTraversalObj = getTraversalObj;\n","var debug;\n\nmodule.exports = function () {\n if (!debug) {\n try {\n /* eslint global-require: off */\n debug = require(\"debug\")(\"follow-redirects\");\n }\n catch (error) { /* */ }\n if (typeof debug !== \"function\") {\n debug = function () { /* */ };\n }\n }\n debug.apply(null, arguments);\n};\n","var url = require(\"url\");\nvar URL = url.URL;\nvar http = require(\"http\");\nvar https = require(\"https\");\nvar Writable = require(\"stream\").Writable;\nvar assert = require(\"assert\");\nvar debug = require(\"./debug\");\n\n// Create handlers that pass events from native requests\nvar events = [\"abort\", \"aborted\", \"connect\", \"error\", \"socket\", \"timeout\"];\nvar eventHandlers = Object.create(null);\nevents.forEach(function (event) {\n eventHandlers[event] = function (arg1, arg2, arg3) {\n this._redirectable.emit(event, arg1, arg2, arg3);\n };\n});\n\n// Error types with codes\nvar RedirectionError = createErrorType(\n \"ERR_FR_REDIRECTION_FAILURE\",\n \"Redirected request failed\"\n);\nvar TooManyRedirectsError = createErrorType(\n \"ERR_FR_TOO_MANY_REDIRECTS\",\n \"Maximum number of redirects exceeded\"\n);\nvar MaxBodyLengthExceededError = createErrorType(\n \"ERR_FR_MAX_BODY_LENGTH_EXCEEDED\",\n \"Request body larger than maxBodyLength limit\"\n);\nvar WriteAfterEndError = createErrorType(\n \"ERR_STREAM_WRITE_AFTER_END\",\n \"write after end\"\n);\n\n// An HTTP(S) request that can be redirected\nfunction RedirectableRequest(options, responseCallback) {\n // Initialize the request\n Writable.call(this);\n this._sanitizeOptions(options);\n this._options = options;\n this._ended = false;\n this._ending = false;\n this._redirectCount = 0;\n this._redirects = [];\n this._requestBodyLength = 0;\n this._requestBodyBuffers = [];\n\n // Attach a callback if passed\n if (responseCallback) {\n this.on(\"response\", responseCallback);\n }\n\n // React to responses of native requests\n var self = this;\n this._onNativeResponse = function (response) {\n self._processResponse(response);\n };\n\n // Perform the first request\n this._performRequest();\n}\nRedirectableRequest.prototype = Object.create(Writable.prototype);\n\nRedirectableRequest.prototype.abort = function () {\n abortRequest(this._currentRequest);\n this.emit(\"abort\");\n};\n\n// Writes buffered data to the current native request\nRedirectableRequest.prototype.write = function (data, encoding, callback) {\n // Writing is not allowed if end has been called\n if (this._ending) {\n throw new WriteAfterEndError();\n }\n\n // Validate input and shift parameters if necessary\n if (!(typeof data === \"string\" || typeof data === \"object\" && (\"length\" in data))) {\n throw new TypeError(\"data should be a string, Buffer or Uint8Array\");\n }\n if (typeof encoding === \"function\") {\n callback = encoding;\n encoding = null;\n }\n\n // Ignore empty buffers, since writing them doesn't invoke the callback\n // https://github.com/nodejs/node/issues/22066\n if (data.length === 0) {\n if (callback) {\n callback();\n }\n return;\n }\n // Only write when we don't exceed the maximum body length\n if (this._requestBodyLength + data.length <= this._options.maxBodyLength) {\n this._requestBodyLength += data.length;\n this._requestBodyBuffers.push({ data: data, encoding: encoding });\n this._currentRequest.write(data, encoding, callback);\n }\n // Error when we exceed the maximum body length\n else {\n this.emit(\"error\", new MaxBodyLengthExceededError());\n this.abort();\n }\n};\n\n// Ends the current native request\nRedirectableRequest.prototype.end = function (data, encoding, callback) {\n // Shift parameters if necessary\n if (typeof data === \"function\") {\n callback = data;\n data = encoding = null;\n }\n else if (typeof encoding === \"function\") {\n callback = encoding;\n encoding = null;\n }\n\n // Write data if needed and end\n if (!data) {\n this._ended = this._ending = true;\n this._currentRequest.end(null, null, callback);\n }\n else {\n var self = this;\n var currentRequest = this._currentRequest;\n this.write(data, encoding, function () {\n self._ended = true;\n currentRequest.end(null, null, callback);\n });\n this._ending = true;\n }\n};\n\n// Sets a header value on the current native request\nRedirectableRequest.prototype.setHeader = function (name, value) {\n this._options.headers[name] = value;\n this._currentRequest.setHeader(name, value);\n};\n\n// Clears a header value on the current native request\nRedirectableRequest.prototype.removeHeader = function (name) {\n delete this._options.headers[name];\n this._currentRequest.removeHeader(name);\n};\n\n// Global timeout for all underlying requests\nRedirectableRequest.prototype.setTimeout = function (msecs, callback) {\n var self = this;\n\n // Destroys the socket on timeout\n function destroyOnTimeout(socket) {\n socket.setTimeout(msecs);\n socket.removeListener(\"timeout\", socket.destroy);\n socket.addListener(\"timeout\", socket.destroy);\n }\n\n // Sets up a timer to trigger a timeout event\n function startTimer(socket) {\n if (self._timeout) {\n clearTimeout(self._timeout);\n }\n self._timeout = setTimeout(function () {\n self.emit(\"timeout\");\n clearTimer();\n }, msecs);\n destroyOnTimeout(socket);\n }\n\n // Stops a timeout from triggering\n function clearTimer() {\n // Clear the timeout\n if (self._timeout) {\n clearTimeout(self._timeout);\n self._timeout = null;\n }\n\n // Clean up all attached listeners\n self.removeListener(\"abort\", clearTimer);\n self.removeListener(\"error\", clearTimer);\n self.removeListener(\"response\", clearTimer);\n if (callback) {\n self.removeListener(\"timeout\", callback);\n }\n if (!self.socket) {\n self._currentRequest.removeListener(\"socket\", startTimer);\n }\n }\n\n // Attach callback if passed\n if (callback) {\n this.on(\"timeout\", callback);\n }\n\n // Start the timer if or when the socket is opened\n if (this.socket) {\n startTimer(this.socket);\n }\n else {\n this._currentRequest.once(\"socket\", startTimer);\n }\n\n // Clean up on events\n this.on(\"socket\", destroyOnTimeout);\n this.on(\"abort\", clearTimer);\n this.on(\"error\", clearTimer);\n this.on(\"response\", clearTimer);\n\n return this;\n};\n\n// Proxy all other public ClientRequest methods\n[\n \"flushHeaders\", \"getHeader\",\n \"setNoDelay\", \"setSocketKeepAlive\",\n].forEach(function (method) {\n RedirectableRequest.prototype[method] = function (a, b) {\n return this._currentRequest[method](a, b);\n };\n});\n\n// Proxy all public ClientRequest properties\n[\"aborted\", \"connection\", \"socket\"].forEach(function (property) {\n Object.defineProperty(RedirectableRequest.prototype, property, {\n get: function () { return this._currentRequest[property]; },\n });\n});\n\nRedirectableRequest.prototype._sanitizeOptions = function (options) {\n // Ensure headers are always present\n if (!options.headers) {\n options.headers = {};\n }\n\n // Since http.request treats host as an alias of hostname,\n // but the url module interprets host as hostname plus port,\n // eliminate the host property to avoid confusion.\n if (options.host) {\n // Use hostname if set, because it has precedence\n if (!options.hostname) {\n options.hostname = options.host;\n }\n delete options.host;\n }\n\n // Complete the URL object when necessary\n if (!options.pathname && options.path) {\n var searchPos = options.path.indexOf(\"?\");\n if (searchPos < 0) {\n options.pathname = options.path;\n }\n else {\n options.pathname = options.path.substring(0, searchPos);\n options.search = options.path.substring(searchPos);\n }\n }\n};\n\n\n// Executes the next native request (initial or redirect)\nRedirectableRequest.prototype._performRequest = function () {\n // Load the native protocol\n var protocol = this._options.protocol;\n var nativeProtocol = this._options.nativeProtocols[protocol];\n if (!nativeProtocol) {\n this.emit(\"error\", new TypeError(\"Unsupported protocol \" + protocol));\n return;\n }\n\n // If specified, use the agent corresponding to the protocol\n // (HTTP and HTTPS use different types of agents)\n if (this._options.agents) {\n var scheme = protocol.substr(0, protocol.length - 1);\n this._options.agent = this._options.agents[scheme];\n }\n\n // Create the native request\n var request = this._currentRequest =\n nativeProtocol.request(this._options, this._onNativeResponse);\n this._currentUrl = url.format(this._options);\n\n // Set up event handlers\n request._redirectable = this;\n for (var e = 0; e < events.length; e++) {\n request.on(events[e], eventHandlers[events[e]]);\n }\n\n // End a redirected request\n // (The first request must be ended explicitly with RedirectableRequest#end)\n if (this._isRedirect) {\n // Write the request entity and end.\n var i = 0;\n var self = this;\n var buffers = this._requestBodyBuffers;\n (function writeNext(error) {\n // Only write if this request has not been redirected yet\n /* istanbul ignore else */\n if (request === self._currentRequest) {\n // Report any write errors\n /* istanbul ignore if */\n if (error) {\n self.emit(\"error\", error);\n }\n // Write the next buffer if there are still left\n else if (i < buffers.length) {\n var buffer = buffers[i++];\n /* istanbul ignore else */\n if (!request.finished) {\n request.write(buffer.data, buffer.encoding, writeNext);\n }\n }\n // End the request if `end` has been called on us\n else if (self._ended) {\n request.end();\n }\n }\n }());\n }\n};\n\n// Processes a response from the current native request\nRedirectableRequest.prototype._processResponse = function (response) {\n // Store the redirected response\n var statusCode = response.statusCode;\n if (this._options.trackRedirects) {\n this._redirects.push({\n url: this._currentUrl,\n headers: response.headers,\n statusCode: statusCode,\n });\n }\n\n // RFC7231§6.4: The 3xx (Redirection) class of status code indicates\n // that further action needs to be taken by the user agent in order to\n // fulfill the request. If a Location header field is provided,\n // the user agent MAY automatically redirect its request to the URI\n // referenced by the Location field value,\n // even if the specific status code is not understood.\n var location = response.headers.location;\n if (location && this._options.followRedirects !== false &&\n statusCode >= 300 && statusCode < 400) {\n // Abort the current request\n abortRequest(this._currentRequest);\n // Discard the remainder of the response to avoid waiting for data\n response.destroy();\n\n // RFC7231§6.4: A client SHOULD detect and intervene\n // in cyclical redirections (i.e., \"infinite\" redirection loops).\n if (++this._redirectCount > this._options.maxRedirects) {\n this.emit(\"error\", new TooManyRedirectsError());\n return;\n }\n\n // RFC7231§6.4: Automatic redirection needs to done with\n // care for methods not known to be safe, […]\n // RFC7231§6.4.2–3: For historical reasons, a user agent MAY change\n // the request method from POST to GET for the subsequent request.\n if ((statusCode === 301 || statusCode === 302) && this._options.method === \"POST\" ||\n // RFC7231§6.4.4: The 303 (See Other) status code indicates that\n // the server is redirecting the user agent to a different resource […]\n // A user agent can perform a retrieval request targeting that URI\n // (a GET or HEAD request if using HTTP) […]\n (statusCode === 303) && !/^(?:GET|HEAD)$/.test(this._options.method)) {\n this._options.method = \"GET\";\n // Drop a possible entity and headers related to it\n this._requestBodyBuffers = [];\n removeMatchingHeaders(/^content-/i, this._options.headers);\n }\n\n // Drop the Host header, as the redirect might lead to a different host\n var currentHostHeader = removeMatchingHeaders(/^host$/i, this._options.headers);\n\n // If the redirect is relative, carry over the host of the last request\n var currentUrlParts = url.parse(this._currentUrl);\n var currentHost = currentHostHeader || currentUrlParts.host;\n var currentUrl = /^\\w+:/.test(location) ? this._currentUrl :\n url.format(Object.assign(currentUrlParts, { host: currentHost }));\n\n // Determine the URL of the redirection\n var redirectUrl;\n try {\n redirectUrl = url.resolve(currentUrl, location);\n }\n catch (cause) {\n this.emit(\"error\", new RedirectionError(cause));\n return;\n }\n\n // Create the redirected request\n debug(\"redirecting to\", redirectUrl);\n this._isRedirect = true;\n var redirectUrlParts = url.parse(redirectUrl);\n Object.assign(this._options, redirectUrlParts);\n\n // Drop the Authorization header if redirecting to another domain\n if (!(redirectUrlParts.host === currentHost || isSubdomainOf(redirectUrlParts.host, currentHost))) {\n removeMatchingHeaders(/^authorization$/i, this._options.headers);\n }\n\n // Evaluate the beforeRedirect callback\n if (typeof this._options.beforeRedirect === \"function\") {\n var responseDetails = { headers: response.headers };\n try {\n this._options.beforeRedirect.call(null, this._options, responseDetails);\n }\n catch (err) {\n this.emit(\"error\", err);\n return;\n }\n this._sanitizeOptions(this._options);\n }\n\n // Perform the redirected request\n try {\n this._performRequest();\n }\n catch (cause) {\n this.emit(\"error\", new RedirectionError(cause));\n }\n }\n else {\n // The response is not a redirect; return it as-is\n response.responseUrl = this._currentUrl;\n response.redirects = this._redirects;\n this.emit(\"response\", response);\n\n // Clean up\n this._requestBodyBuffers = [];\n }\n};\n\n// Wraps the key/value object of protocols with redirect functionality\nfunction wrap(protocols) {\n // Default settings\n var exports = {\n maxRedirects: 21,\n maxBodyLength: 10 * 1024 * 1024,\n };\n\n // Wrap each protocol\n var nativeProtocols = {};\n Object.keys(protocols).forEach(function (scheme) {\n var protocol = scheme + \":\";\n var nativeProtocol = nativeProtocols[protocol] = protocols[scheme];\n var wrappedProtocol = exports[scheme] = Object.create(nativeProtocol);\n\n // Executes a request, following redirects\n function request(input, options, callback) {\n // Parse parameters\n if (typeof input === \"string\") {\n var urlStr = input;\n try {\n input = urlToOptions(new URL(urlStr));\n }\n catch (err) {\n /* istanbul ignore next */\n input = url.parse(urlStr);\n }\n }\n else if (URL && (input instanceof URL)) {\n input = urlToOptions(input);\n }\n else {\n callback = options;\n options = input;\n input = { protocol: protocol };\n }\n if (typeof options === \"function\") {\n callback = options;\n options = null;\n }\n\n // Set defaults\n options = Object.assign({\n maxRedirects: exports.maxRedirects,\n maxBodyLength: exports.maxBodyLength,\n }, input, options);\n options.nativeProtocols = nativeProtocols;\n\n assert.equal(options.protocol, protocol, \"protocol mismatch\");\n debug(\"options\", options);\n return new RedirectableRequest(options, callback);\n }\n\n // Executes a GET request, following redirects\n function get(input, options, callback) {\n var wrappedRequest = wrappedProtocol.request(input, options, callback);\n wrappedRequest.end();\n return wrappedRequest;\n }\n\n // Expose the properties on the wrapped protocol\n Object.defineProperties(wrappedProtocol, {\n request: { value: request, configurable: true, enumerable: true, writable: true },\n get: { value: get, configurable: true, enumerable: true, writable: true },\n });\n });\n return exports;\n}\n\n/* istanbul ignore next */\nfunction noop() { /* empty */ }\n\n// from https://github.com/nodejs/node/blob/master/lib/internal/url.js\nfunction urlToOptions(urlObject) {\n var options = {\n protocol: urlObject.protocol,\n hostname: urlObject.hostname.startsWith(\"[\") ?\n /* istanbul ignore next */\n urlObject.hostname.slice(1, -1) :\n urlObject.hostname,\n hash: urlObject.hash,\n search: urlObject.search,\n pathname: urlObject.pathname,\n path: urlObject.pathname + urlObject.search,\n href: urlObject.href,\n };\n if (urlObject.port !== \"\") {\n options.port = Number(urlObject.port);\n }\n return options;\n}\n\nfunction removeMatchingHeaders(regex, headers) {\n var lastValue;\n for (var header in headers) {\n if (regex.test(header)) {\n lastValue = headers[header];\n delete headers[header];\n }\n }\n return (lastValue === null || typeof lastValue === \"undefined\") ?\n undefined : String(lastValue).trim();\n}\n\nfunction createErrorType(code, defaultMessage) {\n function CustomError(cause) {\n Error.captureStackTrace(this, this.constructor);\n if (!cause) {\n this.message = defaultMessage;\n }\n else {\n this.message = defaultMessage + \": \" + cause.message;\n this.cause = cause;\n }\n }\n CustomError.prototype = new Error();\n CustomError.prototype.constructor = CustomError;\n CustomError.prototype.name = \"Error [\" + code + \"]\";\n CustomError.prototype.code = code;\n return CustomError;\n}\n\nfunction abortRequest(request) {\n for (var e = 0; e < events.length; e++) {\n request.removeListener(events[e], eventHandlers[events[e]]);\n }\n request.on(\"error\", noop);\n request.abort();\n}\n\nfunction isSubdomainOf(subdomain, domain) {\n const dot = subdomain.length - domain.length - 1;\n return dot > 0 && subdomain[dot] === \".\" && subdomain.endsWith(domain);\n}\n\n// Exports\nmodule.exports = wrap({ http: http, https: https });\nmodule.exports.wrap = wrap;\n","'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n","/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n","'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.58-7\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nimport { Configuration } from './configuration';\nimport globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common';\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS, RequestArgs, BaseAPI, RequiredError } from './base';\n\n/**\n * \n * @export\n * @interface GithubSlsRestApiAssumeBrowserResponse\n */\nexport interface GithubSlsRestApiAssumeBrowserResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAssumeBrowserResponse\n */\n 'browserUri': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\nexport interface GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1 {\n /**\n * \n * @type {GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'version': GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum;\n /**\n * \n * @type {GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'type': GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'deleted'?: boolean;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'token'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'email'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum {\n GithubLoginTokenEvent = 'GithubLoginTokenEvent'\n}\n\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum {\n NUMBER_1 = 1\n}\n\n/**\n * \n * @export\n * @interface GithubSlsRestApiAwsAssumeSdkOptions\n */\nexport interface GithubSlsRestApiAwsAssumeSdkOptions {\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiAwsAssumeSdkOptions\n */\n 'DurationSeconds': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAwsAssumeSdkOptions\n */\n 'RoleArn': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiAwsAssumeSdkOptions\n */\n 'PrincipalArn': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiConfigBaseSupportedVersions\n */\nexport interface GithubSlsRestApiConfigBaseSupportedVersions {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'repo'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'org'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'ref'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'sha'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'path'?: string;\n /**\n * \n * @type {GithubSlsRestApiSupportedVersions}\n * @memberof GithubSlsRestApiConfigBaseSupportedVersions\n */\n 'version': GithubSlsRestApiSupportedVersions;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiConfigV20220101\n */\nexport interface GithubSlsRestApiConfigV20220101 {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'repo'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'org'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'ref'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'sha'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'path'?: string;\n /**\n * \n * @type {GithubSlsRestApiSupportedVersions}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'version': GithubSlsRestApiSupportedVersions;\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiPermissionV1; }}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'permissions'?: { [key: string]: GithubSlsRestApiPermissionV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiProviderV1; }}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'providers'?: { [key: string]: GithubSlsRestApiProviderV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiVariableV1; }}\n * @memberof GithubSlsRestApiConfigV20220101\n */\n 'variables'?: { [key: string]: GithubSlsRestApiVariableV1; };\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiConfigV20220101AllOf\n */\nexport interface GithubSlsRestApiConfigV20220101AllOf {\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiPermissionV1; }}\n * @memberof GithubSlsRestApiConfigV20220101AllOf\n */\n 'permissions'?: { [key: string]: GithubSlsRestApiPermissionV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiProviderV1; }}\n * @memberof GithubSlsRestApiConfigV20220101AllOf\n */\n 'providers'?: { [key: string]: GithubSlsRestApiProviderV1; };\n /**\n * \n * @type {{ [key: string]: GithubSlsRestApiVariableV1; }}\n * @memberof GithubSlsRestApiConfigV20220101AllOf\n */\n 'variables'?: { [key: string]: GithubSlsRestApiVariableV1; };\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiEncryptRequest\n */\nexport interface GithubSlsRestApiEncryptRequest {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptRequest\n */\n 'value': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiEncryptResponse\n */\nexport interface GithubSlsRestApiEncryptResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptResponse\n */\n 'encryptedValue': string;\n}\n/**\n * This file was automatically generated by joi-to-typescript Do not modify this file manually\n * @export\n * @interface GithubSlsRestApiEncryptedField\n */\nexport interface GithubSlsRestApiEncryptedField {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptedField\n */\n 'encryptedValue': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiEncryptedField\n */\n 'keyId': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiErrorResponse\n */\nexport interface GithubSlsRestApiErrorResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'message': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'traceId': string;\n /**\n * \n * @type {GithubSlsRestApiErrorResponseTracking}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'tracking': GithubSlsRestApiErrorResponseTracking;\n /**\n * \n * @type {{ [key: string]: any; }}\n * @memberof GithubSlsRestApiErrorResponse\n */\n 'context'?: { [key: string]: any; };\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiErrorResponseTracking\n */\nexport interface GithubSlsRestApiErrorResponseTracking {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponseTracking\n */\n 'method': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponseTracking\n */\n 'path': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiErrorResponseTracking\n */\n 'version': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiGithubUserResponse\n */\nexport interface GithubSlsRestApiGithubUserResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiGithubUserResponse\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiHealthResponse\n */\nexport interface GithubSlsRestApiHealthResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'version': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'now': string;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'healty': boolean;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiHealthResponse\n */\n 'name': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiIdentityResponse\n */\nexport interface GithubSlsRestApiIdentityResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiIdentityResponse\n */\n 'type': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiIdentityResponse\n */\n 'name': string;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiIdentityResponse\n */\n 'id': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiIdentityResponse\n */\n 'fullName': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiIdentityResponse\n */\n 'email': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiIdentityResponse\n */\n 'clientId': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseLoginResponse\n */\nexport interface GithubSlsRestApiListResponseLoginResponse {\n /**\n * \n * @type {GithubSlsRestApiListResponseOrgRepoResponseNext}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'next'?: GithubSlsRestApiListResponseOrgRepoResponseNext;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'total': number;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'count': number;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiListResponseLoginResponse\n */\n 'results': Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseOrgRepoResponse\n */\nexport interface GithubSlsRestApiListResponseOrgRepoResponse {\n /**\n * \n * @type {GithubSlsRestApiListResponseOrgRepoResponseNext}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'next'?: GithubSlsRestApiListResponseOrgRepoResponseNext;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'total': number;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'count': number;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponse\n */\n 'results': Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseOrgRepoResponseNext\n */\nexport interface GithubSlsRestApiListResponseOrgRepoResponseNext {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponseNext\n */\n 'sk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiListResponseOrgRepoResponseNext\n */\n 'pk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiListResponseRoleResponse\n */\nexport interface GithubSlsRestApiListResponseRoleResponse {\n /**\n * \n * @type {GithubSlsRestApiListResponseOrgRepoResponseNext}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'next'?: GithubSlsRestApiListResponseOrgRepoResponseNext;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'total': number;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'count': number;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiListResponseRoleResponse\n */\n 'results': Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiLoginResponse\n */\nexport interface GithubSlsRestApiLoginResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'issuer': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponse\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiLoginResponseContainer\n */\nexport interface GithubSlsRestApiLoginResponseContainer {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'browserUri': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginResponseContainer\n */\n 'org': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiLoginToken\n */\nexport interface GithubSlsRestApiLoginToken {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'email'?: string;\n /**\n * \n * @type {GithubSlsRestApiEncryptedField}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'encryptedToken': GithubSlsRestApiEncryptedField;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'login': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'namespace': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'pk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'scopes'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiLoginToken\n */\n 'sk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiMetadataResponse\n */\nexport interface GithubSlsRestApiMetadataResponse {\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'admins': Array;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'certificate': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'logoutUrl': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'loginUrl': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'entityId': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiMetadataResponse\n */\n 'metadataXml': string;\n}\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiNameIdFormatV1 {\n Id = 'id',\n Login = 'login',\n Email = 'email',\n EmailV2 = 'emailV2'\n}\n\n/**\n * This file was automatically generated by joi-to-typescript Do not modify this file manually\n * @export\n * @interface GithubSlsRestApiOrgRepo\n */\nexport interface GithubSlsRestApiOrgRepo {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'baseUrl': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'configSha'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'org': string;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'orgId': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'pk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'repo': string;\n /**\n * \n * @type {number}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'repoId': number;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepo\n */\n 'sk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\nexport interface GithubSlsRestApiOrgRepoConfigRefreshResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'branch'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'path'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'sha'?: string;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'dryrun': boolean;\n /**\n * \n * @type {GithubSlsRestApiConfigV20220101}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponse\n */\n 'config': GithubSlsRestApiConfigV20220101;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\nexport interface GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'branch'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'path'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'sha'?: string;\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'dryrun': boolean;\n /**\n * \n * @type {GithubSlsRestApiConfigV20220101}\n * @memberof GithubSlsRestApiOrgRepoConfigRefreshResponseAllOf\n */\n 'config': GithubSlsRestApiConfigV20220101;\n}\n/**\n * This file was automatically generated by joi-to-typescript Do not modify this file manually\n * @export\n * @interface GithubSlsRestApiOrgRepoLogin\n */\nexport interface GithubSlsRestApiOrgRepoLogin {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'login': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'pk': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoLogin\n */\n 'sk': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiOrgRepoResponse\n */\nexport interface GithubSlsRestApiOrgRepoResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiOrgRepoResponse\n */\n 'org': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiPermissionV1\n */\nexport interface GithubSlsRestApiPermissionV1 {\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'self'?: boolean;\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'roles'?: Array;\n /**\n * \n * @type {GithubSlsRestApiReposV1}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'repos'?: GithubSlsRestApiReposV1;\n /**\n * \n * @type {GithubSlsRestApiUsersV1}\n * @memberof GithubSlsRestApiPermissionV1\n */\n 'users'?: GithubSlsRestApiUsersV1;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiProviderV1\n */\nexport interface GithubSlsRestApiProviderV1 {\n /**\n * \n * @type {GithubSlsRestApiProvisioningV1}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'provisioning'?: GithubSlsRestApiProvisioningV1;\n /**\n * \n * @type {{ [key: string]: string; }}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'attributes'?: { [key: string]: string; };\n /**\n * \n * @type {GithubSlsRestApiNameIdFormatV1}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'nameIdFormat'?: GithubSlsRestApiNameIdFormatV1;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'nameId'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'loginUrl'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'acsUrl'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiProviderV1\n */\n 'entityId'?: string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiProvisioningV1\n */\nexport interface GithubSlsRestApiProvisioningV1 {\n /**\n * \n * @type {GithubSlsRestApiScimV1}\n * @memberof GithubSlsRestApiProvisioningV1\n */\n 'scim'?: GithubSlsRestApiScimV1;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiRepoV1\n */\nexport interface GithubSlsRestApiRepoV1 {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRepoV1\n */\n 'name'?: string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiReposV1\n */\nexport interface GithubSlsRestApiReposV1 {\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiReposV1\n */\n 'github'?: Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiRoleResponse\n */\nexport interface GithubSlsRestApiRoleResponse {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'issuer': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'role': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'org': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRoleResponse\n */\n 'login': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiRolesV1\n */\nexport interface GithubSlsRestApiRolesV1 {\n /**\n * \n * @type {boolean}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'self'?: boolean;\n /**\n * \n * @type {GithubSlsRestApiReposV1}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'repos'?: GithubSlsRestApiReposV1;\n /**\n * \n * @type {GithubSlsRestApiUsersV1}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'users'?: GithubSlsRestApiUsersV1;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiRolesV1\n */\n 'name'?: string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiSamlResponseContainer\n */\nexport interface GithubSlsRestApiSamlResponseContainer {\n /**\n * \n * @type {GithubSlsRestApiAwsAssumeSdkOptions}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'sdkOptions'?: GithubSlsRestApiAwsAssumeSdkOptions;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'browserUri'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'role'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'provider': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'repo': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'org': string;\n /**\n * \n * @type {{ [key: string]: string; }}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'attributes'?: { [key: string]: string; };\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'samlResponse': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'relayState': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'recipient': string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiSamlResponseContainer\n */\n 'issuer': string;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiScimV1\n */\nexport interface GithubSlsRestApiScimV1 {\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiScimV1\n */\n 'encryptedToken'?: string;\n /**\n * \n * @type {string}\n * @memberof GithubSlsRestApiScimV1\n */\n 'endpoint'?: string;\n}\n/**\n * \n * @export\n * @enum {string}\n */\n\nexport enum GithubSlsRestApiSupportedVersions {\n _20220101 = '20220101'\n}\n\n/**\n * \n * @export\n * @interface GithubSlsRestApiUsersV1\n */\nexport interface GithubSlsRestApiUsersV1 {\n /**\n * \n * @type {Array}\n * @memberof GithubSlsRestApiUsersV1\n */\n 'github'?: Array;\n}\n/**\n * \n * @export\n * @interface GithubSlsRestApiVariableV1\n */\nexport interface GithubSlsRestApiVariableV1 {\n}\n\n/**\n * HealthApi - axios parameter creator\n * @export\n */\nexport const HealthApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n get: async (options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/health`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * HealthApi - functional programming interface\n * @export\n */\nexport const HealthApiFp = function(configuration?: Configuration) {\n const localVarAxiosParamCreator = HealthApiAxiosParamCreator(configuration)\n return {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async get(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.get(options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n }\n};\n\n/**\n * HealthApi - factory interface\n * @export\n */\nexport const HealthApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n const localVarFp = HealthApiFp(configuration)\n return {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n get(options?: any): AxiosPromise {\n return localVarFp.get(options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * HealthApi - object-oriented interface\n * @export\n * @class HealthApi\n * @extends {BaseAPI}\n */\nexport class HealthApi extends BaseAPI {\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof HealthApi\n */\n public get(options?: AxiosRequestConfig) {\n return HealthApiFp(this.configuration).get(options).then((request) => request(this.axios, this.basePath));\n }\n}\n\n\n/**\n * IDPApi - axios parameter creator\n * @export\n */\nexport const IDPApiAxiosParamCreator = function (configuration?: Configuration) {\n return {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRole: async (role: string, org?: string, provider?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'role' is not null or undefined\n assertParamExists('assumeRole', 'role', role)\n const localVarPath = `/api/v1/idp/roles/{role}/assume`\n .replace(`{${\"role\"}}`, encodeURIComponent(String(role)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForBrowser: async (role: string, org?: string, provider?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'role' is not null or undefined\n assertParamExists('assumeRoleForBrowser', 'role', role)\n const localVarPath = `/api/v1/idp/roles/{role}/assume/browser`\n .replace(`{${\"role\"}}`, encodeURIComponent(String(role)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {string} [configOwner] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForRepo: async (org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('assumeRoleForRepo', 'org', org)\n // verify required parameter 'repo' is not null or undefined\n assertParamExists('assumeRoleForRepo', 'repo', repo)\n // verify required parameter 'role' is not null or undefined\n assertParamExists('assumeRoleForRepo', 'role', role)\n const localVarPath = `/api/v1/idp/orgs/{org}/repos/{repo}/roles/{role}/assume`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)))\n .replace(`{${\"repo\"}}`, encodeURIComponent(String(repo)))\n .replace(`{${\"role\"}}`, encodeURIComponent(String(role)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n if (commitSha !== undefined) {\n localVarQueryParameter['commitSha'] = commitSha;\n }\n\n if (configOwner !== undefined) {\n localVarQueryParameter['configOwner'] = configOwner;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n encrypt: async (org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('encrypt', 'org', org)\n // verify required parameter 'githubSlsRestApiEncryptRequest' is not null or undefined\n assertParamExists('encrypt', 'githubSlsRestApiEncryptRequest', githubSlsRestApiEncryptRequest)\n const localVarPath = `/api/v1/idp/orgs/{org}/encrypt`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n\n \n localVarHeaderParameter['Content-Type'] = 'application/json';\n\n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n localVarRequestOptions.data = serializeDataIfNeeded(githubSlsRestApiEncryptRequest, localVarRequestOptions, configuration)\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getIdentity: async (options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/me`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgConfig: async (org: string, raw?: boolean, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('getOrgConfig', 'org', org)\n const localVarPath = `/api/v1/idp/orgs/{org}/config`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (raw !== undefined) {\n localVarQueryParameter['raw'] = raw;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgMetadata: async (org: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('getOrgMetadata', 'org', org)\n const localVarPath = `/api/v1/idp/orgs/{org}/metadata`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listLogins: async (org?: string, refresh?: boolean, options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/logins`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (refresh !== undefined) {\n localVarQueryParameter['refresh'] = refresh;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listOrgRepos: async (options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/orgs`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listRoles: async (org?: string, provider?: string, refresh?: boolean, options: AxiosRequestConfig = {}): Promise => {\n const localVarPath = `/api/v1/idp/roles`;\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'GET', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n if (provider !== undefined) {\n localVarQueryParameter['provider'] = provider;\n }\n\n if (refresh !== undefined) {\n localVarQueryParameter['refresh'] = refresh;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n providerLogin: async (provider: string, org?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'provider' is not null or undefined\n assertParamExists('providerLogin', 'provider', provider)\n const localVarPath = `/api/v1/idp/logins/{provider}/login`\n .replace(`{${\"provider\"}}`, encodeURIComponent(String(provider)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (org !== undefined) {\n localVarQueryParameter['org'] = org;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n refreshOrgRepoConfig: async (org: string, repo: string, dryrun?: boolean, commitSha?: string, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('refreshOrgRepoConfig', 'org', org)\n // verify required parameter 'repo' is not null or undefined\n assertParamExists('refreshOrgRepoConfig', 'repo', repo)\n const localVarPath = `/api/v1/idp/orgs/{org}/repos/{repo}/config`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)))\n .replace(`{${\"repo\"}}`, encodeURIComponent(String(repo)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (dryrun !== undefined) {\n localVarQueryParameter['dryrun'] = dryrun;\n }\n\n if (commitSha !== undefined) {\n localVarQueryParameter['commitSha'] = commitSha;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n setOrgAndRepo: async (org: string, repo: string, force?: boolean, options: AxiosRequestConfig = {}): Promise => {\n // verify required parameter 'org' is not null or undefined\n assertParamExists('setOrgAndRepo', 'org', org)\n // verify required parameter 'repo' is not null or undefined\n assertParamExists('setOrgAndRepo', 'repo', repo)\n const localVarPath = `/api/v1/idp/orgs/{org}/repos/{repo}`\n .replace(`{${\"org\"}}`, encodeURIComponent(String(org)))\n .replace(`{${\"repo\"}}`, encodeURIComponent(String(repo)));\n // use dummy base URL string because the URL constructor only accepts absolute URLs.\n const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);\n let baseOptions;\n if (configuration) {\n baseOptions = configuration.baseOptions;\n }\n\n const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options};\n const localVarHeaderParameter = {} as any;\n const localVarQueryParameter = {} as any;\n\n // authentication jwt required\n // http bearer authentication required\n await setBearerAuthToObject(localVarHeaderParameter, configuration)\n\n if (force !== undefined) {\n localVarQueryParameter['force'] = force;\n }\n\n\n \n setSearchParams(localVarUrlObj, localVarQueryParameter);\n let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {};\n localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers};\n\n return {\n url: toPathString(localVarUrlObj),\n options: localVarRequestOptions,\n };\n },\n }\n};\n\n/**\n * IDPApi - functional programming interface\n * @export\n */\nexport const IDPApiFp = function(configuration?: Configuration) {\n const localVarAxiosParamCreator = IDPApiAxiosParamCreator(configuration)\n return {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async assumeRole(role: string, org?: string, provider?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRole(role, org, provider, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async assumeRoleForBrowser(role: string, org?: string, provider?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRoleForBrowser(role, org, provider, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {string} [configOwner] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.assumeRoleForRepo(org, repo, role, provider, commitSha, configOwner, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.encrypt(org, githubSlsRestApiEncryptRequest, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async getIdentity(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.getIdentity(options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async getOrgConfig(org: string, raw?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.getOrgConfig(org, raw, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async getOrgMetadata(org: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.getOrgMetadata(org, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async listLogins(org?: string, refresh?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.listLogins(org, refresh, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async listOrgRepos(options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.listOrgRepos(options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async listRoles(org?: string, provider?: string, refresh?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.listRoles(org, provider, refresh, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async providerLogin(provider: string, org?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.providerLogin(provider, org, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async refreshOrgRepoConfig(org: string, repo: string, dryrun?: boolean, commitSha?: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.refreshOrgRepoConfig(org, repo, dryrun, commitSha, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n async setOrgAndRepo(org: string, repo: string, force?: boolean, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> {\n const localVarAxiosArgs = await localVarAxiosParamCreator.setOrgAndRepo(org, repo, force, options);\n return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration);\n },\n }\n};\n\n/**\n * IDPApi - factory interface\n * @export\n */\nexport const IDPApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) {\n const localVarFp = IDPApiFp(configuration)\n return {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRole(role: string, org?: string, provider?: string, options?: any): AxiosPromise {\n return localVarFp.assumeRole(role, org, provider, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForBrowser(role: string, org?: string, provider?: string, options?: any): AxiosPromise {\n return localVarFp.assumeRoleForBrowser(role, org, provider, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {string} [configOwner] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options?: any): AxiosPromise {\n return localVarFp.assumeRoleForRepo(org, repo, role, provider, commitSha, configOwner, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: any): AxiosPromise {\n return localVarFp.encrypt(org, githubSlsRestApiEncryptRequest, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getIdentity(options?: any): AxiosPromise {\n return localVarFp.getIdentity(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgConfig(org: string, raw?: boolean, options?: any): AxiosPromise {\n return localVarFp.getOrgConfig(org, raw, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n getOrgMetadata(org: string, options?: any): AxiosPromise {\n return localVarFp.getOrgMetadata(org, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listLogins(org?: string, refresh?: boolean, options?: any): AxiosPromise {\n return localVarFp.listLogins(org, refresh, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listOrgRepos(options?: any): AxiosPromise {\n return localVarFp.listOrgRepos(options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n listRoles(org?: string, provider?: string, refresh?: boolean, options?: any): AxiosPromise {\n return localVarFp.listRoles(org, provider, refresh, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n providerLogin(provider: string, org?: string, options?: any): AxiosPromise {\n return localVarFp.providerLogin(provider, org, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n refreshOrgRepoConfig(org: string, repo: string, dryrun?: boolean, commitSha?: string, options?: any): AxiosPromise {\n return localVarFp.refreshOrgRepoConfig(org, repo, dryrun, commitSha, options).then((request) => request(axios, basePath));\n },\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n */\n setOrgAndRepo(org: string, repo: string, force?: boolean, options?: any): AxiosPromise {\n return localVarFp.setOrgAndRepo(org, repo, force, options).then((request) => request(axios, basePath));\n },\n };\n};\n\n/**\n * IDPApi - object-oriented interface\n * @export\n * @class IDPApi\n * @extends {BaseAPI}\n */\nexport class IDPApi extends BaseAPI {\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public assumeRole(role: string, org?: string, provider?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).assumeRole(role, org, provider, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} role \n * @param {string} [org] \n * @param {string} [provider] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public assumeRoleForBrowser(role: string, org?: string, provider?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).assumeRoleForBrowser(role, org, provider, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {string} role \n * @param {string} [provider] \n * @param {string} [commitSha] \n * @param {string} [configOwner] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public assumeRoleForRepo(org: string, repo: string, role: string, provider?: string, commitSha?: string, configOwner?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).assumeRoleForRepo(org, repo, role, provider, commitSha, configOwner, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {GithubSlsRestApiEncryptRequest} githubSlsRestApiEncryptRequest \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public encrypt(org: string, githubSlsRestApiEncryptRequest: GithubSlsRestApiEncryptRequest, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).encrypt(org, githubSlsRestApiEncryptRequest, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public getIdentity(options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).getIdentity(options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {boolean} [raw] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public getOrgConfig(org: string, raw?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).getOrgConfig(org, raw, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public getOrgMetadata(org: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).getOrgMetadata(org, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} [org] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public listLogins(org?: string, refresh?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).listLogins(org, refresh, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public listOrgRepos(options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).listOrgRepos(options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} [org] \n * @param {string} [provider] \n * @param {boolean} [refresh] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public listRoles(org?: string, provider?: string, refresh?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).listRoles(org, provider, refresh, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} provider \n * @param {string} [org] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public providerLogin(provider: string, org?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).providerLogin(provider, org, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [dryrun] \n * @param {string} [commitSha] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public refreshOrgRepoConfig(org: string, repo: string, dryrun?: boolean, commitSha?: string, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).refreshOrgRepoConfig(org, repo, dryrun, commitSha, options).then((request) => request(this.axios, this.basePath));\n }\n\n /**\n * \n * @param {string} org \n * @param {string} repo \n * @param {boolean} [force] \n * @param {*} [options] Override http request option.\n * @throws {RequiredError}\n * @memberof IDPApi\n */\n public setOrgAndRepo(org: string, repo: string, force?: boolean, options?: AxiosRequestConfig) {\n return IDPApiFp(this.configuration).setOrgAndRepo(org, repo, force, options).then((request) => request(this.axios, this.basePath));\n }\n}\n\n\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.58-7\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nimport { Configuration } from \"./configuration\";\n// Some imports not used depending on template conditions\n// @ts-ignore\nimport globalAxios, { AxiosPromise, AxiosInstance, AxiosRequestConfig } from 'axios';\n\nexport const BASE_PATH = \"https://sso.saml.to/github\".replace(/\\/+$/, \"\");\n\n/**\n *\n * @export\n */\nexport const COLLECTION_FORMATS = {\n csv: \",\",\n ssv: \" \",\n tsv: \"\\t\",\n pipes: \"|\",\n};\n\n/**\n *\n * @export\n * @interface RequestArgs\n */\nexport interface RequestArgs {\n url: string;\n options: AxiosRequestConfig;\n}\n\n/**\n *\n * @export\n * @class BaseAPI\n */\nexport class BaseAPI {\n protected configuration: Configuration | undefined;\n\n constructor(configuration?: Configuration, protected basePath: string = BASE_PATH, protected axios: AxiosInstance = globalAxios) {\n if (configuration) {\n this.configuration = configuration;\n this.basePath = configuration.basePath || this.basePath;\n }\n }\n};\n\n/**\n *\n * @export\n * @class RequiredError\n * @extends {Error}\n */\nexport class RequiredError extends Error {\n name: \"RequiredError\" = \"RequiredError\";\n constructor(public field: string, msg?: string) {\n super(msg);\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.58-7\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nimport { Configuration } from \"./configuration\";\nimport { RequiredError, RequestArgs } from \"./base\";\nimport { AxiosInstance, AxiosResponse } from 'axios';\n\n/**\n *\n * @export\n */\nexport const DUMMY_BASE_URL = 'https://example.com'\n\n/**\n *\n * @throws {RequiredError}\n * @export\n */\nexport const assertParamExists = function (functionName: string, paramName: string, paramValue: unknown) {\n if (paramValue === null || paramValue === undefined) {\n throw new RequiredError(paramName, `Required parameter ${paramName} was null or undefined when calling ${functionName}.`);\n }\n}\n\n/**\n *\n * @export\n */\nexport const setApiKeyToObject = async function (object: any, keyParamName: string, configuration?: Configuration) {\n if (configuration && configuration.apiKey) {\n const localVarApiKeyValue = typeof configuration.apiKey === 'function'\n ? await configuration.apiKey(keyParamName)\n : await configuration.apiKey;\n object[keyParamName] = localVarApiKeyValue;\n }\n}\n\n/**\n *\n * @export\n */\nexport const setBasicAuthToObject = function (object: any, configuration?: Configuration) {\n if (configuration && (configuration.username || configuration.password)) {\n object[\"auth\"] = { username: configuration.username, password: configuration.password };\n }\n}\n\n/**\n *\n * @export\n */\nexport const setBearerAuthToObject = async function (object: any, configuration?: Configuration) {\n if (configuration && configuration.accessToken) {\n const accessToken = typeof configuration.accessToken === 'function'\n ? await configuration.accessToken()\n : await configuration.accessToken;\n object[\"Authorization\"] = \"Bearer \" + accessToken;\n }\n}\n\n/**\n *\n * @export\n */\nexport const setOAuthToObject = async function (object: any, name: string, scopes: string[], configuration?: Configuration) {\n if (configuration && configuration.accessToken) {\n const localVarAccessTokenValue = typeof configuration.accessToken === 'function'\n ? await configuration.accessToken(name, scopes)\n : await configuration.accessToken;\n object[\"Authorization\"] = \"Bearer \" + localVarAccessTokenValue;\n }\n}\n\n/**\n *\n * @export\n */\nexport const setSearchParams = function (url: URL, ...objects: any[]) {\n const searchParams = new URLSearchParams(url.search);\n for (const object of objects) {\n for (const key in object) {\n if (Array.isArray(object[key])) {\n searchParams.delete(key);\n for (const item of object[key]) {\n searchParams.append(key, item);\n }\n } else {\n searchParams.set(key, object[key]);\n }\n }\n }\n url.search = searchParams.toString();\n}\n\n/**\n *\n * @export\n */\nexport const serializeDataIfNeeded = function (value: any, requestOptions: any, configuration?: Configuration) {\n const nonString = typeof value !== 'string';\n const needsSerialization = nonString && configuration && configuration.isJsonMime\n ? configuration.isJsonMime(requestOptions.headers['Content-Type'])\n : nonString;\n return needsSerialization\n ? JSON.stringify(value !== undefined ? value : {})\n : (value || \"\");\n}\n\n/**\n *\n * @export\n */\nexport const toPathString = function (url: URL) {\n return url.pathname + url.search + url.hash\n}\n\n/**\n *\n * @export\n */\nexport const createRequestFunction = function (axiosArgs: RequestArgs, globalAxios: AxiosInstance, BASE_PATH: string, configuration?: Configuration) {\n return >(axios: AxiosInstance = globalAxios, basePath: string = BASE_PATH) => {\n const axiosRequestArgs = {...axiosArgs.options, url: (configuration?.basePath || basePath) + axiosArgs.url};\n return axios.request(axiosRequestArgs);\n };\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.58-7\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface ConfigurationParameters {\n apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise);\n username?: string;\n password?: string;\n accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise);\n basePath?: string;\n baseOptions?: any;\n formDataCtor?: new () => any;\n}\n\nexport class Configuration {\n /**\n * parameter for apiKey security\n * @param name security name\n * @memberof Configuration\n */\n apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise);\n /**\n * parameter for basic security\n *\n * @type {string}\n * @memberof Configuration\n */\n username?: string;\n /**\n * parameter for basic security\n *\n * @type {string}\n * @memberof Configuration\n */\n password?: string;\n /**\n * parameter for oauth2 security\n * @param name security name\n * @param scopes oauth2 scope\n * @memberof Configuration\n */\n accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise);\n /**\n * override base path\n *\n * @type {string}\n * @memberof Configuration\n */\n basePath?: string;\n /**\n * base options for axios calls\n *\n * @type {any}\n * @memberof Configuration\n */\n baseOptions?: any;\n /**\n * The FormData constructor that will be used to create multipart form data\n * requests. You can inject this here so that execution environments that\n * do not support the FormData class can still run the generated client.\n *\n * @type {new () => FormData}\n */\n formDataCtor?: new () => any;\n\n constructor(param: ConfigurationParameters = {}) {\n this.apiKey = param.apiKey;\n this.username = param.username;\n this.password = param.password;\n this.accessToken = param.accessToken;\n this.basePath = param.basePath;\n this.baseOptions = param.baseOptions;\n this.formDataCtor = param.formDataCtor;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n}\n","/* tslint:disable */\n/* eslint-disable */\n/**\n * github-sls-rest-api\n * To generate a JWT token, go to the JWT Token Generator\n *\n * The version of the OpenAPI document: 1.0.58-7\n * \n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport * from \"./api\";\nexport * from \"./configuration\";\n\n","import { error, exportVariable, getInput, info, notice, setFailed, setOutput } from '@actions/core';\nimport { STS } from '@aws-sdk/client-sts';\nimport axios from 'axios';\nimport {\n Configuration,\n IDPApi,\n GithubSlsRestApiSamlResponseContainer,\n GithubSlsRestApiAwsAssumeSdkOptions,\n} from '../api/github-sls-rest-api';\n\nconst { GITHUB_TOKEN, GITHUB_REPOSITORY, GITHUB_SHA, SAML_TO_NONLIVE, SAML_TO_API_KEY } =\n process.env;\n\nexport class Action {\n async run(): Promise {\n if (!GITHUB_TOKEN) {\n setFailed(`Missing GITHUB_TOKEN environment variable`);\n return;\n }\n\n if (!GITHUB_REPOSITORY) {\n throw new Error('Missing GITHUB_REPOSITORY environment variable');\n }\n\n const [org, repo] = GITHUB_REPOSITORY.split('/');\n if (!org || !repo) {\n throw new Error(\n `Unable to parse owner and repo from GITHUB_REPOSITORY environment variable: ${GITHUB_REPOSITORY}`,\n );\n }\n\n const role = getInput('role', { required: true });\n const provider = getInput('provider', { required: false });\n const region = getInput('region', { required: false }) || 'us-east-1';\n const configOwner = getInput('configOwner', { required: false }) || org;\n\n if (provider) {\n info(`Assuming ${provider} Role: ${role} in ${region}`);\n } else {\n info(`Assuming Role: ${role} in ${region}`);\n }\n\n const configuration = new Configuration({ accessToken: GITHUB_TOKEN });\n if (SAML_TO_NONLIVE) {\n configuration.basePath = 'https://sso-nonlive.saml.to/github';\n configuration.apiKey = SAML_TO_API_KEY;\n }\n\n const api = new IDPApi(configuration);\n\n let sdkOpts: GithubSlsRestApiAwsAssumeSdkOptions | undefined;\n\n try {\n const { data: response } = await api.assumeRoleForRepo(\n org,\n repo,\n role,\n provider || undefined,\n GITHUB_SHA,\n configOwner,\n );\n\n info(`SAML Response generated for login to ${response.provider} via ${response.recipient}`);\n\n sdkOpts = response.sdkOptions;\n\n if (response.attributes && Object.keys(response.attributes).length) {\n info(`\nSAML Attributes:`);\n Object.entries(response.attributes).forEach(([k, v]) => info(` - ${k}: ${v}`));\n }\n\n await this.assumeAws(response, region);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n } catch (e: any) {\n const providerHint = sdkOpts ? ` (${sdkOpts.PrincipalArn}) ` : ' ';\n error(`Unable to assume the role with an ARN of \\`${role}\\`${\n provider ? ` (with explicitly specified provider: ${provider})` : ''\n }.\n\nPlease ensure all of the following:\n 1) the SAML Provider Metadata${providerHint}in AWS IAM is correct. It can be obtained by downloading it from: https://saml.to/metadata/github/${org}\n 2) the SAML Provider ARN${providerHint}is correct in the \\`saml-to.yml\\` configuration file, and in the format of \\`arn:aws:iam::ACCOUNT_ID:saml-provider/PROVIDER_NAME\\`,\n 3) the Role ARN (${role}) is correct in the \\`saml-to.yml\\` configuration file, and in the format of \\`arn:aws:iam::ACCOUNT_ID:role/ROLE_NAME\\`\n 4) the Role (${role}) has the correct Trust Relationship ${\n sdkOpts ? `with ${sdkOpts.PrincipalArn}` : ``\n }, which can be found by opening the Role in AWS IAM, choosing the Trust Relationship tab, editing it to ensure it's in the following format:\n {\n \"Version\": \"2012-10-17\",\n \"Statement\": [\n {\n \"Effect\": \"Allow\",\n \"Principal\": {\n \"Federated\": \"${sdkOpts ? sdkOpts.PrincipalArn : 'YOUR_PROVIDER_ARN'}\"\n },\n \"Action\": \"sts:AssumeRoleWithSAML\",\n \"Condition\": {\n \"StringEquals\": {\n \"SAML:aud\": \"https://signin.aws.amazon.com/saml\"\n }\n }\n }\n ]\n }\n \nIf a provider or role hasn't been created or configured yet, please follow the configuration instructions: https://github.com/saml-to/assume-aws-role-action/blob/main/README.md#configuration`);\n if (axios.isAxiosError(e)) {\n let message = e.message;\n if (e.response && e.response.data && e.response.data.message) {\n message = e.response.data.message;\n }\n\n if (e.response && e.response.status === 403) {\n const { data } = e.response;\n if (data) {\n const { context } = data;\n if (context && context.org && context.repo && context.configFile) {\n if (context.repo !== repo) {\n notice(`The SAML.to configuration for \\`${org}/${repo}\\` is managed in a separate repository:\n User/Org: ${context.org}\n Repo: ${context.repo}\n File: ${context.configFile}\n\nProvider configuration and role permissions must be made there.\n\nFor more information on configuration files managed in a separate repository, visit:\nhttps://docs.saml.to/usage/github-actions/assume-aws-role-action#centrally-managed-configuration\n`);\n }\n }\n }\n }\n\n throw new Error(`Error: ${message}`);\n }\n throw e;\n }\n }\n\n async assumeAws(response: GithubSlsRestApiSamlResponseContainer, region: string): Promise {\n const sts = new STS({ region });\n const opts = response.sdkOptions as GithubSlsRestApiAwsAssumeSdkOptions;\n if (!opts) {\n throw new Error('Missing sdk options from saml response');\n }\n\n const assumeResponse = await sts.assumeRoleWithSAML({\n ...opts,\n SAMLAssertion: response.samlResponse,\n });\n\n if (\n !assumeResponse.Credentials ||\n !assumeResponse.Credentials.AccessKeyId ||\n !assumeResponse.Credentials.SecretAccessKey ||\n !assumeResponse.Credentials.SessionToken\n ) {\n throw new Error('Missing credentials');\n }\n\n const assumedSts = new STS({\n region,\n credentials: {\n accessKeyId: assumeResponse.Credentials.AccessKeyId,\n secretAccessKey: assumeResponse.Credentials.SecretAccessKey,\n sessionToken: assumeResponse.Credentials.SessionToken,\n },\n });\n\n const callerIdentity = await assumedSts.getCallerIdentity({});\n\n info(`\nAssumed ${opts.RoleArn}: ${callerIdentity.Arn} (Credential expiration at ${assumeResponse.Credentials.Expiration})`);\n\n exportVariable('AWS_DEFAULT_REGION', region);\n exportVariable('AWS_ACCESS_KEY_ID', assumeResponse.Credentials.AccessKeyId);\n exportVariable('AWS_SECRET_ACCESS_KEY', assumeResponse.Credentials.SecretAccessKey);\n exportVariable('AWS_SESSION_TOKEN', assumeResponse.Credentials.SessionToken);\n\n setOutput('region', region);\n setOutput('accountId', callerIdentity.Account);\n setOutput('userId', callerIdentity.UserId);\n setOutput('roleArn', opts.RoleArn);\n setOutput('assumedRoleArn', callerIdentity.Arn);\n setOutput('accessKeyId', assumeResponse.Credentials.AccessKeyId);\n setOutput('secretAccessKey', assumeResponse.Credentials.SecretAccessKey);\n setOutput('sessionToken', assumeResponse.Credentials.SessionToken);\n }\n}\n","module.exports = require('./lib/tunnel');\n","'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n","module.exports = require(\"assert\");","module.exports = require(\"events\");","module.exports = require(\"fs\");","module.exports = require(\"http\");","module.exports = require(\"https\");","module.exports = require(\"net\");","module.exports = require(\"os\");","module.exports = require(\"path\");","module.exports = require(\"stream\");","module.exports = require(\"tls\");","module.exports = require(\"tty\");","module.exports = require(\"url\");","module.exports = require(\"util\");","module.exports = require(\"zlib\");","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.hmd = (module) => {\n\tmodule = Object.create(module);\n\tif (!module.children) module.children = [];\n\tObject.defineProperty(module, 'exports', {\n\t\tenumerable: true,\n\t\tset: () => {\n\t\t\tthrow new Error('ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: ' + module.id);\n\t\t}\n\t});\n\treturn module;\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import { Action } from './action';\nimport { setFailed, warning } from '@actions/core';\n\n(async () => {\n try {\n const action = new Action();\n await action.run();\n } catch (e) {\n if (e instanceof Error) {\n setFailed(e.message);\n warning(`Need help? https://docs.saml.to/troubleshooting/get-help`);\n return;\n }\n throw e;\n }\n process.exit(0);\n})();\n"],"names":["__createBinding","this","Object","create","o","m","k","k2","undefined","defineProperty","enumerable","get","__setModuleDefault","v","value","__importStar","mod","__esModule","result","hasOwnProperty","call","exports","issue","issueCommand","os","utils_1","command","properties","message","cmd","Command","process","stdout","write","toString","EOL","name","constructor","cmdStr","keys","length","first","key","val","s","toCommandValue","replace","escapeData","__awaiter","thisArg","_arguments","P","generator","Promise","resolve","reject","fulfilled","step","next","e","rejected","done","then","apply","getIDToken","getState","saveState","group","endGroup","startGroup","info","notice","warning","error","debug","isDebug","setFailed","setCommandEcho","setOutput","getBooleanInput","getMultilineInput","getInput","addPath","setSecret","exportVariable","ExitCode","command_1","file_command_1","path","oidc_utils_1","options","env","toUpperCase","required","Error","trimWhitespace","trim","toCommandProperties","convertedVal","delimiter","commandValue","secret","inputPath","split","filter","x","includes","TypeError","enabled","exitCode","Failure","fn","aud","OidcClient","fs","filePath","existsSync","appendFileSync","encoding","http_client_1","auth_1","core_1","static","allowRetry","maxRetry","requestOptions","allowRetries","maxRetries","HttpClient","BearerCredentialHandler","getRequestToken","token","runtimeUrl","id_token_url","_a","httpclient","createHttpClient","res","getJson","catch","statusCode","id_token","audience","getIDTokenUrl","encodeURIComponent","getCall","input","String","JSON","stringify","annotationProperties","title","file","line","startLine","endLine","col","startColumn","endColumn","BasicCredentialHandler","username","password","prepareRequest","headers","Buffer","from","canHandleAuthentication","response","handleAuthentication","httpClient","requestInfo","objs","PersonalAccessTokenCredentialHandler","http","https","pm","tunnel","HttpCodes","Headers","MediaTypes","getProxyUrl","serverUrl","proxyUrl","URL","href","HttpRedirectCodes","MovedPermanently","ResourceMoved","SeeOther","TemporaryRedirect","PermanentRedirect","HttpResponseRetryCodes","BadGateway","ServiceUnavailable","GatewayTimeout","RetryableHttpVerbs","HttpClientError","super","setPrototypeOf","prototype","HttpClientResponse","readBody","async","output","alloc","on","chunk","concat","isHttps","requestUrl","protocol","userAgent","handlers","_ignoreSslError","_allowRedirects","_allowRedirectDowngrade","_maxRedirects","_allowRetries","_maxRetries","_keepAlive","_disposed","ignoreSslError","_socketTimeout","socketTimeout","allowRedirects","allowRedirectDowngrade","maxRedirects","Math","max","keepAlive","additionalHeaders","request","del","post","data","patch","put","head","sendStream","verb","stream","Accept","_getExistingOrDefaultHeader","ApplicationJson","_processResponse","obj","ContentType","parsedUrl","_prepareRequest","maxTries","indexOf","numTries","requestRaw","Unauthorized","authenticationHandler","i","redirectsRemaining","redirectUrl","parsedRedirectUrl","hostname","header","toLowerCase","_performExponentialBackoff","dispose","_agent","destroy","requestRawWithCallback","err","onResult","socket","byteLength","callbackCalled","handleResult","req","httpModule","msg","sock","setTimeout","end","pipe","getAgent","_getAgent","method","usingSsl","defaultPort","host","port","parseInt","pathname","search","_mergeHeaders","agent","forEach","handler","lowercaseKeys","reduce","c","assign","_default","clientHeader","useProxy","_proxyAgent","maxSockets","globalAgent","agentOptions","proxy","proxyAuth","tunnelAgent","overHttps","httpsOverHttps","httpsOverHttp","httpOverHttps","httpOverHttp","Agent","rejectUnauthorized","retryNumber","min","ms","pow","a","Date","isNaN","valueOf","contents","NotFound","deserializeDates","parse","dateTimeDeserializer","checkBypass","reqUrl","reqPort","noProxy","Number","upperReqHosts","push","upperNoProxyItem","map","some","proxyVar","extendStatics","d","b","__proto__","Array","p","__extends","__","t","n","arguments","__rest","getOwnPropertySymbols","propertyIsEnumerable","body","f","y","g","_","label","sent","trys","ops","Symbol","iterator","op","pop","r","ar","__spreadArray","to","pack","l","slice","deserializerMiddlewareOption","tags","override","serializerMiddlewareOption","getSerdePlugin","config","serializer","deserializer","applyToStack","commandStack","add","context","args","parsed","deserializerMiddleware","serializerMiddleware","ProviderError","_super","tryNextLink","_this","configurable","writable","CredentialsProviderError","chain","providers","_i","e_1","promise","_loop_1","provider","providers_1","providers_1_1","e_1_1","return","memoize","isExpired","requiresRefresh","resolved","pending","hasResult","coalesceProvider","isConstant","SHORT_TO_HEX","HEX_TO_SHORT","encodedByte","toHex","bytes","out","SIGNATURE_QUERY_PARAM","TOKEN_QUERY_PARAM","AUTH_HEADER","AMZ_DATE_HEADER","GENERATED_HEADERS","SIGNATURE_HEADER","SHA256_HEADER","TOKEN_HEADER","ALWAYS_UNSIGNABLE_HEADERS","authorization","connection","expect","pragma","referer","te","trailer","upgrade","PROXY_HEADER_PATTERN","SEC_HEADER_PATTERN","EVENT_ALGORITHM_IDENTIFIER","KEY_TYPE_IDENTIFIER","signingKeyCache","cacheQueue","createScope","shortDate","region","service","hmac","ctor","hash","update","digest","getCanonicalHeaders","unsignableHeaders","signableHeaders","_b","canonical","_c","sort","_d","headerName","canonicalHeaderName","has","test","escapeUri","uri","hexEncode","charCodeAt","isArrayBuffer","arg","ArrayBuffer","getPayloadHash","hashConstructor","hashCtor","_e","_f","isView","cloneRequest","query","rest","cloneQuery","carry","paramName","param","isArray","clone","SignatureV4","applyChecksum","credentials","sha256","uriEscapePath","regionProvider","promisified_1","normalizeRegionProvider","credentialProvider","promisified_2","normalizeCredentialsProvider","presign","originalRequest","signingDate","expiresIn","unhoistableHeaders","signingRegion","signingService","longDate","scope","canonicalHeaders","_g","_h","_j","_k","_l","formatDate","lname","substr","moveHeadersToQuery","sessionToken","accessKeyId","AMZ_DATE_QUERY_PARAM","getCanonicalHeaderList","getSignature","getSigningKey","createCanonicalRequest","sign","toSign","signString","payload","signEvent","signRequest","priorSignature","hashedPayload","hashedHeaders","stringToSign","join","bind","requestToSign","payloadHash","signature","soughtHeader","hasHeader","ALGORITHM_IDENTIFIER","sortedHeaders","getCanonicalPath","serialized","encoded","getCanonicalQuery","createStringToSign","credentialScope","canonicalRequest","hashedRequest","keyPromise","sha256Constructor","credsHash","cacheKey","signable","secretAccessKey","shift","now","time","toDate","toISOString","normalizeProvider","HttpRequest","charAt","isInstance","cloned","HttpResponse","resp","getSkewCorrectedDate","systemClockOffset","getUpdatedSystemClockOffset","clockTime","currentSystemClockOffset","clockTimeInMs","abs","getTime","isClockSkewed","awsAuthMiddlewareOptions","relation","toMiddleware","getAwsAuthPlugin","clientStack","addRelativeTo","signer","dateHeader","ServerTime","date","awsAuthMiddleware","constructStack","absoluteEntries","relativeEntries","entriesNameSet","Set","cloneTo","toStack","entry","middleware","expandRelativeMiddlewareList","expandedMiddlewareList","before","after","reverse","stack","priority","toOverrideIndex","findIndex","toOverride","splice","use","plugin","remove","toRemove","isRemoved","filterCb","delete","removeByName","removeByReference","removeByTag","entries","normalizedAbsoluteEntries","normalizedRelativeEntries","normalizedEntriesNameMap","normalizedEntry","stepWeights","priorityWeights","wholeList","expendedMiddlewareList","getMiddlewareList","initialize","serialize","build","finalizeRequest","deserialize","high","normal","low","Client","middlewareStack","send","optionsOrCb","cb","callback","resolveMiddleware","requestHandler","SENSITIVE_STRING","MAX_FLOAT","ceil","expectFloat32","expected","expectNumber","Infinity","expectLong","isInteger","expectSizedInt","size","castInt","Int32Array","of","Int16Array","Int8Array","expectNonNull","location","expectObject","expectString","NUMBER_REGEX","parseNumber","matches","match","parseFloat","strictParseInt32","expectInt32","MONTHS","RFC3339","RegExp","parseRfc3339DateTime","exec","yearStr","monthStr","dayStr","hours","minutes","seconds","fractionalMilliseconds","year","expectShort","stripLeadingZeroes","month","parseDateValue","day","buildDate","adjustedMonth","validateDayOfMonth","UTC","parseMilliseconds","DAYS_IN_MONTH","maxDays","isLeapYear","type","lower","upper","dateVal","expectByte","strictParseByte","strictParseFloat32","idx","warningEmitted","emitWarningIfUnsupportedVersion","version","substring","emitWarning","extendedEncodeURIComponent","str","AssumedRoleUser","PolicyDescriptorType","Tag","AssumeRoleRequest","Credentials","AssumeRoleResponse","ExpiredTokenException","MalformedPolicyDocumentException","PackedPolicyTooLargeException","RegionDisabledException","AssumeRoleWithSAMLRequest","AssumeRoleWithSAMLResponse","IDPRejectedClaimException","InvalidIdentityTokenException","AssumeRoleWithWebIdentityRequest","AssumeRoleWithWebIdentityResponse","IDPCommunicationErrorException","DecodeAuthorizationMessageRequest","DecodeAuthorizationMessageResponse","InvalidAuthorizationMessageException","GetAccessKeyInfoRequest","GetAccessKeyInfoResponse","GetCallerIdentityRequest","GetCallerIdentityResponse","GetFederationTokenRequest","FederatedUser","GetFederationTokenResponse","GetSessionTokenRequest","GetSessionTokenResponse","getValueFromTextNode","textNodeName","StringWrapper","Class","getPrototypeOf","Constructor","Function","instance","LazyJsonString","deserializeJSON","toJSON","fromObject","object","filterSensitiveLog","SelectorType","deserializeAws_queryAssumeRoleCommandError","parsedOutput","errorCode","parsedBody","parseBody","loadQueryErrorCode","deserializeAws_queryExpiredTokenExceptionResponse","$metadata","deserializeMetadata","deserializeAws_queryMalformedPolicyDocumentExceptionResponse","deserializeAws_queryPackedPolicyTooLargeExceptionResponse","deserializeAws_queryRegionDisabledExceptionResponse","code","Code","Message","$fault","deserializeAws_queryAssumeRoleWithSAMLCommandError","deserializeAws_queryIDPRejectedClaimExceptionResponse","deserializeAws_queryInvalidIdentityTokenExceptionResponse","deserializeAws_queryAssumeRoleWithWebIdentityCommandError","deserializeAws_queryIDPCommunicationErrorExceptionResponse","deserializeAws_queryDecodeAuthorizationMessageCommandError","deserializeAws_queryInvalidAuthorizationMessageExceptionResponse","deserializeAws_queryGetAccessKeyInfoCommandError","deserializeAws_queryGetCallerIdentityCommandError","deserializeAws_queryGetFederationTokenCommandError","deserializeAws_queryGetSessionTokenCommandError","deserialized","deserializeAws_queryExpiredTokenException","deserializeAws_queryIDPCommunicationErrorException","deserializeAws_queryIDPRejectedClaimException","deserializeAws_queryInvalidAuthorizationMessageException","deserializeAws_queryInvalidIdentityTokenException","deserializeAws_queryMalformedPolicyDocumentException","deserializeAws_queryPackedPolicyTooLargeException","deserializeAws_queryRegionDisabledException","serializeAws_querypolicyDescriptorListType","counter","input_1","input_1_1","memberEntries","serializeAws_queryPolicyDescriptorType","arn","serializeAws_queryTag","Key","Value","serializeAws_querytagKeyListType","e_2","input_2","input_2_1","e_2_1","serializeAws_querytagListType","e_3","input_3","input_3_1","e_3_1","deserializeAws_queryAssumedRoleUser","AssumedRoleId","Arn","deserializeAws_queryCredentials","AccessKeyId","SecretAccessKey","SessionToken","Expiration","httpStatusCode","requestId","extendedRequestId","cfId","buildHttpRpcRequest","resolvedHostname","basePath","endpoint","endsWith","streamBody","Uint8Array","streamCollector","collectBody","utf8Encoder","collectBodyString","parsedObj","attributeNamePrefix","ignoreAttributes","parseNodeValue","trimValues","tagValueProcessor","parsedObjToReturn","buildFormUrlencodedString","formEntries","AssumeRoleCommand","configuration","handlerExecutionContext","logger","clientName","commandName","inputFilterSensitiveLog","outputFilterSensitiveLog","handle","RoleArn","RoleSessionName","PolicyArns","Policy","DurationSeconds","Tags","TransitiveTagKeys","ExternalId","SerialNumber","TokenCode","SourceIdentity","serializeAws_queryAssumeRoleRequest","Action","Version","serializeAws_queryAssumeRoleCommand","PackedPolicySize","deserializeAws_queryAssumeRoleResponse","AssumeRoleResult","deserializeAws_queryAssumeRoleCommand","AssumeRoleWithSAMLCommand","PrincipalArn","SAMLAssertion","serializeAws_queryAssumeRoleWithSAMLRequest","serializeAws_queryAssumeRoleWithSAMLCommand","Subject","SubjectType","Issuer","Audience","NameQualifier","deserializeAws_queryAssumeRoleWithSAMLResponse","AssumeRoleWithSAMLResult","deserializeAws_queryAssumeRoleWithSAMLCommand","AssumeRoleWithWebIdentityCommand","WebIdentityToken","ProviderId","serializeAws_queryAssumeRoleWithWebIdentityRequest","serializeAws_queryAssumeRoleWithWebIdentityCommand","SubjectFromWebIdentityToken","Provider","deserializeAws_queryAssumeRoleWithWebIdentityResponse","AssumeRoleWithWebIdentityResult","deserializeAws_queryAssumeRoleWithWebIdentityCommand","DecodeAuthorizationMessageCommand","EncodedMessage","serializeAws_queryDecodeAuthorizationMessageRequest","serializeAws_queryDecodeAuthorizationMessageCommand","DecodedMessage","deserializeAws_queryDecodeAuthorizationMessageResponse","DecodeAuthorizationMessageResult","deserializeAws_queryDecodeAuthorizationMessageCommand","GetAccessKeyInfoCommand","serializeAws_queryGetAccessKeyInfoRequest","serializeAws_queryGetAccessKeyInfoCommand","Account","deserializeAws_queryGetAccessKeyInfoResponse","GetAccessKeyInfoResult","deserializeAws_queryGetAccessKeyInfoCommand","GetCallerIdentityCommand","serializeAws_queryGetCallerIdentityCommand","UserId","deserializeAws_queryGetCallerIdentityResponse","GetCallerIdentityResult","deserializeAws_queryGetCallerIdentityCommand","GetFederationTokenCommand","Name","serializeAws_queryGetFederationTokenRequest","serializeAws_queryGetFederationTokenCommand","FederatedUserId","deserializeAws_queryFederatedUser","deserializeAws_queryGetFederationTokenResponse","GetFederationTokenResult","deserializeAws_queryGetFederationTokenCommand","GetSessionTokenCommand","serializeAws_queryGetSessionTokenRequest","serializeAws_queryGetSessionTokenCommand","deserializeAws_queryGetSessionTokenResponse","GetSessionTokenResult","deserializeAws_queryGetSessionTokenCommand","RETRY_MODES","booleanSelector","NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS","environmentVariableSelector","ENV","configFileSelector","profile","CONFIG","default","NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS","normalizeEndpoint","urlParser","resolveEndpointsConfig","useDualstackEndpoint","normalizeBoolean","useFipsEndpoint","tls","regionInfoProvider","getEndpointFromRegion","isCustomEndpoint","NODE_REGION_CONFIG_OPTIONS","NODE_REGION_CONFIG_FILE_OPTIONS","preferredFile","isFipsRegion","startsWith","getRealRegion","resolveRegionConfig","providedRegion","getHostnameFromVariants","variants","find","getRegionInfo","regionHash","partitionHash","partition","regions","getResolvedPartition","resolvedRegion","hostnameOptions","partitionHostname","regionHostname","getResolvedHostname","regionRegexJs","regionRegex","regionRegexmatchArray","getResolvedSigningRegion","contentLengthMiddlewareOptions","getContentLengthPlugin","bodyLengthChecker","CONTENT_LENGTH_HEADER","contentLengthMiddleware","hostHeaderMiddlewareOptions","getHostHeaderPlugin","metadata","handlerProtocol","hostHeaderMiddleware","loggerMiddlewareOptions","getLoggerPlugin","outputWithoutMetadata","DEFAULT_RETRY_MODE","STANDARD","CLOCK_SKEW_ERROR_CODES","THROTTLING_ERROR_CODES","TRANSIENT_ERROR_CODES","TRANSIENT_ERROR_STATUS_CODES","isThrottlingError","$retryable","throttling","DefaultRateLimiter","currentCapacity","lastMaxRate","measuredTxRate","requestCount","lastTimestamp","timeWindow","beta","minCapacity","minFillRate","scaleConstant","smooth","currentTimeInSeconds","getCurrentTimeInSeconds","lastThrottleTime","lastTxRateBucket","floor","fillRate","maxCapacity","getSendToken","acquireTokenBucket","amount","delay_1","refillTokenBucket","timestamp","fillAmount","updateClientSendingRate","calculatedRate","updateMeasuredRate","rateToUse","calculateTimeWindow","cubicThrottle","enableTokenBucket","cubicSuccess","newRate","updateTokenBucketRate","getPrecise","timeBucket","currentRate","num","toFixed","require","rnds8Pool","poolPtr","rng","byteToHex","arr","offset","uuid","buf","rnds","random","defaultDelayDecider","delayBase","attempts","defaultRetryDecider","isRetryableByTrait","isClockSkewError","isTransientError","StandardRetryStrategy","maxAttemptsProvider","noRetryIncrement","retryCost","timeoutRetryCost","availableCapacity","getCapacityAmount","hasRetryTokens","mode","retryDecider","delayDecider","retryQuota","freeze","retrieveRetryTokens","capacityAmount","releaseRetryTokens","capacityReleaseAmount","shouldRetry","maxAttempts","getMaxAttempts","retry","retryTokenAmount","totalDelay","this_1","state_1","beforeRequest","afterRequest","totalRetryDelay","asSdkError","AdaptiveRetryStrategy","rateLimiter","superOptions","ADAPTIVE","NODE_MAX_ATTEMPT_CONFIG_OPTIONS","maxAttempt","resolveRetryConfig","normalizeMaxAttempts","retryStrategy","getRetryMode","retryMode","NODE_RETRY_MODE_CONFIG_OPTIONS","retryMiddlewareOptions","getRetryPlugin","retryMiddleware","resolveStsAuthConfig","stsClientCtor","normalizedCreds","expiration","credentialDefaultProvider","signingEscapePath","regionInfo","signingName","serviceId","params","signerConstructor","resolveAwsAuthConfig","resolveUserAgentConfig","customUserAgent","USER_AGENT","X_AMZ_USER_AGENT","UA_ESCAPE_REGEX","escapeUserAgent","prefixSeparatorIndex","prefix","uaName","item","getUserAgentMiddlewareOptions","getUserAgentPlugin","defaultUserAgent","sdkUserAgentValue","normalUAValue","defaultUserAgentProvider","section","runtime","ASSUME_ROLE_DEFAULT_REGION","decorateDefaultRegion","getDefaultRoleAssumer","stsOptions","stsClient","closureSourceCreds","sourceCreds","getDefaultRoleAssumerWithWebIdentity","fromEnv","expiry","httpRequest","chunks","Endpoint","isImdsCredentials","Boolean","Token","fromImdsCredentials","creds","providerConfigFromInit","timeout","toRetry","ENV_CMDS_FULL_URI","ENV_CMDS_RELATIVE_URI","ENV_CMDS_AUTH_TOKEN","fromContainerMetadata","init","credsResponse","getCmdsUri","requestFromEcsImds","Authorization","GREENGRASS_HOSTS","localhost","GREENGRASS_PROTOCOLS","swallowError","loadSharedConfigFiles","filepath","getHomeDir","configFilepath","all","slurpFile","parseIni","normalizeConfigFile","parsedFiles","configFile","credentialsFile","profileKeyRegex","normalizedKey","profileNameBlockList","iniData","currentSection","readFile","HOME","USERPROFILE","HOMEPATH","HOMEDRIVE","sep","homedir","loadConfig","envVarSelector","defaultValue","configSelector","loadedConfig","profileFromCredentials","profileFromConfig","mergedProfile","configValue","fromSharedConfigFiles","staticValue","parseUrl","url","querystring","decodeURIComponent","parseQueryString","EndpointMode","ENDPOINT_CONFIG_OPTIONS","ENDPOINT_MODE_CONFIG_OPTIONS","IPv4","IMDS_PATH","fromInstanceMetadata","disableFetchToken","getCredentials","err_1","getProfile","err_2","getCredentialsFromProfile","error_1","endpointMode","IPv6","values","getMetadataToken","fromArrayBuffer","fromString","Hash","algorithmIdentifier","createHmac","castSourceData","createHash","toHash","toCast","buffer","byteOffset","buildQueryString","parts","iLen","qsEntry","NODEJS_TIMEOUT_ERROR_CODES","getTransformedHeaders","transformedHeaders","headerValues","writeRequestBody","writeBody","Readable","NodeHttpHandler","connectionTimeout","httpAgent","httpsAgent","abortSignal","aborted","abortError","isSSL","queryString","nodeHttpsOptions","httpResponse","timeoutInMs","connecting","timeoutId_1","clearTimeout","setConnectionTimeout","setSocketTimeout","onabort","abort","NodeHttp2Handler","requestTimeout","sessionTimeout","disableConcurrentStreams","sessionCache","Map","session","destroySession","clear","rejectOriginal","authority","getSession","constants","close","deleteSessionFromCache","timeoutError","id","rstCode","existingSessions","newSession","connect","destroySessionCb","set","destroyed","Collector","bufferedBytes","_write","Writable","collector","BASE64_REGEX","fromBase64","toBase64","calculateBodyLength","lstatSync","AccountInfo","GetRoleCredentialsRequest","RoleCredentials","GetRoleCredentialsResponse","InvalidRequestException","ResourceNotFoundException","TooManyRequestsException","UnauthorizedException","ListAccountRolesRequest","RoleInfo","ListAccountRolesResponse","ListAccountsRequest","ListAccountsResponse","LogoutRequest","clientVersion","sections","platform","release","versions","crtAvailable","appIdPromise","resolvedUserAgent","appId","fromUtf8","BYTES_PER_ELEMENT","toUtf8","aws","defaultRegionInfoProvider","SSOClient","_config_0","_m","_o","_p","clientSharedValues","apiVersion","disableHostPrefix","base64Decoder","base64Encoder","utf8Decoder","_config_1","_config_2","_config_5","accessToken","roleCredentials","deserializeAws_restJson1GetRoleCredentialsCommandError","loadRestJsonErrorCode","deserializeAws_restJson1InvalidRequestExceptionResponse","deserializeAws_restJson1ResourceNotFoundExceptionResponse","deserializeAws_restJson1TooManyRequestsExceptionResponse","deserializeAws_restJson1UnauthorizedExceptionResponse","sanitizeErrorCode","rawValue","cleanValue","headerKey","GetRoleCredentialsCommand","resolvedPath","getOwnPropertyNames","roleName","role_name","accountId","account_id","serializeAws_restJson1GetRoleCredentialsCommand","deserializeAws_restJson1RoleCredentials","deserializeAws_restJson1GetRoleCredentialsCommand","parseKnownFiles","getMasterProfileName","SHOULD_FAIL_CREDENTIAL_CHAIN","fromSSO","ssoStartUrl","ssoAccountId","ssoRegion","ssoRoleName","ssoClient","profiles","profileName","sso_start_url","sso_account_id","sso_region","sso_role_name","isSsoProfile","validateSsoProfile","resolveSSOCredentials","hasher","cacheName","tokenFile","sso","ssoResp","readFileSync","expiresAt","fromTokenFile","resolveTokenFile","webIdentityTokenFile","roleArn","roleSessionName","webIdentityToken","providerId","policyArns","policy","durationSeconds","roleAssumerWithWebIdentity","fromWebToken","isStaticCredsProfile","aws_access_key_id","aws_secret_access_key","aws_session_token","isAssumeRoleProfile","role_arn","role_session_name","external_id","mfa_serial","fromIni","resolveProfileData","visitedProfiles","source_profile","credential_source","resolveStaticCredentials","isAssumeRoleWithProviderProfile","roleAssumer","resolveCredentialSource","mfaCodeProvider","web_identity_token_file","isWebIdentityProfile","resolveWebIdentityCredentials","credentialSource","sourceProvidersMap","EcsContainer","Ec2InstanceMetadata","Environment","fromProcess","resolveProcessCredentials","credentialProcess","execPromise","processResult","expirationUnix","currentTime","defaultProvider","remoteProvider","unshift","providerChain","STSClient","_q","_config_3","_config_6","STS","assumeRole","assumeRoleWithSAML","assumeRoleWithWebIdentity","decodeAuthorizationMessage","getAccessKeyInfo","getCallerIdentity","getFederationToken","getSessionToken","isCrtAvailable","module","utils","settle","buildFullPath","buildURL","httpFollow","httpsFollow","zlib","VERSION","createError","enhanceError","defaults","Cancel","setProxy","auth","base64","beforeRedirect","redirection","resolvePromise","rejectPromise","onCanceled","cancelToken","unsubscribe","signal","removeEventListener","headerNames","isStream","isBuffer","isString","fullPath","baseURL","urlAuth","isHttpsRequest","paramsSerializer","agents","socketPath","transport","proxyEnv","parsedProxyUrl","noProxyEnv","no_proxy","NO_PROXY","shouldProxy","proxyElement","proxyUrlAuth","isHttpsProxy","maxBodyLength","insecureHTTPParser","lastRequest","decompress","createUnzip","status","statusText","statusMessage","responseType","responseBuffer","totalResponseBytes","maxContentLength","responseData","responseEncoding","stripBOM","transitional","clarifyTimeoutError","cancel","subscribe","addEventListener","cookies","parseHeaders","isURLSameOrigin","requestData","requestHeaders","isFormData","XMLHttpRequest","unescape","btoa","onloadend","responseHeaders","getAllResponseHeaders","responseText","open","onreadystatechange","readyState","responseURL","onerror","ontimeout","timeoutErrorMessage","isStandardBrowserEnv","xsrfValue","withCredentials","xsrfCookieName","read","xsrfHeaderName","setRequestHeader","isUndefined","onDownloadProgress","onUploadProgress","upload","Axios","mergeConfig","axios","createInstance","defaultConfig","extend","instanceConfig","CancelToken","isCancel","promises","spread","isAxiosError","__CANCEL__","executor","_listeners","onfulfilled","_resolve","reason","throwIfRequested","listener","index","source","InterceptorManager","dispatchRequest","validator","validators","interceptors","assertOptions","silentJSONParsing","boolean","forcedJSONParsing","requestInterceptorChain","synchronousRequestInterceptors","interceptor","runWhen","synchronous","responseInterceptorChain","newConfig","onFulfilled","onRejected","getUri","eject","h","isAbsoluteURL","combineURLs","requestedURL","transformData","throwIfCancellationRequested","transformRequest","merge","common","adapter","transformResponse","description","number","fileName","lineNumber","columnNumber","config1","config2","getMergedValue","target","isPlainObject","mergeDeepProperties","prop","valueFromConfig2","defaultToConfig2","mergeDirectKeys","mergeMap","validateStatus","fns","normalizeHeaderName","DEFAULT_CONTENT_TYPE","setContentTypeIfUnset","isFile","isBlob","isArrayBufferView","isURLSearchParams","isObject","parser","encoder","stringifySafely","strictJSONParsing","encode","serializedParams","isDate","hashmarkIndex","relativeURL","expires","domain","secure","cookie","isNumber","toGMTString","document","originURL","msie","navigator","urlParsingNode","createElement","resolveURL","setAttribute","window","requestURL","normalizedName","ignoreDuplicateOf","thing","deprecatedWarnings","formatMessage","opt","desc","opts","console","warn","schema","allowUnknown","isFunction","FormData","URLSearchParams","product","assignValue","content","formatArgs","useColors","namespace","humanize","diff","color","lastC","save","namespaces","storage","setItem","removeItem","load","getItem","DEBUG","__nwjs","documentElement","style","WebkitAppearance","firebug","exception","table","$1","localStorage","localstorage","warned","colors","log","formatters","j","createDebug","prevTime","namespacesCache","enabledCache","enableOverride","self","curr","prev","coerce","format","formatter","selectColor","newDebug","toNamespace","regexp","disable","names","skips","enable","len","browser","tty","util","inspectOpts","stderr","colorCode","hideDate","isatty","fd","deprecate","supportsColor","level","inspect","O","__importDefault","decodeHTML","decodeHTMLStrict","decodeXML","entities_json_1","legacy_json_1","xml_json_1","decode_codepoint_1","strictEntityRe","getStrictDecoder","getReplacer","sorter","secondChar","legacy","re","replacer","decode_json_1","fromCodePoint","codePoint","fromCharCode","escapeUTF8","escape","encodeNonAsciiHTML","encodeHTML","encodeXML","inverseXML","getInverseObj","xmlReplacer","getInverseReplacer","getASCIIEncoder","inverse","inverseHTML","htmlReplacer","single","multiple","start","count","reNonASCII","singleCharReplacer","getCodePoint","codePointAt","reEscapeChars","decode_2","buildOptions","defaultOptions","attrNodeName","cdataTagName","cdataPositionChar","indentBy","supressEmptyNode","attrValueProcessor","props","Parser","isAttribute","attrPrefixLen","isCDATA","replaceCDATAstr","replaceCDATAarr","indentate","tagEndChar","newLine","buildTextNode","buildEmptyTextNode","buildObjNode","buildEmptyObjNode","buildTextValNode","buildObjectNode","cdata","attrStr","repeat","jObj","j2x","attr","arrLen","Ks","L","char","chars","nilChar","missingChar","nilPremitive","missingPremitive","emptyChar","emptyValue","boundryChar","objStart","arrStart","arrayEnd","charsArr","node","e_schema","getValue","hasValidData","child","attrsMap","itemSchema","arr_len","arr_i","processValue","isAppChar","ch","x2j","convert2nimn","convertToJson","parentTagName","isEmptyObject","isExist","asArray","isTagNameInArrayMode","tagname","arrayMode","tagName","tag","_cToJsonStr","convertToJsonString","nodeToJson","xmlToNodeobj","x2xmlnode","xmlData","validationOption","validate","traversableObj","getTraversalObj","convertTonimn","j2xParser","parseToNimn","nameRegexp","regexName","newOptions","isName","string","getAllMatches","regex","allmatches","allowBooleanAttributes","readPI","getErrorObject","getLineNumberForPosition","readCommentAndCDATA","angleBracketsCount","readAttributeStr","startChar","tagClosed","tagFound","reachedRoot","closingTag","isValid","validateAttributeString","otg","afterAmp","validateAmpersand","validAttrStrRegxp","attrNames","getPositionFromMatch","attrName","validateAttrName","validateNumberAmpersand","parent","addChild","xmlNode","ignoreNameSpace","parseAttributeValue","stopNodes","processTagValue","parseValue","parseTrueNumberOnly","resolveNameSpace","shouldParse","attrsRegx","buildAttributesMap","attrs","attrCollection","closingIndexForOpeningTag","attrBoundary","tagExp","findClosingIndex","errMsg","closingIndex","xmlObj","currentNode","textData","closeIndex","colonIndex","startIndex","childNode","separatorIndex","shouldBuildAttributesMap","lastIndexOf","assert","events","eventHandlers","event","arg1","arg2","arg3","_redirectable","emit","RedirectionError","createErrorType","TooManyRedirectsError","MaxBodyLengthExceededError","WriteAfterEndError","RedirectableRequest","responseCallback","_sanitizeOptions","_options","_ended","_ending","_redirectCount","_redirects","_requestBodyLength","_requestBodyBuffers","_onNativeResponse","_performRequest","wrap","protocols","nativeProtocols","scheme","nativeProtocol","wrappedProtocol","defineProperties","urlStr","urlToOptions","equal","wrappedRequest","noop","urlObject","removeMatchingHeaders","lastValue","defaultMessage","CustomError","cause","captureStackTrace","abortRequest","removeListener","_currentRequest","currentRequest","setHeader","removeHeader","msecs","destroyOnTimeout","addListener","startTimer","_timeout","clearTimer","once","property","searchPos","_currentUrl","_isRedirect","buffers","writeNext","finished","trackRedirects","followRedirects","currentHostHeader","currentUrlParts","currentHost","currentUrl","redirectUrlParts","subdomain","dot","isSubdomainOf","responseDetails","responseUrl","redirects","flag","argv","position","terminatorPosition","plural","msAbs","isPlural","round","isFinite","long","fmtShort","hasFlag","forceColor","translateLevel","hasBasic","has256","has16m","haveStream","streamIsTTY","TERM","osRelease","CI_NAME","TEAMCITY_VERSION","COLORTERM","TERM_PROGRAM_VERSION","TERM_PROGRAM","FORCE_COLOR","isTTY","GithubSlsRestApiNameIdFormatV1","GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1VersionEnum","GithubSlsRestApiAuthSlsRestApiGithubLoginTokenEventV1TypeEnum","GithubSlsRestApiSupportedVersions","HealthApiAxiosParamCreator","localVarUrlObj","DUMMY_BASE_URL","baseOptions","localVarRequestOptions","setSearchParams","headersFromBaseOptions","toPathString","HealthApiFp","localVarAxiosParamCreator","localVarAxiosArgs","createRequestFunction","BASE_PATH","HealthApiFactory","localVarFp","HealthApi","BaseAPI","IDPApiAxiosParamCreator","role","org","assertParamExists","localVarPath","localVarHeaderParameter","localVarQueryParameter","setBearerAuthToObject","assumeRoleForBrowser","assumeRoleForRepo","repo","commitSha","configOwner","encrypt","githubSlsRestApiEncryptRequest","serializeDataIfNeeded","getIdentity","getOrgConfig","raw","getOrgMetadata","listLogins","refresh","listOrgRepos","listRoles","providerLogin","refreshOrgRepoConfig","dryrun","setOrgAndRepo","force","IDPApiFp","IDPApiFactory","IDPApi","COLLECTION_FORMATS","csv","ssv","tsv","pipes","RequiredError","field","functionName","paramValue","setApiKeyToObject","keyParamName","apiKey","localVarApiKeyValue","setBasicAuthToObject","setOAuthToObject","scopes","localVarAccessTokenValue","objects","searchParams","append","nonString","isJsonMime","axiosArgs","globalAxios","axiosRequestArgs","formDataCtor","mime","jsonMime","GITHUB_TOKEN","GITHUB_REPOSITORY","GITHUB_SHA","SAML_TO_NONLIVE","SAML_TO_API_KEY","Configuration","api","sdkOpts","recipient","sdkOptions","attributes","assumeAws","providerHint","sts","assumeResponse","samlResponse","assumedSts","callerIdentity","TunnelingAgent","proxyOptions","defaultMaxSockets","requests","sockets","localAddress","toOptions","onSocket","removeSocket","createSecureSocket","createSocket","hostHeader","getHeader","tlsOptions","mergeOptions","servername","secureSocket","overrides","keyLen","inherits","EventEmitter","addRequest","onFree","onCloseOrRemove","placeholder","connectOptions","connectReq","onConnect","removeAllListeners","useChunkedEncodingByDefault","nextTick","pos","NODE_DEBUG","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","getter","definition","hmd","children","toStringTag","action","run","exit"],"sourceRoot":""}
\ No newline at end of file
diff --git a/package.json b/package.json
index e548976..d716d94 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@saml-to/assume-aws-role-action",
- "version": "1.0.7",
+ "version": "1.0.8",
"description": "Assume an AWS Role using SAML.to",
"repository": "git@github.com:saml-to/assume-aws-role-action.git",
"author": "Scaffoldly",
diff --git a/src/action.ts b/src/action.ts
index f5b7f5c..8418b51 100644
--- a/src/action.ts
+++ b/src/action.ts
@@ -1,12 +1,4 @@
-import {
- error,
- exportVariable,
- getInput,
- info,
- setFailed,
- setOutput,
- warning,
-} from '@actions/core';
+import { error, exportVariable, getInput, info, notice, setFailed, setOutput } from '@actions/core';
import { STS } from '@aws-sdk/client-sts';
import axios from 'axios';
import {
@@ -16,7 +8,8 @@ import {
GithubSlsRestApiAwsAssumeSdkOptions,
} from '../api/github-sls-rest-api';
-const { GITHUB_TOKEN, GITHUB_REPOSITORY, GITHUB_SHA, DEV, API_KEY } = process.env;
+const { GITHUB_TOKEN, GITHUB_REPOSITORY, GITHUB_SHA, SAML_TO_NONLIVE, SAML_TO_API_KEY } =
+ process.env;
export class Action {
async run(): Promise {
@@ -25,18 +18,10 @@ export class Action {
return;
}
- const role = getInput('role', { required: true });
- const provider = getInput('provider', { required: false });
- const region = getInput('region', { required: false }) || 'us-east-1';
- if (provider) {
- info(`Assuming ${provider} Role: ${role} in ${region}`);
- } else {
- info(`Assuming Role: ${role} in ${region}`);
- }
-
if (!GITHUB_REPOSITORY) {
throw new Error('Missing GITHUB_REPOSITORY environment variable');
}
+
const [org, repo] = GITHUB_REPOSITORY.split('/');
if (!org || !repo) {
throw new Error(
@@ -44,10 +29,21 @@ export class Action {
);
}
+ const role = getInput('role', { required: true });
+ const provider = getInput('provider', { required: false });
+ const region = getInput('region', { required: false }) || 'us-east-1';
+ const configOwner = getInput('configOwner', { required: false }) || org;
+
+ if (provider) {
+ info(`Assuming ${provider} Role: ${role} in ${region}`);
+ } else {
+ info(`Assuming Role: ${role} in ${region}`);
+ }
+
const configuration = new Configuration({ accessToken: GITHUB_TOKEN });
- if (DEV) {
+ if (SAML_TO_NONLIVE) {
configuration.basePath = 'https://sso-nonlive.saml.to/github';
- configuration.apiKey = API_KEY;
+ configuration.apiKey = SAML_TO_API_KEY;
}
const api = new IDPApi(configuration);
@@ -61,6 +57,7 @@ export class Action {
role,
provider || undefined,
GITHUB_SHA,
+ configOwner,
);
info(`SAML Response generated for login to ${response.provider} via ${response.recipient}`);
@@ -119,7 +116,7 @@ If a provider or role hasn't been created or configured yet, please follow the c
const { context } = data;
if (context && context.org && context.repo && context.configFile) {
if (context.repo !== repo) {
- warning(`The SAML.to configuration for \`${org}\` is managed in a separate repository:
+ notice(`The SAML.to configuration for \`${org}/${repo}\` is managed in a separate repository:
User/Org: ${context.org}
Repo: ${context.repo}
File: ${context.configFile}